데이터엔지니어링
[9주차] Docker & K8s (4)
heecup
2024. 5. 30. 13:49
🙂 Docker-Compose
✔ Docker-Compose란?
- 다수의 Container로 SW가 구성되는 경우 사용할 수 있는 툴 + 환경설정파일
- docker-compose.yml로 설정
- 다양한 테스트 등도 수행 가능
- 다양한 버전을 만드는 것도 일반적 (dev, test, prod 등)
- 개별 Container를 따로 관리하는 것보다 훨씬 더 생산성이 높음
- 환경설정 파일의 이름은 docker-compose.yml이나 docker-compose.yaml
- $docker-compose --version
🍦 사용법
- docker-compose build: build 키로 지정된 것들 대상
- docker-compose up: docker run과 비슷
- build - create - start
- docker-compose pull: docker hub에서 이미지를 읽어옴 (공식 이미지)
- docker-compose push: docker hub로 push
- docker-compose ps
- docker-compose down
- stop - rm
- docker-compose start
- docker-compose stop
- docker-compose rm
✔ docker-compose.yml
- services: 다음으로 프로그램을 구성하는 서비스 지정
- 각 서비스는 별개의 Docker Image 지정과 Docker Container 실행으로 구성
- 각 서비스는 자신의 Dockerfile을 가지고 있어야함 아니면 Docker Hub 등에서 이미지 다운로드
- 서비스별로 포트번호, 환경변수, 디스크 볼륨 등을 지정
- 서비스 이름은 아무 이름이나 가능
- volumes: 앞서 사용된 docker volume을 지정
- networks: 앞서 사용된 network 지정
