58 lines
1.7 KiB
Plaintext
58 lines
1.7 KiB
Plaintext
services:
|
|
keywarden-nginx:
|
|
image: nginx:alpine
|
|
container_name: keywarden-nginx
|
|
restart: unless-stopped
|
|
volumes:
|
|
- ${DOCKERDIR}/nginx/configs/nginx.conf:/etc/nginx/nginx.conf:ro
|
|
- ${DOCKERDIR}/nginx/configs/sites:/etc/nginx/conf.d/
|
|
- ${DOCKERDIR}/nginx/certs/:/certs/
|
|
- ${DOCKERDIR}/nginx/webdir/:/var/www/
|
|
- ${DOCKERDIR}/nginx/logs:/var/log/nginx/
|
|
ports:
|
|
- "443:443"
|
|
|
|
keywarden-valkey:
|
|
image: valkey/valkey:latest
|
|
restart: unless-stopped
|
|
container_name: keywarden-valkey
|
|
environment:
|
|
- ALLOW_EMPTY_PASSWORD=yes
|
|
|
|
keywarden-db:
|
|
image: postgres:17-alpine
|
|
container_name: keywarden-db
|
|
environment:
|
|
POSTGRES_PASSWORD: ${KEYWARDEN_POSTGRES_PASSWORD:-postgres}
|
|
POSTGRES_DB: ${KEYWARDEN_POSTGRES_DB:-keywarden}
|
|
POSTGRES_USER: ${KEYWARDEN_POSTGRES_USER:-keywarden}
|
|
POSTGRES_PORT: ${KEYWARDEN_POSTGRES_PORT:-5432}
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "pg_isready -U keywarden -d keywarden"]
|
|
interval: 5s
|
|
timeout: 5s
|
|
retries: 20
|
|
volumes:
|
|
- "pgdata:/var/lib/postgresql/data"
|
|
|
|
keywarden:
|
|
image: git.ntbx.io/boris/keywarden:latest
|
|
container_name: keywarden
|
|
command: sh ./entrypoint.sh
|
|
ports:
|
|
- "8000:80"
|
|
depends_on:
|
|
- keywarden-db
|
|
- keywarden-valkey
|
|
environment:
|
|
- DJANGO_SETTINGS_MODULE=keywarden.settings.dev
|
|
- PYTHONPATH=/app
|
|
- DJANGO_SUPERUSER_USERNAME=${DJANGO_SUPERUSER_USERNAME}
|
|
- DJANGO_SUPERUSER_EMAIL=${DJANGO_SUPERUSER_EMAIL}
|
|
- DJANGO_SUPERUSER_PASSWORD=${DJANGO_SUPERUSER_PASSWORD}
|
|
- KEYWARDEN_AUTH_MODE=${KEYWARDEN_AUTH_MODE:-hybrid}
|
|
env_file:
|
|
- .env
|
|
|
|
volumes:
|
|
pgdata: |