From cf57565f6f8269af459d54f490eaa74a09944a64 Mon Sep 17 00:00:00 2001 From: Liosha Date: Mon, 27 Apr 2026 14:53:01 +0300 Subject: [PATCH] production and staging(development) --- .gitea/workflows/deploy.yml | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml index 5dd66ec..629b3e7 100644 --- a/.gitea/workflows/deploy.yml +++ b/.gitea/workflows/deploy.yml @@ -6,7 +6,6 @@ on: jobs: build-and-deploy: runs-on: ubuntu-latest - # Используем стандартный контейнер для act, но без ручного монтирования сокета container: image: catthehacker/ubuntu:act-latest @@ -16,41 +15,47 @@ jobs: - name: Install Docker CLI run: | - # Устанавливаем клиент Docker, чтобы команда стала доступна в контейнере apt-get update && apt-get install -y docker.io - name: Build and Deploy run: | - # 1. Определяем переменные окружения в зависимости от ветки + # Динамический выбор переменных на основе ветки if [[ "${{ github.ref }}" == "refs/heads/production" ]]; then NAME="jambotron-prod" - DB="jambotron_prod" + DB_NAME="jambotron_prod" DOMAIN="jambotron.com" TAG="prod-latest" else NAME="jambotron-staging" - DB="jambotron_stg" + DB_NAME="jambotron_stg" DOMAIN="staging.jambotron.com" TAG="stg-latest" fi - # 2. Сборка образа (использует системный Docker хоста через проброшенный сокет) + # Сборка образа docker build -t jambotron-app:$TAG . - # 3. Остановка и удаление старого контейнера, если он существует + # Очистка места перед запуском docker stop $NAME || true docker rm $NAME || true - # 4. Запуск обновленного контейнера Jambotron + # Запуск контейнера docker run -d \ --name $NAME \ --network jambotron-net \ --restart always \ -v /var/run/docker.sock:/var/run/docker.sock \ + # УСТАНОВКА ПРОФИЛЯ: активирует боевой режим приложения, а для локальной разработки dev -e SPRING_PROFILES_ACTIVE=prod \ - -e SPRING_DATASOURCE_URL=jdbc:postgresql://jambo-postgres:5432/$DB \ + # Основные параметры подключения к базе + -e SPRING_DATASOURCE_URL=jdbc:postgresql://jambo-postgres:5432/$DB_NAME \ -e SPRING_DATASOURCE_USERNAME=jambotron_admin \ -e SPRING_DATASOURCE_PASSWORD=jambo_secret_pass \ + # Параметры для Flyway (миграции базы) + -e SPRING_FLYWAY_URL=jdbc:postgresql://jambo-postgres:5432/$DB_NAME \ + -e SPRING_FLYWAY_USER=jambotron_admin \ + -e SPRING_FLYWAY_PASSWORD=jambo_secret_pass \ + # Настройки Caddy для автоматического HTTPS/Proxy -l "caddy=$DOMAIN" \ -l 'caddy.reverse_proxy={{upstreams 8081}}' \ jambotron-app:$TAG \ No newline at end of file