92 lines
2.9 KiB
YAML
92 lines
2.9 KiB
YAML
# documentation: https://docs.azimutt.app/
|
|
# slogan: Next-Gen ERD: Design, Explore, Document and Analyze your database.
|
|
# tags: erd, entity-relationship diagram, database tool, database schema, diagram
|
|
# logo: svgs/azimutt.svg
|
|
# port: 4000
|
|
|
|
services:
|
|
postgres:
|
|
image: postgres:15
|
|
environment:
|
|
- POSTGRES_PASSWORD=$SERVICE_PASSWORD_POSTGRE
|
|
- POSTGRES_USER=$SERVICE_USER_POSTGRE
|
|
- POSTGRES_DB=azimutt
|
|
volumes:
|
|
- azimutt-postgres-data:/var/lib/postgresql/data
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "pg_isready -U $SERVICE_USER_POSTGRESQL"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
|
|
minio:
|
|
image: minio/minio:latest
|
|
command: server /data --console-address ":9001"
|
|
environment:
|
|
- SERVICE_FQDN_MINIO_9001
|
|
- MINIO_SERVER_URL=$SERVICE_FQDN_MINIO_9001
|
|
- MINIO_BROWSER_REDIRECT_URL=$SERVICE_FQDN_MINIO_9001
|
|
- MINIO_ROOT_USER=$SERVICE_USER_MINIO
|
|
- MINIO_ROOT_PASSWORD=$SERVICE_PASSWORD_MINIO
|
|
volumes:
|
|
- azimutt-minio-data:/data
|
|
healthcheck:
|
|
test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
|
|
interval: 30s
|
|
timeout: 20s
|
|
retries: 3
|
|
|
|
createbuckets:
|
|
image: minio/mc:latest
|
|
depends_on:
|
|
minio:
|
|
condition: service_healthy
|
|
entrypoint: >
|
|
/bin/sh -c "
|
|
/usr/bin/mc config host add myminio http://minio:9000 $SERVICE_USER_MINIO $SERVICE_PASSWORD_MINIO;
|
|
/usr/bin/mc mb -p myminio/azimutt;
|
|
/usr/bin/mc policy download myminio/azimutt;
|
|
exit 0;
|
|
"
|
|
|
|
smtp:
|
|
image: bytemark/smtp:latest
|
|
platform: linux/amd64
|
|
environment:
|
|
- SERVICE_FQDN_SMTP
|
|
- RELAY_HOST=$SERVICE_FQDN_SMTP
|
|
- RELAY_PORT=${RELAY_PORT:-587}
|
|
- RELAY_USERNAME=$SERVICE_EMAIL_SMTP
|
|
- RELAY_PASSWORD=$SERVICE_PASSWORD_SMTP
|
|
|
|
backend:
|
|
container_name: azimutt-backend
|
|
platform: linux/amd64
|
|
image: ghcr.io/azimuttapp/azimutt:main
|
|
depends_on:
|
|
postgres:
|
|
condition: service_healthy
|
|
minio:
|
|
condition: service_healthy
|
|
environment:
|
|
- SERVICE_FQDN_AZIMUTT_4000
|
|
- PHX_SERVER=true
|
|
- PHX_HOST=$SERVICE_FQDN_AZIMUTT_4000
|
|
- PORT=${PORT:-4000}
|
|
- DATABASE_URL=ecto://$SERVICE_USER_POSTGRESQL:$SERVICE_PASSWORD_POSTGRESQL@postgres/azimutt
|
|
- SECRET_KEY_BASE=$SERVICE_BASE64_64_AZIMUTT
|
|
- FILE_STORAGE_ADAPTER=${FILE_STORAGE_ADAPTER:-s3}
|
|
- S3_BUCKET=${S3_BUCKET:-azimutt}
|
|
- S3_HOST=${S3_HOST:-minio}
|
|
- S3_KEY_ID=${S3_KEY_ID:-minio}
|
|
- S3_KEY_SECRET=${S3_KEY_SECRET:-minio}
|
|
- AUTH_PASSWORD=${AUTH_PASSWORD:-true}
|
|
- SKIP_ONBOARDING_FUNNEL=${SKIP_ONBOARDING_FUNNEL:-true}
|
|
- SKIP_EMAIL_CONFIRMATION=${SKIP_EMAIL_CONFIRMATION:-true}
|
|
- PUBLIC_SITE=${PUBLIC_SITE:-false}
|
|
- EMAIL_ADAPTER=${EMAIL_ADAPTER:-smtp}
|
|
- SMTP_RELAY=$SERVICE_FQDN_SMTP
|
|
- SMTP_USERNAME=$SERVICE_EMAIL_SMTP
|
|
- SMTP_PASSWORD=$SERVICE_PASSWORD_SMTP
|
|
- SMTP_PORT=${SMTP_PORT:-587}
|