Files
quixotic/.serena/memories/ci_cd_simplification_complete.md
Andrey Kondratev 9defce960a test
2025-08-29 13:51:52 +05:00

1.5 KiB

CI/CD Simplification Complete

Changes Made

1. Simplified docker-compose.prod.yml

  • Removed complex environment variable substitution
  • Now simply uses ghcr.io/andrewkozin/quixotic:latest image
  • Only sets NODE_ENV: production

2. Simplified CI/CD Pipeline (.github/workflows/ci.yml)

  • Removed complex .env.docker file creation with secrets substitution
  • Deploy step now simply:
    • Pulls latest code
    • Logs into GHCR
    • Uses standard docker-compose commands
    • No more environment variable manipulation

3. Updated package.json Scripts

  • Removed --env-file .env.docker from all docker commands
  • Added production-specific commands:
    • docker:prod - Run production setup
    • docker:prod:down - Stop production setup
  • Simplified existing commands to use default docker-compose behavior

4. Updated Documentation

  • Updated DEPLOYMENT.md with new simple approach
  • Manual deployment now uses: docker-compose -f docker-compose.yml -f docker-compose.prod.yml up -d --pull always

Benefits

  • Much simpler deployment process
  • No complex environment variable manipulation in CI
  • Environment variables are loaded from .env.docker file on server (as configured in docker-compose.yml)
  • Cleaner separation between development and production configs
  • Easier to debug and maintain

Usage

For production deployment:

docker-compose -f docker-compose.yml -f docker-compose.prod.yml up -d

For development:

docker-compose up -d