본문 바로가기

따배도 스터디

10-1 빌드에서 운영까지 (using Docker Compose) - 이론편

728x90

Q1.도커컴포즈는 뭐예요??

여러 컨테이너를 일괄적으로 정의하고 실행할 수 있는 툴

https://github.com/docker/awesome-compose/tree/master/official-documentation-samples/wordpress/

 

docker compose.yml 예시

services:
  db:
    # We use a mariadb image which supports both amd64 & arm64 architecture
    image: mariadb:10.6.4-focal
    # If you really want to use MySQL, uncomment the following line
    #image: mysql:8.0.27
    command: '--default-authentication-plugin=mysql_native_password'
    volumes:
      - db_data:/var/lib/mysql
    restart: always
    environment:
      - MYSQL_ROOT_PASSWORD=somewordpress
      - MYSQL_DATABASE=wordpress
      - MYSQL_USER=wordpress
      - MYSQL_PASSWORD=wordpress
    expose:
      - 3306
      - 33060
  wordpress:
    image: wordpress:latest
    volumes:
      - wp_data:/var/www/html
    ports:
      - 80:80
    restart: always
    environment:
      - WORDPRESS_DB_HOST=db
      - WORDPRESS_DB_USER=wordpress
      - WORDPRESS_DB_PASSWORD=wordpress
      - WORDPRESS_DB_NAME=wordpress
volumes:
  db_data:
  wp_data:

 

 

restart: 컨테이너를 수동으로 끄기 전까지 항상 재시작.

 

db를 먼저 실행한 후 web을 실행해주세요.

depends_on:컨테이너 간의 종속성을 정의. 정의한 컨테이너가 먼저 동작되어야 한다.

 

 

Q2.빌드에서 운영까지 알려주세요

 

scale: 갯수 정해줄 수 있음.

compose stop:중지

compose down: 동작중인 2개의 컨테이너 완전히 종료 docker rm 과 같음

 

 

config:문법체크

up -d :생성 및 시작

 

 

-f /other-dir/docker-compose.yml:다른 디렉토리에 있는 compose 시작

 

 

728x90