# Psalmbord Online ## Run with Docker Compose This project includes a `Dockerfile` + `docker-compose.yml` to run the Flask app behind gunicorn. ### Configure environment (optional) Copy the example env file: ```bash cp .env.example .env ``` ### Start ```bash docker compose up -d --build ``` Open: - http://localhost:5000 (or `WEB_PORT`) ### Persisted data Docker compose bind-mounts the following so data survives container rebuilds/recreates: - `./instance/` -> SQLite database file (stored at `instance/liturgie.db`) - `./static/uploads/` -> uploaded backgrounds/logos ### Default admin user On startup, `init_db.py` ensures DB/tables exist and creates an admin user **only if it does not already exist**. Defaults: - Username: `admin` - Password: `admin` Override via `.env`: ```env ADMIN_USERNAME=admin ADMIN_PASSWORD=change-me ``` ## Release / publish (git + docker push) This repo includes helper scripts that: 1. Prompt for a version (e.g. `1.2.3`) 2. Create a git commit with message `Version ` 3. Push to: `https://git.alphen.cloud/bramval/PsalmbordOnlineCE` 4. Build + push Docker image to: - `git.alphen.cloud/bramval/psalmbordonlinece:` - `git.alphen.cloud/bramval/psalmbordonlinece:latest` ### Recommended (cross-platform Python) ```bash python release.py ``` ### Windows (PowerShell) ```powershell ./release.ps1 ``` ### Linux / macOS (bash) ```bash chmod +x ./release.sh ./release.sh ``` If Docker push fails due to authentication, run: ```bash docker login git.alphen.cloud ```