diff --git a/Dockerfile b/Dockerfile index c34c3c1..9c1c366 100644 --- a/Dockerfile +++ b/Dockerfile @@ -29,6 +29,9 @@ RUN ./gradlew bootJar -x test --no-daemon # 2. Финальный образ (Runtime stage) FROM eclipse-temurin:21-jdk-jammy +# КРИТИЧЕСКОЕ ОБНОВЛЕНИЕ: Устанавливаем Docker CLI здесь! +RUN apt-get update && apt-get install -y docker.io && apt-get clean + WORKDIR /app COPY --from=build /app/build/libs/*.jar app.jar diff --git a/jambotron-ui/hetzner/docker-compose.staging.yml b/jambotron-ui/hetzner/docker-compose.staging.yml new file mode 100644 index 0000000..ad7d816 --- /dev/null +++ b/jambotron-ui/hetzner/docker-compose.staging.yml @@ -0,0 +1,50 @@ +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_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}}" + +networks: + jambotron-staging-net: + driver: bridge + jambotron-net: + external: true # Используем существующую сеть + +volumes: + jambo_db_staging_data: + jambotron_data: + name: jambotron_data \ No newline at end of file