컬쥐네 다락방
Docker | Docker Compose 본문
Docker Compose
Docker Compose는 Docker의 IaC와 같은 것으로 yaml 코드로 컨테이너 설정을 기록해두는 것이다.
docker-compose 명령어를 사용했으나 최근 docker compose로 변경되었다.
파일 확장자로는 docker-compose.yaml
또는 docker-compose.yml
을 사용한다.
실행
docker compose up -d
프로젝트 목록 확인
docker compose ls
서비스 목록(컨테이너)
docker compose ps
삭제
docker compose down
- 도커 컴포즈로 배포한 컨테이너는 서로 이름으로 통신이 가능하다.
docker compose를 사용한 wordpress 배포
version: "3"
services:
wp-db: #서비스명
image: mysql:5.7 #이미지
restart: always #도커를 종료했다가 실행할 때 재시작 여부
environment: #환경변수
MYSQL_ROOT_PASSWORD: P@ssw0rd
MYSQL_DATABASE: wordpress
MYSQL_USER: wpadm
MYSQL_PASSWORD: P@ssw0rd
volumes: #연결할 볼륨
- wp-db-vol:/var/lib/mysql
networks: #연결할 네트워크
- wp-net
wp-web:
depends_on: #의존성 부여
- wp-db
image: wordpress:5-apache
restart: always
environment:
WORDPRESS_DB_HOST: wp-db
WORDPRESS_DB_USER: wpadm
WORDPRESS_DB_PASSWORD: P@ssw0rd
WORDPRESS_DB_NAME: wordpress
ports: #포트포워딩
- "80:80"
volumes:
- wp-web-vol:/var/www/html
networks:
- wp-net
volumes:
wp-db-vol:
wp-web-vol:
networks:
wp-net:
실행
docker compose up -d
[+] Running 5/5
⠿ Network wp_wp-net Created 0.1s
⠿ Volume "wp_wp-web-vol" Created 0.0s
⠿ Volume "wp_wp-db-vol" Created 0.0s
⠿ Container wp-wp-db-1 Started 0.8s
⠿ Container wp-wp-web-1 Started 1.9s
실행 결과 확인
docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS
NAMES
fdd8be34c10d wordpress:5-apache "docker-entrypoint.s…" 13 seconds ago Up 11 seconds 0.0.0.0:80->80/tcp, :::80->80/tcp wp-wp-web-1
fffd1a0e678f mysql:5.7 "docker-entrypoint.s…" 13 seconds ago Up 12 seconds 3306/tcp, 33060/tcp wp-wp-db-1
'클라우드 > Docker' 카테고리의 다른 글
Docker | 이미지 빌드 (0) | 2022.05.16 |
---|---|
Docker | 볼륨 설정 (0) | 2022.05.16 |
Docker | 네트워크 설정 (0) | 2022.05.16 |
Docker | 기초 개념 (0) | 2022.05.04 |