Clean repo and add deployment script for Bonsai
This commit is contained in:
@@ -1,4 +0,0 @@
|
|||||||
# Mot de passe PostgreSQL partagé entre le container db et l'API Spring Boot.
|
|
||||||
# Copier ce fichier en .env et définir une valeur sécurisée avant de démarrer.
|
|
||||||
# cp .env.example .env
|
|
||||||
POSTGRES_PASSWORD=changeme
|
|
||||||
@@ -1,54 +0,0 @@
|
|||||||
name: bonsai-api-stack
|
|
||||||
|
|
||||||
services:
|
|
||||||
db:
|
|
||||||
image: postgres:16-alpine
|
|
||||||
container_name: bonsai-api-db
|
|
||||||
restart: unless-stopped
|
|
||||||
environment:
|
|
||||||
POSTGRES_DB: bonsai
|
|
||||||
POSTGRES_USER: bonsai
|
|
||||||
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
|
|
||||||
TZ: Europe/Paris
|
|
||||||
healthcheck:
|
|
||||||
test: ["CMD-SHELL", "pg_isready -U bonsai -d bonsai"]
|
|
||||||
interval: 10s
|
|
||||||
timeout: 5s
|
|
||||||
retries: 5
|
|
||||||
volumes:
|
|
||||||
- ~/Applications/data/bonsai-api/db_data:/var/lib/postgresql/data
|
|
||||||
networks:
|
|
||||||
- bonsai-api-net
|
|
||||||
|
|
||||||
api:
|
|
||||||
image: git.goutailler-olivier.com/bonsai/bonsai-api:latest
|
|
||||||
container_name: bonsai-api
|
|
||||||
restart: unless-stopped
|
|
||||||
depends_on:
|
|
||||||
db:
|
|
||||||
condition: service_healthy
|
|
||||||
environment:
|
|
||||||
DATASOURCE_URL: jdbc:postgresql://db:5432/bonsai
|
|
||||||
DATASOURCE_USERNAME: bonsai
|
|
||||||
DATASOURCE_PASSWORD: ${POSTGRES_PASSWORD}
|
|
||||||
KEYCLOAK_JWKS_URI: https://auth.goutailler-olivier.com/realms/bonsai/protocol/openid-connect/certs
|
|
||||||
CORS_ALLOWED_ORIGIN_PROD: https://bonsai.goutailler-olivier.com
|
|
||||||
TZ: Europe/Paris
|
|
||||||
networks:
|
|
||||||
- bonsai-api-net
|
|
||||||
- proxy
|
|
||||||
labels:
|
|
||||||
- traefik.enable=true
|
|
||||||
- traefik.http.routers.bonsai-api.rule=Host(`bonsai.goutailler-olivier.com`) && PathPrefix(`/api`)
|
|
||||||
- traefik.http.routers.bonsai-api.entrypoints=websecure
|
|
||||||
- traefik.http.routers.bonsai-api.tls.certresolver=le
|
|
||||||
- traefik.http.services.bonsai-api.loadbalancer.server.port=8080
|
|
||||||
- traefik.docker.network=proxy
|
|
||||||
- com.centurylinklabs.watchtower.enable=true
|
|
||||||
|
|
||||||
networks:
|
|
||||||
bonsai-api-net:
|
|
||||||
driver: bridge
|
|
||||||
proxy:
|
|
||||||
external: true
|
|
||||||
name: proxy
|
|
||||||
@@ -1,27 +0,0 @@
|
|||||||
name: bonsai-webapp
|
|
||||||
|
|
||||||
services:
|
|
||||||
bonsai-webapp:
|
|
||||||
image: git.goutailler-olivier.com/bonsai/bonsai-webapp:latest
|
|
||||||
container_name: bonsai-webapp
|
|
||||||
restart: unless-stopped
|
|
||||||
|
|
||||||
environment:
|
|
||||||
TZ: Europe/Paris
|
|
||||||
|
|
||||||
networks:
|
|
||||||
- proxy
|
|
||||||
|
|
||||||
labels:
|
|
||||||
- traefik.enable=true
|
|
||||||
- traefik.http.routers.bonsai-webapp.rule=Host(`bonsai.goutailler-olivier.com`)
|
|
||||||
- traefik.http.routers.bonsai-webapp.entrypoints=websecure
|
|
||||||
- traefik.http.routers.bonsai-webapp.tls.certresolver=le
|
|
||||||
- traefik.http.services.bonsai-webapp.loadbalancer.server.port=80
|
|
||||||
- traefik.docker.network=proxy
|
|
||||||
- com.centurylinklabs.watchtower.enable=true
|
|
||||||
|
|
||||||
networks:
|
|
||||||
proxy:
|
|
||||||
external: true
|
|
||||||
name: proxy
|
|
||||||
Executable
+4
@@ -0,0 +1,4 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
CACHEBUST=$(date +%s) docker compose build
|
||||||
|
docker compose up -d
|
||||||
Reference in New Issue
Block a user