Docker compose란?
Docker Compose는 Docker로 복잡한 애플리케이션을 정의하고 실행하기 위한 도구
단일 파일에서 다중 컨테이너 애플리케이션 정의
단일 명령으로 애플리케이션 가동
Docker compose 특징
- 단일 호스트의 여러 격리된 환경
- 컨테이너 생성시 볼륨 데이터 보존
- 변경된 컨테이너만 재생성
- 변수 및 환경 간 컴포지션 이동
- 여러 파일 작성 가능
Docker compose 설치
# apt-get install docker-compose
Docker compose 파일 구성
docker-compose.yml 파일 구성
nginx web server 컨테이너 포트 부여
version: '3'
services:
nginx:
image: "nginx"
ports:
- "5000:80"
container_name: nginx_compose
Docker compose 컨테이너 생성
# docker-compose up -d (백그라운드로 컨테이너 실행)
Docker compose 컨테이너 실행 확인
# docker ps
# docker-compose ps
Docker compose 컨테이너 접속 확인
FireFox web browser에서 컨테이너 접속 확인
http://127.0.0.1:5000
Docker compose 데이터베이스 연동 웹서버
docker-compose.yml 파일 구성
version: '3.0'
services:
web:
image: alicek106/composetest:web
ports:
- "1000:80"
links:
- mysql:db
command: apachectl -DFOREGROUND
mysql:
image: alicek106/composetest:mysql
command: mysqld
docker-compose를 통해 데이터베이스와 웹서버 컨테이너 활성화
# docker-compose up -d (백그라운드 실행)
# docker-compose ps (실행중인 컨테이너 확인)
FireFox web browser에서 서버 확인 (계정 생성 가능)
https://127.0.0.1:1000/login.php/join.php
FireFox web browser에서 서버 확인 (로그린하여 데이터베이스에 계정 정보 보관)
https://127.0.0.1:1000/main.php
Docker compose scale out
docker compose를 통해 db 엔진 컨테이너 수 조정
# docker-compose scale mysql=3
'2023_국민대 > AI 개발 환경의 이해' 카테고리의 다른 글
[Git] Git, Github (0) | 2023.06.09 |
---|---|
[Docker] Doker 개발 환경 (1) | 2023.06.05 |
[Linux] Docker 개발 환경 (0) | 2023.04.16 |
[Linux] Docker (0) | 2023.04.16 |
[Linux] 웹 서버 구축 Apache (0) | 2023.04.15 |