728x90
반응형
🐳 Docker Compose 사용법 완벽 가이드 (yml 설정 파일 작성법 포함)
Docker는 컨테이너 기반의 가상화 플랫폼으로, 여러 서비스를 동시에 실행할 때는 Docker Compose를 사용하는 것이 매우 편리합니다. 이 글에서는 Docker Compose의 개념부터 docker-compose.yml
작성법, 실전 예제까지 알아봅니다.
📌 Docker Compose란?
Docker Compose는 여러 개의 Docker 컨테이너를 정의하고, 한번에 실행할 수 있도록 도와주는 도구입니다. 설정 파일 하나(docker-compose.yml
)로 웹 서버, 데이터베이스 등 여러 컨테이너를 한꺼번에 관리할 수 있어, 개발환경 자동화에 매우 유용합니다.
🛠️ Docker Compose 설치 방법
Docker Desktop을 설치했다면 Compose도 함께 설치됩니다.
Linux에서는 아래 명령어로 설치 여부를 확인할 수 있습니다:
docker-compose --version
📄 docker-compose.yml 기본 구조
version: "3.8" # Compose 파일 버전
services: # 실행할 서비스들 정의
web: # 서비스 이름
image: nginx
ports:
- "8080:80"
db:
image: mysql:5.7
environment:
MYSQL_ROOT_PASSWORD: example
🔍 주요 구성 요소
키워드 | 설명 |
---|---|
version |
Compose 파일 버전 지정 (권장: 3.8) |
services |
실행할 컨테이너 목록 |
image |
사용할 도커 이미지 |
build |
Dockerfile로부터 직접 빌드할 때 사용 |
ports |
호스트:컨테이너 포트 바인딩 |
volumes |
호스트 ↔ 컨테이너 데이터 공유 |
environment |
환경 변수 설정 |
🎯 실전 예제: 웹 + DB 구성
version: "3.8"
services:
web:
image: php:8.2-apache
ports:
- "8080:80"
volumes:
- ./src:/var/www/html
db:
image: mysql:5.7
restart: always
environment:
MYSQL_DATABASE: myapp
MYSQL_ROOT_PASSWORD: secret
📁 폴더 구조 예시
project/
├── docker-compose.yml
└── src/
└── index.php
├── docker-compose.yml
└── src/
└── index.php
🚀 실행 방법
docker-compose up # 실행
docker-compose up -d # 백그라운드 실행
docker-compose down # 중지 및 컨테이너 삭제
💡 유용한 팁
.env
파일을 만들어 환경변수를 분리 관리할 수 있음depends_on
옵션으로 실행 순서를 조정할 수 있음volumes
로 소스코드 변경 즉시 반영 가능
✅ 마무리
Docker Compose는 복잡한 개발 환경을 간단하게 구축하고 실행할 수 있게 도와주는 강력한 도구입니다. 위 예제를 응용해 Node.js, Redis, PostgreSQL 등 다양한 조합으로 확장할 수 있습니다. 앞으로 프로젝트 환경 구성 시 꼭 사용해보세요!
728x90
반응형
'운영체제 > 리눅스(CentOS)' 카테고리의 다른 글
리눅스 SELinux 보안 정책 관리하기 – booleans와 policies 설정 (0) | 2025.05.24 |
---|---|
리눅스 가상화 기술 완벽 가이드 (1) | 2025.05.10 |
리눅스에서 Docker 기초 완벽 가이드 (0) | 2025.04.29 |
리눅스 시스템 부팅 과정 완전정복 (0) | 2025.04.18 |
🐧 완전 초보도 가능한 리눅스 커널 컴파일 & 커스텀 설정 가이드 (0) | 2025.04.15 |