Dockerfile의 컬 명령에 대한 변수 자리 표시자 이해

Dockerfile의 컬 명령에 대한 변수 자리 표시자 이해

나는 Dockerfile에 대해 배우고 있으며 이전에는 컬을 사용해 본 적이 없습니다.

26행을 이해하려고 노력 중입니다.이 Dockerfile.

&& bash -c 'curl "https://nodejs.org/dist/$(<.node_version.txt)/node-$(<.node_version.txt)-linux-x64.tar.gz" > /home/meteorapp/meteorapp/build/required-node-linux-x64.tar.gz' \

$(<.node_version.txt)기대하는 값으로 제시해야 하는 일부 텍스트가 명령의 일부인 그대로 사용된다는 의미 입니까 ?

답변1

즉, 이라는 파일이 있어야 합니다 .node_version.txt. 해당 파일에는 원하는 노드의 버전 번호가 있어야 합니다. 예: v4.6.0또는 latest. 유효한 버전 문자열을 보려면 다음으로 이동하세요.https://nodejs.org/dist/

$(<.node_version.txt)무슨 일이 일어나는가는 이 구성이 파일의 내용으로 대체된다는 것입니다 .

이 줄

https://nodejs.org/dist/$(<.node_version.txt)/node-$(<.node_version.txt)-linux-x64.tar.gz

된다

https://nodejs.org/dist/v4.6.0/node-v4.6.0-linux-x64.tar.gz

구조는 $(<filename)다음의 특별한 변형입니다.명령 대체. 와 실질적으로 동일합니다 $(cat filename).

관련 정보