Wip traefik switch - #9
Draft
Ourouk wants to merge 4 commits into
Draft
Conversation
Member
Author
|
Still need testing |
Contributor
There was a problem hiding this comment.
Pull request overview
This PR transitions the stack’s web entrypoint from an NGINX+Certbot setup to Traefik (with ACME/Let’s Encrypt) and expands the backup workflow to upload database dumps to an S3-compatible store via rclone, updating the stop/restart automation and documentation accordingly.
Changes:
- Replace the
reverse-proxy(NGINX) setup with atraefikservice and per-service Traefik router labels indocker-compose.yml. - Update backup behavior to (a) fail the stop/restart flow on dump/upload failure and (b) upload/verify backups to external S3-compatible storage.
- Update
.env.example,.gitignore, and README backup/docs to reflect the new backup workflow and proxy changes.
Reviewed changes
Copilot reviewed 11 out of 12 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| README.md | Updates backup documentation and profiles table to describe S3 upload/verification flow. |
| docker-stack.sh | Changes backup automation to fail fast on dump failure and run backup-upload after successful dumps. |
| docker-stack.bat | Mirrors the new backup flow on Windows (but currently doesn’t block shutdown on backup failure). |
| docker-compose/traefik/letsencrypt/acme.json | Adds an ACME storage file placeholder for Traefik (currently tracked in git). |
| docker-compose/traefik/dynamic/conf.yml | Adds Traefik dynamic config middleware for security headers. |
| docker-compose/nginx/conf.d/proxy-common-headers.conf | Removes NGINX proxy header include (NGINX decommissioned). |
| docker-compose/nginx/conf-template.d/default-https.template.conf | Removes NGINX HTTPS template (Traefik replaces NGINX). |
| docker-compose/nginx/conf-template.d/default-http.template.conf | Removes NGINX HTTP template (Traefik replaces NGINX). |
| docker-compose/nginx/certbot.ini | Removes Certbot config (Traefik ACME replaces Certbot). |
| docker-compose/docker-compose.yml | Introduces Traefik service + router labels, hardens dump creation, and adds backup-upload service using rclone. |
| docker-compose/.env.example | Adds BACKUP_S3_* configuration for external backup storage; removes old NGINX upstream/HTTPS settings. |
| .gitignore | Adds ignoring of docker-compose/.env (and should also ignore Traefik ACME storage). |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Comment on lines
117
to
121
| :stop_stack | ||
| echo Running backups before stopping... | ||
| call :do_backup | ||
| %DOCKER_COMPOSE_CMD% -f "%COMPOSE_FILE%" --profile init --profile backend --profile frontend down | ||
| exit /b %errorlevel% |
Comment on lines
56
to
+59
| | `frontend` | reverse-proxy, crm-frontend | Web serving layer | | ||
| | `init` | keycloak-config, swagger-doc-gen, generation-doc-gen, simulation-doc-gen, news-board-doc-gen, billing-doc-gen, krakend-config, crm-frontend-config | One-shot config generators | | ||
| | `migration` | optimce-migrator | One-shot CRM schema migrations | | ||
| | `backup` | crm-database-backup, keycloak-db-backup, allocation-key-db-backup, simulation-key-db-backup, news-board-db-backup, billing-db-backup | Database backup services | | ||
| | `backup` | database backup services, backup-upload | Database dumps and S3-compatible backup upload | |
Comment on lines
862
to
+865
| volumes: | ||
| - ./nginx/conf.d:/etc/nginx/conf.d | ||
| - ./nginx/certs:/etc/nginx/certs | ||
| - /var/run/docker.sock:/var/run/docker.sock:ro | ||
| - ./traefik/letsencrypt:/letsencrypt | ||
| - ./traefik/dynamic:/etc/traefik/dynamic:ro |
| @@ -0,0 +1 @@ | |||
| {} No newline at end of file | |||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.