여러 라인으로 구성된 내용을 특정 파일로 저장할 때 cat << 커맨드를 자주 사용한다.

 cat > /etc/yum.repos.d/nginx.repo << EOL

[nginx]

name=nginx repo

baseurl=http://nginx.org/packages/centos/$releasever/$basearch/

gpgcheck=0

enabled=1

EOL




도커 파일에서 아래와 같이 bash에서 사용하듯 여러 라인을 하나의 파일로 저장하려면 에러가 발생한다. 


RUN cat > /etc/yum.repos.d/nginx.repo << EOL

[nginx]

name=nginx repo

baseurl=http://nginx.org/packages/centos/$releasever/$basearch/

gpgcheck=0

enabled=1

EOL



도커 파일에서는 다음과 같이 echo와 $를 잘 사용해야 비슷한 효과를 얻을 수 있다.


RUN echo $'[nginx] \n\
name=nginx repo \n\
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ \n\
gpgcheck=0 \n\
enabled=1' >> /etc/yum.repos.d/nginx.repo


Posted by 김용환 '김용환'

댓글을 달아 주세요