diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..444c56a --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,22 @@ +services: + mysql: + image: mysql:8.0 + container_name: caquick-mysql + environment: + MYSQL_ROOT_PASSWORD: root + MYSQL_DATABASE: CaQuick + MYSQL_USER: caquick + MYSQL_PASSWORD: caquick + ports: + - '3306:3306' + volumes: + - caquick-mysql-data:/var/lib/mysql + - ./docker/mysql/init:/docker-entrypoint-initdb.d + healthcheck: + test: ['CMD', 'mysqladmin', 'ping', '-h', 'localhost'] + interval: 10s + timeout: 5s + retries: 5 + +volumes: + caquick-mysql-data: diff --git a/docker/mysql/init/01-grant-shadow-db.sql b/docker/mysql/init/01-grant-shadow-db.sql new file mode 100644 index 0000000..b77f3d1 --- /dev/null +++ b/docker/mysql/init/01-grant-shadow-db.sql @@ -0,0 +1,4 @@ +-- Prisma migrate dev는 shadow database를 임시 생성/삭제하므로 +-- caquick 유저에게 DB 생성 권한을 부여한다. +GRANT ALL PRIVILEGES ON *.* TO 'caquick'@'%'; +FLUSH PRIVILEGES;