Files
event-uploader/deploy/README.md
bert.hausmans b333198d7e Add Docker build/push and Dockge deploy workflow
- Add api/admin/upload Dockerfiles and .dockerignore
- Add deploy/docker-compose.yml (ports 3001-3004) and deploy/README.md
- Add scripts/docker-build-push.sh for Gitea registry push
- Add Gitea/SSH scripts and Google Drive controller updates

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-03 13:36:11 +01:00

2.6 KiB
Raw Blame History

Deploy event-uploader to Dockge

Production stack: images from Gitea registry only. Use from Dockge on the home server (10.0.10.189:5001).

Build and push images

Build and upload images to Giteas container registry (10.0.10.205:3000) from your dev machine so Dockge can pull them.

  1. One-time: Allow HTTP registry and log in:
    • Docker Desktop (Mac): Settings → Docker Engine → add "insecure-registries": ["10.0.10.205:3000"], Apply.
    • Run: docker login 10.0.10.205:3000 (username: bert.hausmans, password: Gitea password or a personal access token with package read/write).
  2. Each release: From the project root:
    • ./scripts/docker-build-push.sh 1.0.0 (or any version; omit to use latest or git describe).
    • Or manually: set VERSION=1.0.0, REGISTRY=10.0.10.205:3000, OWNER=bert.hausmans, then docker build -t $REGISTRY/$OWNER/event-uploader-api:$VERSION ./api (and same for admin, upload), then docker push for each.

After pushing, deploy on the server: set TAG=1.0.0 in the stack .env, then in Dockge use Pull and Redeploy.

Ports (3000 range to avoid conflicts)

Service Host port Container URL (example)
API 3001 8000 http://10.0.10.189:3001
Admin 3002 80 http://10.0.10.189:3002
Upload 3003 80 http://10.0.10.189:3003
MySQL 3004 3306 (internal; use 3004 only for direct DB access)

One-time setup in Dockge

  1. Add stack: point Dockge at this repos deploy/ folder (or paste docker-compose.yml).
  2. Create .env in the stack directory (or use Dockges env) with at least:
    • TAG=latest (or e.g. 1.0.0)
    • DB_PASSWORD=...
    • DB_DATABASE=event_uploader
    • APP_KEY=... (Laravel php artisan key:generate)
    • APP_URL=http://10.0.10.189:3001 (or your public URL)
    • SESSION_DOMAIN=10.0.10.189 (or your domain)
    • SANCTUM_STATEFUL_DOMAINS=10.0.10.189:3002,10.0.10.189:3003
    • Google OAuth if used: GOOGLE_CLIENT_ID, GOOGLE_CLIENT_SECRET, GOOGLE_REDIRECT_URI
  3. Ensure Docker on the server has 10.0.10.205:3000 in insecure-registries and run docker login 10.0.10.205:3000.
  4. First deploy: Pull, then Start (or docker compose -f deploy/docker-compose.yml pull && docker compose -f deploy/docker-compose.yml up -d).

Deploy new version

  • In Dockge: open the stack → Pull (to fetch new images from Gitea) → Redeploy (or Stop + Start).
  • Or on the server: set TAG=1.0.0 in .env, then docker compose pull && docker compose up -d.