[Docker] Docker Compose

2025. 2. 22. 11:26·Docker/Docker

1. Docker Compose

  • 도커 컴포즈는 여러 개의 컨테이너를 한번에 정의 및 관리할 수 있는 도구
  • 하나의 YAML 파일을 사용하여 컨테이너를 다중 정의 및 실행할 수 있다.

 


 

2. docker-compose.yaml

version: '3.8'  # Compose 파일의 버전 지정

services:
  web:
    image: nginx:latest  # Nginx 최신 이미지 사용
    container_name: nginx-container  # 컨테이너 이름 지정
    ports:
      - "8080:80"  # 호스트의 8080 포트를 컨테이너의 80포트와 연결
    depends_on:
      - app  # app 컨테이너가 실행된 후 web 컨테이너 실행
    volumes:
      - ./html:/usr/share/nginx/html  # 로컬 html 폴더를 컨테이너 내부에 마운트
    restart: always  # 컨테이너가 종료될 경우 자동 재시작

  app:
    build: ./app  # ./app 폴더 내 Dockerfile을 이용하여 빌드
    container_name: flask-app  # 컨테이너 이름 지정
    environment:
      - FLASK_ENV=development  # 환경 변수 설정 (Flask 개발 모드)
      - PORT=5000
    expose:
      - "5000"  # 내부적으로 5000번 포트를 노출 (외부 접근은 불가)
    command: python app.py  # 컨테이너가 실행할 명령어 지정
  • 도커 컴포즈를 실행시키는 YAML 파일의 예시 코드이다.
  • web과 app이라는 컨테이너의 옵션과 이미지 및 포트 등을 정의하고 실행까지 할 수 있는 코드

 


 

3. 도커 컴포즈 문법 및 명령어

  • YAML 파일에 사용되는 도커 컴포즈 문법

  • 도커 컴포즈로 실행 시키기 위한 명령어 

'Docker > Docker' 카테고리의 다른 글

[Docker] 이미지 레지스트리에 푸시하기  (0) 2025.07.16
[Docker] Ubuntu에서 Docker 설치 및 이미지 생성  (4) 2025.07.09
[Docker] 컨테이너 스토리지 02  (0) 2025.02.11
[Docker] 컨테이너 스토리지 01  (0) 2025.02.07
[Docker] 컨테이너 리소스 관리  (0) 2025.02.02
'Docker/Docker' 카테고리의 다른 글
  • [Docker] 이미지 레지스트리에 푸시하기
  • [Docker] Ubuntu에서 Docker 설치 및 이미지 생성
  • [Docker] 컨테이너 스토리지 02
  • [Docker] 컨테이너 스토리지 01
주우운
주우운
CloudOps까지의 과정 기록
  • 주우운
    CloudOps 여행기
    주우운
  • 전체
    오늘
    어제
    • 전체보기 (36)
      • AWS (7)
      • Docker (18)
        • Docker (14)
        • 따배도 (4)
      • Kubernetes (4)
      • IaC (0)
        • Ansible (0)
        • Terraform (0)
      • Linux (3)
      • DB (2)
      • 팁 (2)
  • 인기 글

  • hELLO· Designed By정상우.v4.10.4
주우운
[Docker] Docker Compose
상단으로

티스토리툴바