-
카테고리
-
세부 분야
데브옵스 · 인프라
-
해결 여부
미해결
패키지 설치시 옵션 적용 질문 드립니다.
22.04.13 21:24 작성 조회수 380
1
간단한 Dockerfile 작성중 설치파라미터 관련 문의 드립니다.
설치시 위처럼 선택을 해야 하는경우 Dockfile 에 어떻게
기입을 하면 되나요?
현재 기입 내용 입니다.
RUN apt-get -y install tzdata<<EOF \
6 \
69 \
EOF
답변을 작성해보세요.
0
subicura
지식공유자2022.04.14
안녕하세요!
Dockerfile을 이용하여 빌드할 때 사용자 입력이 필요하다면 두가지 방법이 있습니다.
1. 사용자 입력 흉내내기
printf "6\n69" | apt-get install -y tzdata
위와 같이 실행 명령어 앞에 printf "" | 를 입력하면 사용자가 입력한 것과 같은 효과를 가집니다.
2. ubuntu에서 제공하는 non interactive 모드 활용하기
ubuntu/debian 계열 linux에서는 사용자 입력이 불가능한 경우를 별도 환경 변수로 관리합니다.
tzdata는 다음과 같은 방식을 사용할 수 있습니다.
ENV DEBIAN_FRONTEND=noninteractive
RUN ln -fs /usr/share/zoneinfo/Asia/Seoul /etc/localtime
RUN apt-get update
RUN apt-get install -y tzdata
RUN dpkg-reconfigure --frontend noninteractive tzdata
두가지 방법중에 편한 방법을 선택하시면 되고 docker에서는 가급적 두번째 방식을 추천합니다.
감사합니다!
답변 1