본문 바로가기

Docker5

도커 이미지 tar 파일 생성 도커 이미지를 사용하다 보면 이미지를 업데이트 하는 경우가 많다. 로컬에서만 쓰며 상관없지만 docker hub나 gitlab registry에 push하고 pull하는 경우 이미지 용량에 의해 시간이 매우 오래 걸리는 경우들이 있다. 이 때 이미지 자체를 통으로 .tar 파일로 압축해 사용하는 방법이 있다. 1. Docker save (image → .tar 압축) docker save {option} [파일명] [이미지명] e.g.) ex) docker save -o myimage.tar myimage:latest (-o는 이름 지정 옵션) 2. Docker load ( .tar 파일 → image로 로드) docker load -i [tar file] 아래는 이미지를 올린 컨테이너를 통으로 .tar.. 2024. 2. 8.
Docker Hub 사용 Docker Image를 로컬에서만 사용하면 상관없지만 공유/PC를 바꿔바면 사용하는 경우 github처럼 이미지를 registry에 올려두고 사용하는게 훨씬 편리하다. 1. 아래 링크의 docker hub에 가입한다. https://hub.docker.com/ Docker Hub Container Image Library | App Containerization Deliver your business through Docker Hub Package and publish apps and plugins as containers in Docker Hub for easy download and deployment by millions of Docker users worldwide. hub.docker.com .. 2024. 2. 7.
Docker Container 내에서 내/외부 IP 사용 Python 3.8.10 기준 Python으로 사용하는 기기의 IP를 찍는 코드는 아래와 같다. def getLocalIP()->str: s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) s.connect(("8.8.8.8", 80)) ip = s.getsockname()[0] s.close() return ip 위 함수를 실행하면 해당 기기의 ip를 string으로 받을 수 있다. Docker Container 환경에서 위 함수를 이용하여 ip를 활용하는 방법을 두 가지 경우로 나누어 볼 것이다. 1. 컨테이너 내부 IP 그냥 컨테이너를 실행하고 위 함수가 동작하게 하면 컨테이너의 내부 ip를 찍어준다. 즉, PC의 ip가 192.168.xxx.xxx이더라도.. 2023. 9. 26.
Docker Compose 구성 개요 본 문서는 Dockerfile, docker-compose.yml, 도커 실행 명령 관련하여 자주 사용하는 특정 기능을 위해 필요한 자주 안쓰지만 필요한 기능을 위한 명령어 등을 정리한 문서이다. 이 문서의 경우 wait 기능을 위해 2.1 버전을 이용했는데 보통은 3점대 쓴다. Docker Compose 기본적으로 이미지는 개별 Dockerfile로 생성하는 게 사용하기 편하다. Dockerfile의 volume, device 같은 연결 명령은 compose에서도 선언 가능하다. mongodb, nginx 같은 이미지가 공개된 경우 version: '2.1' services: mongodb: image: mongo:4.0 container_name: local_service_db restart: .. 2023. 9. 15.
Dockerfile 작성 개요 본 문서는 Dockerfile, docker-compose.yml, 도커 실행 명령 관련하여 자주 사용하는 특정 기능을 위해 필요한 자주 안쓰지만 필요한 기능을 위한 명령어 등을 정리한 문서이다. Dockerfile uvicorn으로 fastapi 서버를 돌리는 경우 FROM python:3.9 WORKDIR /app/ EXPOSE 9000 COPY ./app.py /app/ COPY ./utils/file1.py /app/utils/ COPY ./utils/file1.py /app/utils/ COPY ./router/router1.py /app/router/ COPY ./requirements.txt /app/ RUN pip3 install -r requirements.txt CMD uvicor.. 2023. 9. 14.
반응형