최종수정일 : 2023. 08. 27(일)
- Dockerfile 작성
- Docker build
- Docker Port forwarding
- Docker Compose file 작성
작업하고자 하는 디렉토리에 DockerFile
작성
# 방법
FROM {base_image from docker hub} # base image 이름
WORKDIR {docker container 실행 디렉}
RUN pip install -U pip && \
pip install {package}
COPY {복사할 파일이름 in local} {복사 후 이름지정 in docker}
ENTRYPOINT "/bin/bash"
# 예시 1
FROM arm64v8/python:3.9-slim
WORKDIR /Users/gongpilgyeong/projects/mlops-test/src/app
RUN pip install -U pip && \
pip install scikit-learn \
pip install pandas
COPY src/train.py train.py
ENTRYPOINT "/bin/bash"
# 예시 2
FROM arm64v8/python:3.9-slim
RUN pip install -U pip && \
pip install mlflow
CMD ["mlflow", "server", "--host", "0.0.0.0"]
참고
Docker Doc
# 방법 (path 정확히 작성)
docker build -t {docker_name} -f {빌드파일_이름} . # .은 현재 디렉토리
# 예시
docker build -t reproduce -f DockerFile .
# 방법
docker run -it {docker_name}
# 예시
docker run -it reproduce
# 방법
docker run -p {입구_포트}:{목적_포트} {컨테이너_이름}
# 예시
docker run -p 5001:5000 mlflow-server
5001번(입구) 포트를 통해 5000번(목적) 포트로 들어가는 것