Print
카테고리: [ Cloud Computing & MSA ]
조회수: 26631

alpine이미지를 사용할 때, 컨테이너 내부에서 curl이나 telnet등 기본적인 리눅스 명령을 사용할 수 없거나, 컨테이너에 직접 접속해도 설치가 불가능한 경우가 있다.

이러한 경우 이미지를 빌드할 때 busybox-extras를 추가하여 해결한다. 다음과 같은 방법으로 Dockerfile을 작성한다.

Dockerfile

FROM python:3-alpine
COPY . /app
WORKDIR /app
RUN pip install -r requirements.txt
RUN chmod +x ./server.sh
ENV FLASK_APP=app
CMD ["./server.sh"]

Dockerfile에서 읽도록 선언된 스크립트

#!/bin/sh

apk update
apk add busybox-extras
python ./server.py