-
[docker] docker compose로 데이터베이스 한번에 N개 띄우기Spring Boot/환경설정 2023. 10. 23. 15:53
하나의 프로젝트에서 N개의 DB 연결이 필요한 상황
Local 실행환경 구축을 위해서 아래와 같이 구성했다.
1. Docker 이미지를 띄울때 SQL문으로 DB를 생성한다.
2. MYSQL_TCP_PORT 값 설정으로 컨테이너 내부 port 설정을 변경 해준다.
version: '3' services: mysql: platform: linux/amd64 image: "public.ecr.aws/docker/library/mysql:5.7.38" environment: - MYSQL_ALLOW_EMPTY_PASSWORD=yes - MYSQL_TCP_PORT=33060 - autoReconnect=true - characterEncoding=UTF-8 - sslMode=DISABLED - TZ=Asia/Seoul - LANG=C.UTF-8 ports: - "33060:33060" restart: always command: - --character-set-server=utf8mb4 - --collation-server=utf8mb4_unicode_ci volumes: - ./docker/mysql/init:/docker-entrypoint-initdb.d # 초기 실행될 ddl 위치
폴더와 파일 생성 -- create databases CREATE DATABASE IF NOT EXISTS db1; CREATE DATABASE IF NOT EXISTS db2; -- create user and grant rights CREATE USER 'username'@'%' IDENTIFIED BY 'password'; GRANT ALL ON *.* TO 'username'@'%';
참고
https://dev.to/pmutua/run-mysql-on-port-3307-using-docker-compose-gf8
반응형'Spring Boot > 환경설정' 카테고리의 다른 글
[springboot] Datasource Proxy로 SQL query logging 하기 (3) 2024.01.11 artillery로 부하테스트 하기 (0) 2023.10.29 Springboot, 주입한 환경변수 사용하기 (0) 2023.06.30 [IntelliJ] Java Google Code Style 적용하기 (0) 2023.06.10 Spring Boot, 환경 변수 주입 우선순위 (0) 2023.06.03