Docker
The easiest way to use Birder is using the provided compose file:
$ docker compose -f compose.yml up
Content
x-env: &env
environment:
- DEBUG=false
- ALLOWED_HOSTS=*
- CSRF_COOKIE_SECURE=False
- CSRF_TRUSTED_ORIGINS=http://localhost:8000
- SECRET_KEY=sensitive-secret-key
- CACHE_URL=redis://redis/1
- CRYPT_SALT_KEYS=123
- CRYPT_KEYS=123
- VALKEY_URL=redis://redis/2
- POSTGRES_PASSWORD=password
- POSTGRES_DB=birder
- POSTGRES_USER=postgres
- POSTGRES_HOST_AUTH_METHOD=trust
- DATABASE_URL=postgres://postgres:password@db:5432/birder
- ADMIN_EMAIL=admin@example.com
- ADMIN_PASSWORD=password
- GOOGLE_CLIENT_ID=
- GOOGLE_CLIENT_SECRET=
services:
birder:
image: os4d/birder:2.0rc2.dev2
<<: [*env]
ports:
- 8000:8000
platform: linux/amd64
command: "run"
healthcheck:
test: [ "CMD", "curl", "-f", "http://localhost:8000/healthcheck" ]
interval: 10s
timeout: 5s
retries: 5
depends_on:
- db
- redis
db:
image: postgres:15
<<: [*env]
restart: always
healthcheck:
test: [ "CMD", "pg_isready", "-U", "db", "-d", "birder" ]
start_period: 5s
start_interval: 1s
interval: 5s
timeout: 4s
retries: 5
redis:
image: redis
<<: [*env]
restart: always