spaship
This commit is contained in:
@@ -62,6 +62,9 @@ jobs:
|
||||
-e SPRING_FLYWAY_PASSWORD=jambo_secret_pass \
|
||||
-e SPRING_DATA_MONGODB_URI=mongodb://jambotron_admin:jambo_mongo_secret@jambo-mongo:27017/jambotron?authSource=admin \
|
||||
-l "caddy=$D_DOMAIN, *.$D_DOMAIN, *.*.$D_DOMAIN" \
|
||||
-e SPACESHIP_API_KEY="${{ secrets.SPACESHIP_API_KEY }}" \
|
||||
-e SPACESHIP_API_SECRET="${{ secrets.SPACESHIP_API_SECRET }}" \
|
||||
-l "caddy.tls.dns=spaceship" \
|
||||
-l "caddy.reverse_proxy={{upstreams 8081}}" \
|
||||
jambotron-app:$D_TAG
|
||||
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
# База данных Staging
|
||||
STAGING_DB_USER=jambotron_stg_admin
|
||||
STAGING_DB_PASSWORD=your_secure_stg_pass
|
||||
STAGING_DB_NAME=jambotron_staging
|
||||
|
||||
# Настройки приложения
|
||||
SPRING_PROFILES_ACTIVE=staging
|
||||
STAGING_DOMAIN=staging.jambotron.com
|
||||
@@ -0,0 +1,53 @@
|
||||
version: '3.8'
|
||||
|
||||
services:
|
||||
# База данных для стейджинга
|
||||
jambo-db-staging:
|
||||
image: postgres:15-alpine
|
||||
container_name: jambo-db-staging
|
||||
restart: always
|
||||
networks:
|
||||
- jambotron-staging-net
|
||||
environment:
|
||||
POSTGRES_USER: ${STAGING_DB_USER}
|
||||
POSTGRES_PASSWORD: ${STAGING_DB_PASSWORD}
|
||||
POSTGRES_DB: ${STAGING_DB_NAME}
|
||||
volumes:
|
||||
- jambo_db_staging_data:/var/lib/postgresql/data
|
||||
|
||||
# Backend-приложение (Staging версия)
|
||||
jambotron-app-stg:
|
||||
image: jambotron-app:stg-latest
|
||||
container_name: jambotron-app-stg
|
||||
restart: always
|
||||
depends_on:
|
||||
- jambo-db-staging
|
||||
volumes:
|
||||
- jambotron_staging_data:/jambotron_data
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
networks:
|
||||
- jambotron-staging-net
|
||||
- jambotron-net # Для связи с Caddy
|
||||
environment:
|
||||
SPRING_PROFILES_ACTIVE: ${SPRING_PROFILES_ACTIVE}
|
||||
SPRING_DATASOURCE_URL: jdbc:postgresql://jambo-db-staging:5432/${STAGING_DB_NAME}
|
||||
SPRING_DATASOURCE_USERNAME: ${STAGING_DB_USER}
|
||||
SPRING_DATASOURCE_PASSWORD: ${STAGING_DB_PASSWORD}
|
||||
labels:
|
||||
# Настройки для caddy-docker-proxy
|
||||
caddy: ${STAGING_DOMAIN}
|
||||
caddy.reverse_proxy: "{{upstreams 8080}}"
|
||||
# Добавь это для стабильности WS:
|
||||
caddy.header_up_1: "Upgrade {>Upgrade}"
|
||||
caddy.header_up_2: "Connection {>Connection}"
|
||||
|
||||
networks:
|
||||
jambotron-staging-net:
|
||||
driver: bridge
|
||||
jambotron-net:
|
||||
external: true # Используем существующую сеть
|
||||
|
||||
volumes:
|
||||
jambo_db_staging_data:
|
||||
jambotron_staging_data:
|
||||
name: jambotron_staging_data
|
||||
@@ -0,0 +1,37 @@
|
||||
version: '3.8'
|
||||
|
||||
services:
|
||||
# Сервер базы данных
|
||||
jambotron-db-server:
|
||||
image: postgres:15-alpine
|
||||
container_name: jambo-postgres
|
||||
restart: always
|
||||
environment:
|
||||
- POSTGRES_DB=jambotron_prod
|
||||
- POSTGRES_USER=jambotron_admin
|
||||
- POSTGRES_PASSWORD=jambo_secret_pass
|
||||
volumes:
|
||||
- jambo_db_data:/var/lib/postgresql/data
|
||||
networks:
|
||||
- jambotron-net
|
||||
|
||||
# Панель управления базой
|
||||
jambo-pgadmin:
|
||||
image: dpage/pgadmin4
|
||||
container_name: jambo-pgadmin
|
||||
restart: always
|
||||
environment:
|
||||
- PGADMIN_DEFAULT_EMAIL=admin@jambotron.com
|
||||
- PGADMIN_DEFAULT_PASSWORD=your_secure_password
|
||||
networks:
|
||||
- jambotron-net
|
||||
labels:
|
||||
- "caddy=pgadmin.jambotron.com"
|
||||
- "caddy.reverse_proxy={{upstreams 80}}"
|
||||
|
||||
networks:
|
||||
jambotron-net:
|
||||
external: true # Указываем, что сеть уже создана (в ней же живет Caddy и Gitea)
|
||||
|
||||
volumes:
|
||||
jambo_db_data:
|
||||
Reference in New Issue
Block a user