update compose

This commit is contained in:
Vincent Guillet
2025-11-20 16:24:18 +01:00
parent 028bd80669
commit f83a8cc26b

View File

@@ -1,12 +1,7 @@
services:
mysql:
image: mysql:8.4
container_name: gameovergne-mysql
networks:
- gameovergne-app-network
ports:
- "3366:3306"
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: gameovergne_app
@@ -14,38 +9,64 @@ services:
MYSQL_PASSWORD: gameovergne
volumes:
- mysql-data:/var/lib/mysql
networks:
- gameovergne
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-h", "127.0.0.1", "-u", "root", "-proot"]
interval: 10s
timeout: 5s
retries: 10
restart: unless-stopped
spring:
depends_on:
- mysql
build:
context: ./api
dockerfile: Dockerfile
image: registry.unifihomenetwork.com/gameovergne-api:dev-latest
container_name: gameovergne-api
networks:
- gameovergne-app-network
ports:
- "8888:8080"
depends_on:
mysql:
condition: service_healthy
environment:
- SPRING_IMAGE_NAME=gameovergne-api
- IMAGE_TAG=latest
SPRING_DATASOURCE_URL: jdbc:mysql://mysql:3306/gameovergne_app?useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=UTC
SPRING_DATASOURCE_USERNAME: gameovergne
SPRING_DATASOURCE_PASSWORD: gameovergne
networks:
- gameovergne
- traefik
restart: unless-stopped
labels:
- traefik.enable=true
- traefik.docker.network=traefik
- traefik.http.routers.gameovergne-api.rule=Host(`dev.unifihomenetwork.com`) && PathPrefix(`/gameovergne-api`)
- traefik.http.routers.gameovergne-api.entrypoints=edge
- traefik.http.routers.gameovergne-api.middlewares=gameovergne-api-stripprefix
- traefik.http.services.gameovergne-api.loadbalancer.server.port=8080
- traefik.http.middlewares.gameovergne-api-stripprefix.stripprefix.prefixes=/gameovergne-api
angular:
build:
context: ./client
dockerfile: Dockerfile
networks:
- gameovergne-app-network
image: registry.unifihomenetwork.com/gameovergne-client:dev-latest
container_name: gameovergne-client
ports:
- "4200:4200"
environment:
- ANGULAR_IMAGE_NAME=gameovergne-client
- IMAGE_TAG=latest
depends_on:
- spring
networks:
- gameovergne
- traefik
restart: unless-stopped
labels:
- traefik.enable=true
- traefik.docker.network=traefik
- traefik.http.routers.gameovergne-client.rule=Host(`dev.unifihomenetwork.com`) && (Path(`/gameovergne`) || PathPrefix(`/gameovergne/`))
- traefik.http.routers.gameovergne-client.entrypoints=edge
- traefik.http.routers.gameovergne-client.middlewares=gameovergne-slash,gameovergne-client-stripprefix
- traefik.http.services.gameovergne-client.loadbalancer.server.port=4200
- traefik.http.middlewares.gameovergne-slash.redirectregex.regex=^(.*/gameovergne)$
- traefik.http.middlewares.gameovergne-slash.redirectregex.replacement=$${1}/
- traefik.http.middlewares.gameovergne-slash.redirectregex.permanent=true
- traefik.http.middlewares.gameovergne-client-stripprefix.stripprefix.prefixes=/gameovergne
networks:
gameovergne-app-network:
traefik:
external: true
gameovergne:
external: false
volumes:
mysql-data:
external: true