협업을 진행하면서 로컬 환경의 DB에서 작업할 때 개인마다 DB를 만들어서 작업을 해야한다.
이 과정을 도커 컴포즈 파일로 작성해두면 팀원들이 쉽게 DB를 만들 수 있다.
이 파일은 프로젝트 빌드 시 자동 실행 된다.
현재는 DB만 정의하였지만 여러 방면으로 사용할 수 있다.
1. Compose.yaml 파일 생성
version: '3.8'
services:
news_feed-mysql:
image: mysql:8.0.35
platform: linux/amd64
volumes:
- news_feed_mysql_volume:/data
ports:
- '3306:3306'
environment:
MYSQL_ROOT_PASSWORD: qwer1234
MYSQL_DATABASE: news_feed
command:
[ 'mysqld', '--character-set-server=utf8mb4', '--collation-server=utf8mb4_unicode_ci', '--lower_case_table_names=1' ]
volumes:
# Named Volume 컨테이너 내부 파일 시스템과 마운트 될 볼륨 위치를 알아서 잡아줌
news_feed_mysql_volume:
다음과 같이 속성을 지정하여 파일 생성 후 프로젝트 빌드 시 도커에 자동으로 컨테이너가 생성되는 것을 확인할 수 있다.
만약 컨테이너가 생성되지 않는다면 docker pull을 통해 필요한 이미지를 먼저 풀 받고 실행하면 문제없이 작동할 것이다.
추가적으로 볼륨을 통해 도커 내 저장 공간을 생성하고 해당 저장 공간은 컨테이너가 없어져도 계속 남게 된다.
volumes:
# Named Volume 컨테이너 내부 파일 시스템과 마운트 될 볼륨 위치를 알아서 잡아줌
news_feed_mysql_volume:
스크립트를 통해 초기 테이블 생성, 유저 생성 등 더 편리하게 작성이 가능하다.
참고
'도커' 카테고리의 다른 글
| CI/CD란? (1) | 2025.05.07 |
|---|---|
| Docker mysql에 외부 데이터 추가하기 (0) | 2024.07.04 |
| Mac Docker Ubuntu SSH 서버 연결하기 (0) | 2024.03.27 |
| Mac Docker 다운로드 및 Ubuntu 설치 (0) | 2024.03.27 |