Container: - Dockerfile → Containerfile; drop gosu, entrypoint, PUID/PGID user-switching - HOME=/config so Path.home()/.aws resolves to runtime-mounted credentials - docker-compose.yml → compose.yml with userns_mode: keep-id for Podman rootless - .dockerignore → .containerignore - boto3 unpinned from 1.34.0 to >=1.34.0 CI: - Remove Woodpecker (.woodpecker.yml, .woodpecker/) - Add Forgejo Actions (.forgejo/workflows/ci.yml, publish.yml) - CI: syntax check, security scan, container lint (hadolint), build test - Publish: build and push to Quay.io on main push and version tags Cleanup: - Remove entrypoint.sh (no longer needed) - Remove scripts/build-and-push.sh and PUBLISHING.md (superseded by CI) - All docker → podman command references updated Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
18 lines
512 B
YAML
18 lines
512 B
YAML
# Uses a local directory for data storage instead of a named volume.
|
|
# Usage: podman-compose -f docker-compose.local.yml up --build
|
|
|
|
services:
|
|
sgo:
|
|
build: .
|
|
container_name: sgo
|
|
ports:
|
|
- "${SGO_PORT:-5000}:5000"
|
|
userns_mode: keep-id
|
|
volumes:
|
|
- ${AWS_CONFIG_PATH:-${HOME}/.aws}:/config/.aws:ro,z
|
|
- ${DATA_PATH:-./data}:/app/data
|
|
environment:
|
|
- DEBUG=${DEBUG:-false}
|
|
- FLASK_ENV=${FLASK_ENV:-production}
|
|
- PYTHONUNBUFFERED=1
|
|
restart: unless-stopped
|