inital commit
This commit is contained in:
78
compose.yml
Normal file
78
compose.yml
Normal file
@@ -0,0 +1,78 @@
|
||||
services:
|
||||
api:
|
||||
build:
|
||||
context: ./server
|
||||
dockerfile: Dockerfile
|
||||
environment:
|
||||
APP_ROLE: api
|
||||
APP_ENV: ${APP_ENV:-dev}
|
||||
APP_HOST: ${APP_HOST:-0.0.0.0}
|
||||
APP_PORT: ${APP_PORT:-8000}
|
||||
CORS_ORIGINS: ${CORS_ORIGINS:-http://localhost:5173,http://127.0.0.1:5173,http://localhost:8080}
|
||||
|
||||
DATABASE_URL: ${DATABASE_URL:-postgresql+psycopg://multimailer:multimailer@postgres:5432/multimailer}
|
||||
REDIS_URL: ${REDIS_URL:-redis://redis:6379/0}
|
||||
|
||||
S3_ENDPOINT_URL: ${S3_ENDPOINT_URL:-http://garage:3900}
|
||||
S3_REGION: ${S3_REGION:-garage}
|
||||
S3_ACCESS_KEY_ID: ${S3_ACCESS_KEY_ID:-GKmultimailerdev0000000000000000}
|
||||
S3_SECRET_ACCESS_KEY: ${S3_SECRET_ACCESS_KEY:-multimailer-dev-secret-change-me}
|
||||
S3_BUCKET: ${S3_BUCKET:-attachments}
|
||||
|
||||
MASTER_KEY_B64: ${MASTER_KEY_B64:-}
|
||||
|
||||
MAX_UPLOAD_MB: ${MAX_UPLOAD_MB:-50}
|
||||
MAX_ATTACHMENTS_PER_JOB: ${MAX_ATTACHMENTS_PER_JOB:-50}
|
||||
DEFAULT_SEND_RATE_PER_MIN: ${DEFAULT_SEND_RATE_PER_MIN:-30}
|
||||
DEFAULT_CONCURRENCY: ${DEFAULT_CONCURRENCY:-2}
|
||||
ports:
|
||||
- "${API_PUBLISHED_PORT:-8000}:8000"
|
||||
networks:
|
||||
- app
|
||||
healthcheck:
|
||||
test: ["CMD", "python", "-c", "import urllib.request; urllib.request.urlopen('http://localhost:8000/health').read()"]
|
||||
interval: 10s
|
||||
timeout: 3s
|
||||
retries: 10
|
||||
|
||||
worker:
|
||||
build:
|
||||
context: ./server
|
||||
dockerfile: Dockerfile
|
||||
environment:
|
||||
APP_ROLE: worker
|
||||
APP_ENV: ${APP_ENV:-dev}
|
||||
|
||||
DATABASE_URL: ${DATABASE_URL:-postgresql+psycopg://multimailer:multimailer@postgres:5432/multimailer}
|
||||
REDIS_URL: ${REDIS_URL:-redis://redis:6379/0}
|
||||
|
||||
S3_ENDPOINT_URL: ${S3_ENDPOINT_URL:-http://garage:3900}
|
||||
S3_REGION: ${S3_REGION:-garage}
|
||||
S3_ACCESS_KEY_ID: ${S3_ACCESS_KEY_ID:-GKmultimailerdev0000000000000000}
|
||||
S3_SECRET_ACCESS_KEY: ${S3_SECRET_ACCESS_KEY:-multimailer-dev-secret-change-me}
|
||||
S3_BUCKET: ${S3_BUCKET:-attachments}
|
||||
|
||||
MASTER_KEY_B64: ${MASTER_KEY_B64:-}
|
||||
|
||||
CELERY_QUEUES: ${CELERY_QUEUES:-send_email,append_sent,default}
|
||||
CELERY_CONCURRENCY: ${CELERY_CONCURRENCY:-4}
|
||||
CELERY_PREFETCH_MULTIPLIER: ${CELERY_PREFETCH_MULTIPLIER:-1}
|
||||
CELERY_MAX_TASKS_PER_CHILD: ${CELERY_MAX_TASKS_PER_CHILD:-200}
|
||||
CELERY_LOGLEVEL: ${CELERY_LOGLEVEL:-INFO}
|
||||
networks:
|
||||
- app
|
||||
|
||||
webui:
|
||||
build:
|
||||
context: ./webui
|
||||
dockerfile: Dockerfile
|
||||
args:
|
||||
VITE_API_BASE_URL: ${VITE_API_BASE_URL:-/api/v1}
|
||||
ports:
|
||||
- "${WEBUI_PUBLISHED_PORT:-5173}:80"
|
||||
networks:
|
||||
- app
|
||||
|
||||
networks:
|
||||
app:
|
||||
name: ${COMPOSE_PROJECT_NAME:-multimailer}_app
|
||||
Reference in New Issue
Block a user