58 lines
1.4 KiB
YAML
58 lines
1.4 KiB
YAML
services:
|
|
mysql:
|
|
image: ${MYSQL_IMAGE}
|
|
container_name: ${MYSQL_CONTAINER_NAME}
|
|
restart: ${COMPOSE_RESTART_POLICY}
|
|
env_file:
|
|
- ./.env
|
|
ports:
|
|
- "${MYSQL_HOST_PORT}:3306"
|
|
volumes:
|
|
- volume:/var/lib/mysql
|
|
healthcheck:
|
|
test: ["CMD", "mysqladmin", "ping", "-h", "127.0.0.1", "-uroot", "-p${MYSQL_ROOT_PASSWORD}"]
|
|
interval: ${MYSQL_HEALTHCHECK_INTERVAL}
|
|
timeout: ${MYSQL_HEALTHCHECK_TIMEOUT}
|
|
retries: ${MYSQL_HEALTHCHECK_RETRIES}
|
|
|
|
backend:
|
|
build:
|
|
context: ${BACKEND_BUILD_CONTEXT}
|
|
dockerfile: ${BACKEND_DOCKERFILE}
|
|
container_name: ${BACKEND_CONTAINER_NAME}
|
|
restart: ${COMPOSE_RESTART_POLICY}
|
|
depends_on:
|
|
mysql:
|
|
condition: service_healthy
|
|
env_file:
|
|
- ./.env
|
|
ports:
|
|
- "${BACKEND_HOST_PORT}:${SERVER_PORT}"
|
|
|
|
frontend:
|
|
build:
|
|
context: ${FRONTEND_BUILD_CONTEXT}
|
|
dockerfile: ${FRONTEND_DOCKERFILE}
|
|
args:
|
|
VITE_API_BASE_URL: ${VITE_API_BASE_URL}
|
|
container_name: ${FRONTEND_CONTAINER_NAME}
|
|
restart: ${COMPOSE_RESTART_POLICY}
|
|
depends_on:
|
|
- backend
|
|
ports:
|
|
- "${FRONTEND_HOST_PORT}:80"
|
|
|
|
swagger-ui:
|
|
image: ${SWAGGER_UI_IMAGE}
|
|
container_name: ${SWAGGER_UI_CONTAINER_NAME}
|
|
restart: ${COMPOSE_RESTART_POLICY}
|
|
depends_on:
|
|
- backend
|
|
environment:
|
|
URL: ${SWAGGER_SPEC_URL}
|
|
ports:
|
|
- "${SWAGGER_UI_HOST_PORT}:8080"
|
|
|
|
volumes:
|
|
volume:
|