1. 도커 컴포즈(Docker Compose) 란?
- 여러 도커 컨테이너를 정의하고 실행하는 도구
- 주로 다중 컨테이너 도커 애플리케이션을 정의하고 관리하는 데 사용
- YAML 파일을 사용하여 애플리케이션의 서비스, 네트워크 및 볼륨을 정의
> 서비스(Services): 도커 컴포즈 파일 내에서 정의된 각각의 컨테이너
> 볼륨(Volumes): 컨테이너와 호스트 간의 데이터 공유를 위한 디렉토리 (컨테이너가 재시작 되더라도 데이터가 유지)
> 네트워크(Networks): 컨테이너 간의 통신을 위한 네트워크 설정( 기본적으로 서비스 간 격리된 네트워크 생성 )
- 도커 컴포즈 파일은 일반적으로 docker-compose.yml 파일로 작성
2. 도커 컴포즈 설치
- pip3 install docker-compose
> 만약 docker desktop 을 설치 했다면 기본적으로 포함 되어 있으므로 추가적인 설치는 필요 없음
- docker-compose --version
3. docker-compose.yml 로 여러개 컨테이너 실행하기
- vim docker-compose.yml
> 아래의 코드 작성
version: "3.8"
services:
mydjango:
build: ./mydjango
networks:
- mynet01
depends_on:
- mypostgres
restart: always
mynginx:
build: ./mynginx
networks:
- mynet01
ports:
- "80:80"
depends_on:
- mydjango
restart: always
mypostgres:
build: ./mypostgres
networks:
- mynet01
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: admin
POSTGRES_DB: mydb
volumes:
- myvol01:/var/lib/postgresql/data
restart: always
networks:
mynet01:
volumes:
myvol01:
- docker compose up -d --build
> 도커 컴포즈로 빌드 및 실행
'Docker' 카테고리의 다른 글
[DOCKER] 도커 컨테이너 (0) | 2024.07.03 |
---|---|
[DOCKER] Docker django 배포 (1) | 2024.07.02 |
[DOCKER] ubuntu server - django 개발 환경 구축 (0) | 2024.07.01 |
[DOCKER] Docker PostgreSQL 설치 (0) | 2024.07.01 |
[DOCKER] Docker 우분투 설치 (0) | 2024.07.01 |