# BMC Hub - Quick Production Setup ## πŸš€ Hurtig Start (TL;DR) ```bash # 1. PΓ₯ din Mac - tag en release cd /Users/christianthomas/DEV/bmc_hub_dev git tag v1.0.0 && git push origin v1.0.0 # 2. PΓ₯ production server mkdir -p /srv/podman/bmc_hub_v1.0 && cd /srv/podman/bmc_hub_v1.0 # 3. Download setup script curl https://raw.githubusercontent.com/ct/bmc_hub/v1.0.0/scripts/deploy_production.sh -o setup.sh chmod +x setup.sh # 4. Opret .env (brug template nedenfor) nano .env # 5. KΓΈr deployment ./setup.sh # 6. Start services podman-compose up -d --build # 7. Verificer curl http://localhost:8000/health ``` ## πŸ“‹ Minimal .env Template ```bash # Version RELEASE_VERSION=v1.0.0 # Gitea server GITEA_URL=https://g.bmcnetworks.dk # Gitea (opret token pΓ₯ https://g.bmcnetworks.dk/user/settings/applications) GITHUB_TOKEN=glpat-xxxxxxxxxxxxx GITHUB_REPO=ct/bmc_hub # Database (SKIFT PASSWORD!) POSTGRES_USER=bmc_hub_prod POSTGRES_PASSWORD=din_stΓ¦rke_password_her POSTGRES_DB=bmc_hub_prod DATABASE_URL=postgresql://bmc_hub_prod:din_stΓ¦rke_password_her@postgres:5432/bmc_hub_prod # Security (generer med: python3 -c "import secrets; print(secrets.token_urlsafe(32))") SECRET_KEY=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx # API API_PORT=8000 CORS_ORIGINS=https://yourdomain.com # Safety (BEHOLD true!) ECONOMIC_READ_ONLY=true ECONOMIC_DRY_RUN=true ``` ## πŸ”„ Opdater til Ny Version ```bash cd /srv/podman/bmc_hub_v1.0 # Γ†ndr version i .env nano .env # RELEASE_VERSION=v1.1.0 # Rebuild podman-compose down podman-compose up -d --build # Check podman-compose logs -f api ``` ## πŸ“– Fuld Dokumentation Se [PRODUCTION_DEPLOYMENT.md](PRODUCTION_DEPLOYMENT.md) for detaljeret guide. ## πŸ†˜ Problemer? ```bash # Check logs podman-compose logs -f # Check containers podman ps -a # Restart podman-compose restart # Start forfra podman-compose down -v podman-compose up -d --build ``` ## πŸ“ Struktur pΓ₯ Production Server ``` /srv/podman/bmc_hub_v1.0/ β”œβ”€β”€ .env # Din konfiguration (opret selv) β”œβ”€β”€ docker-compose.yml # Downloaded fra Gitea β”œβ”€β”€ Dockerfile # Downloaded fra Gitea β”œβ”€β”€ requirements.txt # Downloaded fra Gitea β”œβ”€β”€ migrations/ # SQL migrations β”‚ └── init.sql β”œβ”€β”€ logs/ # Application logs β”œβ”€β”€ uploads/ # Uploaded files └── data/ # Application data └── invoice_templates/ ``` **VIGTIGT:** Kun disse filer downloades til serveren. Al application kode hentes automatisk af Docker/Podman fra Gitea release nΓ₯r containeren bygges.