diff --git a/.env.example b/.env.example index 4788ee4..8c91d32 100644 --- a/.env.example +++ b/.env.example @@ -8,7 +8,7 @@ SD_PORT=18000 # Database (MySQL) SD_DB_TYPE=mysql -SD_DB_HOST=localhost +SD_DB_HOST=localhost # use "db" when running with docker-compose SD_DB_PORT=3306 SD_DB_USER=root SD_DB_PASSWORD= diff --git a/docker-compose.yml b/docker-compose.yml index 208dc5b..282e2fa 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,6 +1,25 @@ services: + db: + image: mysql:8.0 + container_name: superdream-db + environment: + MYSQL_ROOT_PASSWORD: ${SD_DB_PASSWORD:-superdream} + MYSQL_DATABASE: ${SD_DB_NAME:-superdream} + ports: + - "3306:3306" + volumes: + - db_data:/var/lib/mysql + healthcheck: + test: ["CMD", "mysqladmin", "ping", "-h", "localhost", "-u", "root", "-p${SD_DB_PASSWORD:-superdream}"] + interval: 10s + timeout: 5s + retries: 5 + start_period: 30s + restart: unless-stopped + backend: - container_name: superdream + container_name: superdreamfront + image: superdreamfront build: context: . dockerfile: Dockerfile @@ -10,4 +29,12 @@ services: - ./data:/backend/data env_file: - .env + environment: + SD_DB_HOST: db + depends_on: + db: + condition: service_healthy restart: unless-stopped + +volumes: + db_data: