|
version: '3.8' |
|
x-logging: &x-logging |
|
logging: |
|
driver: json-file |
|
options: |
|
max-file: '5' |
|
max-size: 10m |
|
services: |
|
appwrite: |
|
image: 'appwrite/appwrite:1.7.4' |
|
container_name: appwrite |
|
<<: *x-logging |
|
restart: unless-stopped |
|
networks: |
|
- appwrite-network |
|
- coolify |
|
labels: |
|
- traefik.enable=true |
|
- traefik.docker.network=coolify |
|
- 'traefik.http.routers.appwrite-main-https.rule=Host(`${_APP_DOMAIN}`)' |
|
- traefik.http.routers.appwrite-main-https.entrypoints=https |
|
- traefik.http.routers.appwrite-main-https.tls.certresolver=letsencrypt |
|
- traefik.http.routers.appwrite-main-https.service=appwrite-main-svc |
|
- 'traefik.http.routers.appwrite-wildcard-https.rule=HostRegexp(`{subdomain:[^.]+}.${_APP_DOMAIN_SITES}`) && !Host(`${_APP_DOMAIN}`)' |
|
- traefik.http.routers.appwrite-wildcard-https.entrypoints=https |
|
- traefik.http.routers.appwrite-wildcard-https.tls.certresolver=letsencrypt |
|
- traefik.http.routers.appwrite-wildcard-https.service=appwrite-main-svc |
|
- traefik.http.services.appwrite-main-svc.loadbalancer.server.port=80 |
|
- 'traefik.http.routers.appwrite-main-http.rule=Host(`${_APP_DOMAIN}`)' |
|
- traefik.http.routers.appwrite-main-http.entrypoints=http |
|
- traefik.http.routers.appwrite-main-http.middlewares=redirect-to-https |
|
volumes: |
|
- 'appwrite-uploads:/storage/uploads:rw' |
|
- 'appwrite-imports:/storage/imports:rw' |
|
- 'appwrite-cache:/storage/cache:rw' |
|
- 'appwrite-config:/storage/config:rw' |
|
- 'appwrite-certificates:/storage/certificates:rw' |
|
- 'appwrite-functions:/storage/functions:rw' |
|
- 'appwrite-sites:/storage/sites:rw' |
|
- 'appwrite-builds:/storage/builds:rw' |
|
depends_on: |
|
- appwrite-mariadb |
|
- appwrite-redis |
|
environment: |
|
- _APP_ENV |
|
- _APP_DOMAIN |
|
- _APP_DOMAIN_FUNCTIONS |
|
- _APP_DOMAIN_SITES |
|
- _APP_OPENSSL_KEY_V1 |
|
- _APP_WORKER_PER_CORE |
|
- _APP_LOCALE |
|
- _APP_COMPRESSION_MIN_SIZE_BYTES |
|
- _APP_CONSOLE_WHITELIST_ROOT |
|
- _APP_CONSOLE_WHITELIST_EMAILS |
|
- _APP_CONSOLE_SESSION_ALERTS |
|
- _APP_CONSOLE_WHITELIST_IPS |
|
- _APP_CONSOLE_HOSTNAMES |
|
- _APP_SYSTEM_EMAIL_NAME |
|
- _APP_SYSTEM_EMAIL_ADDRESS |
|
- _APP_EMAIL_SECURITY |
|
- _APP_SYSTEM_RESPONSE_FORMAT |
|
- _APP_OPTIONS_ABUSE |
|
- _APP_OPTIONS_ROUTER_PROTECTION |
|
- _APP_OPTIONS_FORCE_HTTPS |
|
- _APP_OPTIONS_ROUTER_FORCE_HTTPS |
|
- _APP_DOMAIN_TARGET_CNAME |
|
- _APP_DOMAIN_TARGET_AAAA |
|
- _APP_DOMAIN_TARGET_A |
|
- _APP_REDIS_HOST |
|
- _APP_REDIS_PORT |
|
- _APP_REDIS_USER |
|
- _APP_REDIS_PASS |
|
- _APP_DB_HOST |
|
- _APP_DB_PORT |
|
- _APP_DB_SCHEMA |
|
- _APP_DB_USER |
|
- _APP_DB_PASS |
|
- _APP_SMTP_HOST |
|
- _APP_SMTP_PORT |
|
- _APP_SMTP_SECURE |
|
- _APP_SMTP_USERNAME |
|
- _APP_SMTP_PASSWORD |
|
- _APP_USAGE_STATS |
|
- _APP_STORAGE_LIMIT |
|
- _APP_STORAGE_PREVIEW_LIMIT |
|
- _APP_STORAGE_ANTIVIRUS |
|
- _APP_STORAGE_ANTIVIRUS_HOST |
|
- _APP_STORAGE_ANTIVIRUS_PORT |
|
- _APP_STORAGE_DEVICE |
|
- _APP_STORAGE_S3_ACCESS_KEY |
|
- _APP_STORAGE_S3_SECRET |
|
- _APP_STORAGE_S3_REGION |
|
- _APP_STORAGE_S3_BUCKET |
|
- _APP_STORAGE_S3_ENDPOINT |
|
- _APP_STORAGE_DO_SPACES_ACCESS_KEY |
|
- _APP_STORAGE_DO_SPACES_SECRET |
|
- _APP_STORAGE_DO_SPACES_REGION |
|
- _APP_STORAGE_DO_SPACES_BUCKET |
|
- _APP_STORAGE_BACKBLAZE_ACCESS_KEY |
|
- _APP_STORAGE_BACKBLAZE_SECRET |
|
- _APP_STORAGE_BACKBLAZE_REGION |
|
- _APP_STORAGE_BACKBLAZE_BUCKET |
|
- _APP_STORAGE_LINODE_ACCESS_KEY |
|
- _APP_STORAGE_LINODE_SECRET |
|
- _APP_STORAGE_LINODE_REGION |
|
- _APP_STORAGE_LINODE_BUCKET |
|
- _APP_STORAGE_WASABI_ACCESS_KEY |
|
- _APP_STORAGE_WASABI_SECRET |
|
- _APP_STORAGE_WASABI_REGION |
|
- _APP_STORAGE_WASABI_BUCKET |
|
- _APP_COMPUTE_SIZE_LIMIT |
|
- _APP_FUNCTIONS_TIMEOUT |
|
- _APP_SITES_TIMEOUT |
|
- _APP_COMPUTE_BUILD_TIMEOUT |
|
- _APP_COMPUTE_CPUS |
|
- _APP_COMPUTE_MEMORY |
|
- _APP_FUNCTIONS_RUNTIMES |
|
- _APP_SITES_RUNTIMES |
|
- _APP_EXECUTOR_SECRET |
|
- _APP_EXECUTOR_HOST |
|
- _APP_LOGGING_CONFIG |
|
- _APP_MAINTENANCE_INTERVAL |
|
- _APP_MAINTENANCE_DELAY |
|
- _APP_MAINTENANCE_START_TIME |
|
- _APP_MAINTENANCE_RETENTION_EXECUTION |
|
- _APP_MAINTENANCE_RETENTION_CACHE |
|
- _APP_MAINTENANCE_RETENTION_ABUSE |
|
- _APP_MAINTENANCE_RETENTION_AUDIT |
|
- _APP_MAINTENANCE_RETENTION_AUDIT_CONSOLE |
|
- _APP_MAINTENANCE_RETENTION_USAGE_HOURLY |
|
- _APP_MAINTENANCE_RETENTION_SCHEDULES |
|
- _APP_SMS_PROVIDER |
|
- _APP_SMS_FROM |
|
- _APP_GRAPHQL_MAX_BATCH_SIZE |
|
- _APP_GRAPHQL_MAX_COMPLEXITY |
|
- _APP_GRAPHQL_MAX_DEPTH |
|
- _APP_VCS_GITHUB_APP_NAME |
|
- _APP_VCS_GITHUB_PRIVATE_KEY |
|
- _APP_VCS_GITHUB_APP_ID |
|
- _APP_VCS_GITHUB_WEBHOOK_SECRET |
|
- _APP_VCS_GITHUB_CLIENT_SECRET |
|
- _APP_VCS_GITHUB_CLIENT_ID |
|
- _APP_MIGRATIONS_FIREBASE_CLIENT_ID |
|
- _APP_MIGRATIONS_FIREBASE_CLIENT_SECRET |
|
- _APP_ASSISTANT_OPENAI_API_KEY |
|
- _APP_SYSTEM_SECURITY_EMAIL_ADDRESS |
|
- _APP_EMAIL_CERTIFICATES |
|
- _APP_COMPUTE_INACTIVE_THRESHOLD |
|
- _APP_COMPUTE_MAINTENANCE_INTERVAL |
|
- _APP_COMPUTE_RUNTIMES_NETWORK |
|
- _APP_DOCKER_HUB_USERNAME |
|
- _APP_DOCKER_HUB_PASSWORD |
|
- _APP_DATABASE_SHARED_TABLES |
|
- _APP_STATS_RESOURCES_INTERVAL |
|
- _APP_USAGE_AGGREGATION_INTERVAL |
|
appwrite-console: |
|
image: 'appwrite/console:6.0.41' |
|
container_name: appwrite-console |
|
<<: *x-logging |
|
restart: unless-stopped |
|
networks: |
|
- appwrite-network |
|
- coolify |
|
labels: |
|
- traefik.enable=true |
|
- traefik.docker.network=coolify |
|
- 'traefik.http.routers.appwrite-console-https.rule=Host(`${_APP_DOMAIN}`) && PathPrefix(`/console`)' |
|
- traefik.http.routers.appwrite-console-https.entrypoints=https |
|
- traefik.http.routers.appwrite-console-https.tls.certresolver=letsencrypt |
|
- traefik.http.routers.appwrite-console-https.service=appwrite-console-svc |
|
- traefik.http.services.appwrite-console-svc.loadbalancer.server.port=80 |
|
- 'traefik.http.routers.appwrite-console-http.rule=Host(`${_APP_DOMAIN}`) && PathPrefix(`/console`)' |
|
- traefik.http.routers.appwrite-console-http.entrypoints=http |
|
- traefik.http.routers.appwrite-console-http.middlewares=redirect-to-https |
|
appwrite-realtime: |
|
image: 'appwrite/appwrite:1.7.4' |
|
entrypoint: realtime |
|
container_name: appwrite-realtime |
|
<<: *x-logging |
|
restart: unless-stopped |
|
networks: |
|
- appwrite-network |
|
- coolify |
|
labels: |
|
- traefik.enable=true |
|
- traefik.docker.network=coolify |
|
- 'traefik.http.routers.appwrite-realtime-https.rule=Host(`${_APP_DOMAIN}`) && PathPrefix(`/v1/realtime`)' |
|
- traefik.http.routers.appwrite-realtime-https.entrypoints=https |
|
- traefik.http.routers.appwrite-realtime-https.tls.certresolver=letsencrypt |
|
- traefik.http.routers.appwrite-realtime-https.service=appwrite-realtime-svc |
|
- traefik.http.services.appwrite-realtime-svc.loadbalancer.server.port=80 |
|
- 'traefik.http.routers.appwrite-realtime-http.rule=Host(`${_APP_DOMAIN}`) && PathPrefix(`/v1/realtime`)' |
|
- traefik.http.routers.appwrite-realtime-http.entrypoints=http |
|
- traefik.http.routers.appwrite-realtime-http.middlewares=redirect-to-https |
|
depends_on: |
|
- appwrite-mariadb |
|
- appwrite-redis |
|
environment: |
|
- _APP_ENV |
|
- _APP_WORKER_PER_CORE |
|
- _APP_OPTIONS_ABUSE |
|
- _APP_OPTIONS_ROUTER_PROTECTION |
|
- _APP_OPENSSL_KEY_V1 |
|
- _APP_REDIS_HOST |
|
- _APP_REDIS_PORT |
|
- _APP_REDIS_USER |
|
- _APP_REDIS_PASS |
|
- _APP_DB_HOST |
|
- _APP_DB_PORT |
|
- _APP_DB_SCHEMA |
|
- _APP_DB_USER |
|
- _APP_DB_PASS |
|
- _APP_USAGE_STATS |
|
- _APP_LOGGING_CONFIG |
|
appwrite-worker-audits: |
|
image: 'appwrite/appwrite:1.7.4' |
|
entrypoint: worker-audits |
|
container_name: appwrite-worker-audits |
|
<<: *x-logging |
|
restart: unless-stopped |
|
networks: |
|
- appwrite-network |
|
depends_on: |
|
- appwrite-redis |
|
- appwrite-mariadb |
|
environment: |
|
- _APP_ENV |
|
- _APP_WORKER_PER_CORE |
|
- _APP_OPENSSL_KEY_V1 |
|
- _APP_REDIS_HOST |
|
- _APP_REDIS_PORT |
|
- _APP_REDIS_USER |
|
- _APP_REDIS_PASS |
|
- _APP_DB_HOST |
|
- _APP_DB_PORT |
|
- _APP_DB_SCHEMA |
|
- _APP_DB_USER |
|
- _APP_DB_PASS |
|
- _APP_LOGGING_CONFIG |
|
appwrite-worker-webhooks: |
|
image: 'appwrite/appwrite:1.7.4' |
|
entrypoint: worker-webhooks |
|
container_name: appwrite-worker-webhooks |
|
<<: *x-logging |
|
restart: unless-stopped |
|
networks: |
|
- appwrite-network |
|
depends_on: |
|
- appwrite-redis |
|
- appwrite-mariadb |
|
environment: |
|
- _APP_ENV |
|
- _APP_WORKER_PER_CORE |
|
- _APP_OPENSSL_KEY_V1 |
|
- _APP_EMAIL_SECURITY |
|
- _APP_SYSTEM_SECURITY_EMAIL_ADDRESS |
|
- _APP_DB_HOST |
|
- _APP_DB_PORT |
|
- _APP_DB_SCHEMA |
|
- _APP_DB_USER |
|
- _APP_DB_PASS |
|
- _APP_REDIS_HOST |
|
- _APP_REDIS_PORT |
|
- _APP_REDIS_USER |
|
- _APP_REDIS_PASS |
|
- _APP_LOGGING_CONFIG |
|
appwrite-worker-deletes: |
|
image: 'appwrite/appwrite:1.7.4' |
|
entrypoint: worker-deletes |
|
container_name: appwrite-worker-deletes |
|
<<: *x-logging |
|
restart: unless-stopped |
|
networks: |
|
- appwrite-network |
|
depends_on: |
|
- appwrite-redis |
|
- appwrite-mariadb |
|
volumes: |
|
- 'appwrite-uploads:/storage/uploads:rw' |
|
- 'appwrite-cache:/storage/cache:rw' |
|
- 'appwrite-functions:/storage/functions:rw' |
|
- 'appwrite-sites:/storage/sites:rw' |
|
- 'appwrite-builds:/storage/builds:rw' |
|
- 'appwrite-certificates:/storage/certificates:rw' |
|
environment: |
|
- _APP_ENV |
|
- _APP_WORKER_PER_CORE |
|
- _APP_OPENSSL_KEY_V1 |
|
- _APP_REDIS_HOST |
|
- _APP_REDIS_PORT |
|
- _APP_REDIS_USER |
|
- _APP_REDIS_PASS |
|
- _APP_DB_HOST |
|
- _APP_DB_PORT |
|
- _APP_DB_SCHEMA |
|
- _APP_DB_USER |
|
- _APP_DB_PASS |
|
- _APP_STORAGE_DEVICE |
|
- _APP_STORAGE_S3_ACCESS_KEY |
|
- _APP_STORAGE_S3_SECRET |
|
- _APP_STORAGE_S3_REGION |
|
- _APP_STORAGE_S3_BUCKET |
|
- _APP_STORAGE_S3_ENDPOINT |
|
- _APP_STORAGE_DO_SPACES_ACCESS_KEY |
|
- _APP_STORAGE_DO_SPACES_SECRET |
|
- _APP_STORAGE_DO_SPACES_REGION |
|
- _APP_STORAGE_DO_SPACES_BUCKET |
|
- _APP_STORAGE_BACKBLAZE_ACCESS_KEY |
|
- _APP_STORAGE_BACKBLAZE_SECRET |
|
- _APP_STORAGE_BACKBLAZE_REGION |
|
- _APP_STORAGE_BACKBLAZE_BUCKET |
|
- _APP_STORAGE_LINODE_ACCESS_KEY |
|
- _APP_STORAGE_LINODE_SECRET |
|
- _APP_STORAGE_LINODE_REGION |
|
- _APP_STORAGE_LINODE_BUCKET |
|
- _APP_STORAGE_WASABI_ACCESS_KEY |
|
- _APP_STORAGE_WASABI_SECRET |
|
- _APP_STORAGE_WASABI_REGION |
|
- _APP_STORAGE_WASABI_BUCKET |
|
- _APP_LOGGING_CONFIG |
|
- _APP_EXECUTOR_SECRET |
|
- _APP_EXECUTOR_HOST |
|
- _APP_MAINTENANCE_RETENTION_ABUSE |
|
- _APP_MAINTENANCE_RETENTION_AUDIT |
|
- _APP_MAINTENANCE_RETENTION_AUDIT_CONSOLE |
|
- _APP_MAINTENANCE_RETENTION_EXECUTION |
|
- _APP_SYSTEM_SECURITY_EMAIL_ADDRESS |
|
- _APP_EMAIL_CERTIFICATES |
|
appwrite-worker-databases: |
|
image: 'appwrite/appwrite:1.7.4' |
|
entrypoint: worker-databases |
|
container_name: appwrite-worker-databases |
|
<<: *x-logging |
|
restart: unless-stopped |
|
networks: |
|
- appwrite-network |
|
depends_on: |
|
- appwrite-redis |
|
- appwrite-mariadb |
|
environment: |
|
- _APP_ENV |
|
- _APP_WORKER_PER_CORE |
|
- _APP_OPENSSL_KEY_V1 |
|
- _APP_REDIS_HOST |
|
- _APP_REDIS_PORT |
|
- _APP_REDIS_USER |
|
- _APP_REDIS_PASS |
|
- _APP_DB_HOST |
|
- _APP_DB_PORT |
|
- _APP_DB_SCHEMA |
|
- _APP_DB_USER |
|
- _APP_DB_PASS |
|
- _APP_LOGGING_CONFIG |
|
appwrite-worker-builds: |
|
image: 'appwrite/appwrite:1.7.4' |
|
entrypoint: worker-builds |
|
container_name: appwrite-worker-builds |
|
<<: *x-logging |
|
restart: unless-stopped |
|
networks: |
|
- appwrite-network |
|
depends_on: |
|
- appwrite-redis |
|
- appwrite-mariadb |
|
volumes: |
|
- 'appwrite-functions:/storage/functions:rw' |
|
- 'appwrite-sites:/storage/sites:rw' |
|
- 'appwrite-builds:/storage/builds:rw' |
|
- 'appwrite-uploads:/storage/uploads:rw' |
|
environment: |
|
- _APP_ENV |
|
- _APP_WORKER_PER_CORE |
|
- _APP_OPENSSL_KEY_V1 |
|
- _APP_EXECUTOR_SECRET |
|
- _APP_EXECUTOR_HOST |
|
- _APP_REDIS_HOST |
|
- _APP_REDIS_PORT |
|
- _APP_REDIS_USER |
|
- _APP_REDIS_PASS |
|
- _APP_DB_HOST |
|
- _APP_DB_PORT |
|
- _APP_DB_SCHEMA |
|
- _APP_DB_USER |
|
- _APP_DB_PASS |
|
- _APP_LOGGING_CONFIG |
|
- _APP_VCS_GITHUB_APP_NAME |
|
- _APP_VCS_GITHUB_PRIVATE_KEY |
|
- _APP_VCS_GITHUB_APP_ID |
|
- _APP_FUNCTIONS_TIMEOUT |
|
- _APP_SITES_TIMEOUT |
|
- _APP_COMPUTE_BUILD_TIMEOUT |
|
- _APP_COMPUTE_CPUS |
|
- _APP_COMPUTE_MEMORY |
|
- _APP_COMPUTE_SIZE_LIMIT |
|
- _APP_OPTIONS_FORCE_HTTPS |
|
- _APP_OPTIONS_ROUTER_FORCE_HTTPS |
|
- _APP_DOMAIN |
|
- _APP_STORAGE_DEVICE |
|
- _APP_STORAGE_S3_ACCESS_KEY |
|
- _APP_STORAGE_S3_SECRET |
|
- _APP_STORAGE_S3_REGION |
|
- _APP_STORAGE_S3_BUCKET |
|
- _APP_STORAGE_S3_ENDPOINT |
|
- _APP_STORAGE_DO_SPACES_ACCESS_KEY |
|
- _APP_STORAGE_DO_SPACES_SECRET |
|
- _APP_STORAGE_DO_SPACES_REGION |
|
- _APP_STORAGE_DO_SPACES_BUCKET |
|
- _APP_STORAGE_BACKBLAZE_ACCESS_KEY |
|
- _APP_STORAGE_BACKBLAZE_SECRET |
|
- _APP_STORAGE_BACKBLAZE_REGION |
|
- _APP_STORAGE_BACKBLAZE_BUCKET |
|
- _APP_STORAGE_LINODE_ACCESS_KEY |
|
- _APP_STORAGE_LINODE_SECRET |
|
- _APP_STORAGE_LINODE_REGION |
|
- _APP_STORAGE_LINODE_BUCKET |
|
- _APP_STORAGE_WASABI_ACCESS_KEY |
|
- _APP_STORAGE_WASABI_SECRET |
|
- _APP_STORAGE_WASABI_REGION |
|
- _APP_STORAGE_WASABI_BUCKET |
|
- _APP_DOMAIN_SITES |
|
appwrite-worker-certificates: |
|
image: 'appwrite/appwrite:1.7.4' |
|
entrypoint: worker-certificates |
|
container_name: appwrite-worker-certificates |
|
<<: *x-logging |
|
restart: unless-stopped |
|
networks: |
|
- appwrite-network |
|
depends_on: |
|
- appwrite-redis |
|
- appwrite-mariadb |
|
volumes: |
|
- 'appwrite-config:/storage/config:rw' |
|
- 'appwrite-certificates:/storage/certificates:rw' |
|
environment: |
|
- _APP_ENV |
|
- _APP_WORKER_PER_CORE |
|
- _APP_OPENSSL_KEY_V1 |
|
- _APP_DOMAIN |
|
- _APP_DOMAIN_TARGET_CNAME |
|
- _APP_DOMAIN_TARGET_AAAA |
|
- _APP_DOMAIN_TARGET_A |
|
- _APP_DOMAIN_FUNCTIONS |
|
- _APP_EMAIL_CERTIFICATES |
|
- _APP_REDIS_HOST |
|
- _APP_REDIS_PORT |
|
- _APP_REDIS_USER |
|
- _APP_REDIS_PASS |
|
- _APP_DB_HOST |
|
- _APP_DB_PORT |
|
- _APP_DB_SCHEMA |
|
- _APP_DB_USER |
|
- _APP_DB_PASS |
|
- _APP_LOGGING_CONFIG |
|
appwrite-worker-functions: |
|
image: 'appwrite/appwrite:1.7.4' |
|
entrypoint: worker-functions |
|
container_name: appwrite-worker-functions |
|
<<: *x-logging |
|
restart: unless-stopped |
|
networks: |
|
- appwrite-network |
|
depends_on: |
|
- appwrite-redis |
|
- appwrite-mariadb |
|
- openruntimes-executor |
|
environment: |
|
- _APP_ENV |
|
- _APP_WORKER_PER_CORE |
|
- _APP_OPENSSL_KEY_V1 |
|
- _APP_DOMAIN |
|
- _APP_OPTIONS_FORCE_HTTPS |
|
- _APP_REDIS_HOST |
|
- _APP_REDIS_PORT |
|
- _APP_REDIS_USER |
|
- _APP_REDIS_PASS |
|
- _APP_DB_HOST |
|
- _APP_DB_PORT |
|
- _APP_DB_SCHEMA |
|
- _APP_DB_USER |
|
- _APP_DB_PASS |
|
- _APP_FUNCTIONS_TIMEOUT |
|
- _APP_SITES_TIMEOUT |
|
- _APP_COMPUTE_BUILD_TIMEOUT |
|
- _APP_COMPUTE_CPUS |
|
- _APP_COMPUTE_MEMORY |
|
- _APP_EXECUTOR_SECRET |
|
- _APP_EXECUTOR_HOST |
|
- _APP_USAGE_STATS |
|
- _APP_DOCKER_HUB_USERNAME |
|
- _APP_DOCKER_HUB_PASSWORD |
|
- _APP_LOGGING_CONFIG |
|
appwrite-worker-mails: |
|
image: 'appwrite/appwrite:1.7.4' |
|
entrypoint: worker-mails |
|
container_name: appwrite-worker-mails |
|
<<: *x-logging |
|
restart: unless-stopped |
|
networks: |
|
- appwrite-network |
|
depends_on: |
|
- appwrite-redis |
|
environment: |
|
- _APP_ENV |
|
- _APP_WORKER_PER_CORE |
|
- _APP_OPENSSL_KEY_V1 |
|
- _APP_SYSTEM_EMAIL_NAME |
|
- _APP_SYSTEM_EMAIL_ADDRESS |
|
- _APP_DB_HOST |
|
- _APP_DB_PORT |
|
- _APP_DB_SCHEMA |
|
- _APP_DB_USER |
|
- _APP_DB_PASS |
|
- _APP_REDIS_HOST |
|
- _APP_REDIS_PORT |
|
- _APP_REDIS_USER |
|
- _APP_REDIS_PASS |
|
- _APP_SMTP_HOST |
|
- _APP_SMTP_PORT |
|
- _APP_SMTP_SECURE |
|
- _APP_SMTP_USERNAME |
|
- _APP_SMTP_PASSWORD |
|
- _APP_LOGGING_CONFIG |
|
- _APP_DOMAIN |
|
- _APP_OPTIONS_FORCE_HTTPS |
|
appwrite-worker-messaging: |
|
image: 'appwrite/appwrite:1.7.4' |
|
entrypoint: worker-messaging |
|
container_name: appwrite-worker-messaging |
|
<<: *x-logging |
|
restart: unless-stopped |
|
networks: |
|
- appwrite-network |
|
volumes: |
|
- 'appwrite-uploads:/storage/uploads:rw' |
|
depends_on: |
|
- appwrite-redis |
|
environment: |
|
- _APP_ENV |
|
- _APP_WORKER_PER_CORE |
|
- _APP_OPENSSL_KEY_V1 |
|
- _APP_REDIS_HOST |
|
- _APP_REDIS_PORT |
|
- _APP_REDIS_USER |
|
- _APP_REDIS_PASS |
|
- _APP_DB_HOST |
|
- _APP_DB_PORT |
|
- _APP_DB_SCHEMA |
|
- _APP_DB_USER |
|
- _APP_DB_PASS |
|
- _APP_LOGGING_CONFIG |
|
- _APP_SMS_FROM |
|
- _APP_SMS_PROVIDER |
|
- _APP_STORAGE_DEVICE |
|
- _APP_STORAGE_S3_ACCESS_KEY |
|
- _APP_STORAGE_S3_SECRET |
|
- _APP_STORAGE_S3_REGION |
|
- _APP_STORAGE_S3_BUCKET |
|
- _APP_STORAGE_S3_ENDPOINT |
|
- _APP_STORAGE_DO_SPACES_ACCESS_KEY |
|
- _APP_STORAGE_DO_SPACES_SECRET |
|
- _APP_STORAGE_DO_SPACES_REGION |
|
- _APP_STORAGE_DO_SPACES_BUCKET |
|
- _APP_STORAGE_BACKBLAZE_ACCESS_KEY |
|
- _APP_STORAGE_BACKBLAZE_SECRET |
|
- _APP_STORAGE_BACKBLAZE_REGION |
|
- _APP_STORAGE_BACKBLAZE_BUCKET |
|
- _APP_STORAGE_LINODE_ACCESS_KEY |
|
- _APP_STORAGE_LINODE_SECRET |
|
- _APP_STORAGE_LINODE_REGION |
|
- _APP_STORAGE_LINODE_BUCKET |
|
- _APP_STORAGE_WASABI_ACCESS_KEY |
|
- _APP_STORAGE_WASABI_SECRET |
|
- _APP_STORAGE_WASABI_REGION |
|
- _APP_STORAGE_WASABI_BUCKET |
|
appwrite-worker-migrations: |
|
image: 'appwrite/appwrite:1.7.4' |
|
entrypoint: worker-migrations |
|
container_name: appwrite-worker-migrations |
|
<<: *x-logging |
|
restart: unless-stopped |
|
networks: |
|
- appwrite-network |
|
volumes: |
|
- 'appwrite-imports:/storage/imports:rw' |
|
depends_on: |
|
- appwrite-mariadb |
|
environment: |
|
- _APP_ENV |
|
- _APP_WORKER_PER_CORE |
|
- _APP_OPENSSL_KEY_V1 |
|
- _APP_DOMAIN |
|
- _APP_DOMAIN_TARGET_CNAME |
|
- _APP_DOMAIN_TARGET_AAAA |
|
- _APP_DOMAIN_TARGET_A |
|
- _APP_EMAIL_SECURITY |
|
- _APP_REDIS_HOST |
|
- _APP_REDIS_PORT |
|
- _APP_REDIS_USER |
|
- _APP_REDIS_PASS |
|
- _APP_DB_HOST |
|
- _APP_DB_PORT |
|
- _APP_DB_SCHEMA |
|
- _APP_DB_USER |
|
- _APP_DB_PASS |
|
- _APP_LOGGING_CONFIG |
|
- _APP_MIGRATIONS_FIREBASE_CLIENT_ID |
|
- _APP_MIGRATIONS_FIREBASE_CLIENT_SECRET |
|
appwrite-task-maintenance: |
|
image: 'appwrite/appwrite:1.7.4' |
|
entrypoint: maintenance |
|
container_name: appwrite-task-maintenance |
|
<<: *x-logging |
|
restart: unless-stopped |
|
networks: |
|
- appwrite-network |
|
depends_on: |
|
- appwrite-redis |
|
environment: |
|
- _APP_ENV |
|
- _APP_WORKER_PER_CORE |
|
- _APP_DOMAIN |
|
- _APP_DOMAIN_TARGET_CNAME |
|
- _APP_DOMAIN_TARGET_AAAA |
|
- _APP_DOMAIN_TARGET_A |
|
- _APP_DOMAIN_FUNCTIONS |
|
- _APP_OPENSSL_KEY_V1 |
|
- _APP_REDIS_HOST |
|
- _APP_REDIS_PORT |
|
- _APP_REDIS_USER |
|
- _APP_REDIS_PASS |
|
- _APP_DB_HOST |
|
- _APP_DB_PORT |
|
- _APP_DB_SCHEMA |
|
- _APP_DB_USER |
|
- _APP_DB_PASS |
|
- _APP_MAINTENANCE_INTERVAL |
|
- _APP_MAINTENANCE_RETENTION_EXECUTION |
|
- _APP_MAINTENANCE_RETENTION_CACHE |
|
- _APP_MAINTENANCE_RETENTION_ABUSE |
|
- _APP_MAINTENANCE_RETENTION_AUDIT |
|
- _APP_MAINTENANCE_RETENTION_AUDIT_CONSOLE |
|
- _APP_MAINTENANCE_RETENTION_USAGE_HOURLY |
|
- _APP_MAINTENANCE_RETENTION_SCHEDULES |
|
appwrite-task-stats-resources: |
|
image: 'appwrite/appwrite:1.7.4' |
|
container_name: appwrite-task-stats-resources |
|
entrypoint: stats-resources |
|
<<: *x-logging |
|
restart: unless-stopped |
|
networks: |
|
- appwrite-network |
|
depends_on: |
|
- appwrite-redis |
|
- appwrite-mariadb |
|
environment: |
|
- _APP_ENV |
|
- _APP_WORKER_PER_CORE |
|
- _APP_OPENSSL_KEY_V1 |
|
- _APP_DB_HOST |
|
- _APP_DB_PORT |
|
- _APP_DB_SCHEMA |
|
- _APP_DB_USER |
|
- _APP_DB_PASS |
|
- _APP_REDIS_HOST |
|
- _APP_REDIS_PORT |
|
- _APP_REDIS_USER |
|
- _APP_REDIS_PASS |
|
- _APP_USAGE_STATS |
|
- _APP_LOGGING_CONFIG |
|
- _APP_DATABASE_SHARED_TABLES |
|
- _APP_STATS_RESOURCES_INTERVAL |
|
appwrite-worker-stats-resources: |
|
image: 'appwrite/appwrite:1.7.4' |
|
entrypoint: worker-stats-resources |
|
container_name: appwrite-worker-stats-resources |
|
<<: *x-logging |
|
restart: unless-stopped |
|
networks: |
|
- appwrite-network |
|
depends_on: |
|
- appwrite-redis |
|
- appwrite-mariadb |
|
environment: |
|
- _APP_ENV |
|
- _APP_WORKER_PER_CORE |
|
- _APP_OPENSSL_KEY_V1 |
|
- _APP_DB_HOST |
|
- _APP_DB_PORT |
|
- _APP_DB_SCHEMA |
|
- _APP_DB_USER |
|
- _APP_DB_PASS |
|
- _APP_REDIS_HOST |
|
- _APP_REDIS_PORT |
|
- _APP_REDIS_USER |
|
- _APP_REDIS_PASS |
|
- _APP_USAGE_STATS |
|
- _APP_LOGGING_CONFIG |
|
- _APP_STATS_RESOURCES_INTERVAL |
|
appwrite-worker-stats-usage: |
|
image: 'appwrite/appwrite:1.7.4' |
|
entrypoint: worker-stats-usage |
|
container_name: appwrite-worker-stats-usage |
|
<<: *x-logging |
|
restart: unless-stopped |
|
networks: |
|
- appwrite-network |
|
depends_on: |
|
- appwrite-redis |
|
- appwrite-mariadb |
|
environment: |
|
- _APP_ENV |
|
- _APP_WORKER_PER_CORE |
|
- _APP_OPENSSL_KEY_V1 |
|
- _APP_DB_HOST |
|
- _APP_DB_PORT |
|
- _APP_DB_SCHEMA |
|
- _APP_DB_USER |
|
- _APP_DB_PASS |
|
- _APP_REDIS_HOST |
|
- _APP_REDIS_PORT |
|
- _APP_REDIS_USER |
|
- _APP_REDIS_PASS |
|
- _APP_USAGE_STATS |
|
- _APP_LOGGING_CONFIG |
|
- _APP_USAGE_AGGREGATION_INTERVAL |
|
appwrite-task-scheduler-functions: |
|
image: 'appwrite/appwrite:1.7.4' |
|
entrypoint: schedule-functions |
|
container_name: appwrite-task-scheduler-functions |
|
<<: *x-logging |
|
restart: unless-stopped |
|
networks: |
|
- appwrite-network |
|
depends_on: |
|
- appwrite-mariadb |
|
- appwrite-redis |
|
environment: |
|
- _APP_ENV |
|
- _APP_WORKER_PER_CORE |
|
- _APP_OPENSSL_KEY_V1 |
|
- _APP_REDIS_HOST |
|
- _APP_REDIS_PORT |
|
- _APP_REDIS_USER |
|
- _APP_REDIS_PASS |
|
- _APP_DB_HOST |
|
- _APP_DB_PORT |
|
- _APP_DB_SCHEMA |
|
- _APP_DB_USER |
|
- _APP_DB_PASS |
|
appwrite-task-scheduler-executions: |
|
image: 'appwrite/appwrite:1.7.4' |
|
entrypoint: schedule-executions |
|
container_name: appwrite-task-scheduler-executions |
|
<<: *x-logging |
|
restart: unless-stopped |
|
networks: |
|
- appwrite-network |
|
depends_on: |
|
- appwrite-mariadb |
|
- appwrite-redis |
|
environment: |
|
- _APP_ENV |
|
- _APP_WORKER_PER_CORE |
|
- _APP_OPENSSL_KEY_V1 |
|
- _APP_REDIS_HOST |
|
- _APP_REDIS_PORT |
|
- _APP_REDIS_USER |
|
- _APP_REDIS_PASS |
|
- _APP_DB_HOST |
|
- _APP_DB_PORT |
|
- _APP_DB_SCHEMA |
|
- _APP_DB_USER |
|
- _APP_DB_PASS |
|
appwrite-task-scheduler-messages: |
|
image: 'appwrite/appwrite:1.7.4' |
|
entrypoint: schedule-messages |
|
container_name: appwrite-task-scheduler-messages |
|
<<: *x-logging |
|
restart: unless-stopped |
|
networks: |
|
- appwrite-network |
|
depends_on: |
|
- appwrite-mariadb |
|
- appwrite-redis |
|
environment: |
|
- _APP_ENV |
|
- _APP_WORKER_PER_CORE |
|
- _APP_OPENSSL_KEY_V1 |
|
- _APP_REDIS_HOST |
|
- _APP_REDIS_PORT |
|
- _APP_REDIS_USER |
|
- _APP_REDIS_PASS |
|
- _APP_DB_HOST |
|
- _APP_DB_PORT |
|
- _APP_DB_SCHEMA |
|
- _APP_DB_USER |
|
- _APP_DB_PASS |
|
appwrite-assistant: |
|
image: 'appwrite/assistant:0.4.0' |
|
container_name: appwrite-assistant |
|
<<: *x-logging |
|
restart: unless-stopped |
|
networks: |
|
- appwrite-network |
|
environment: |
|
- _APP_ASSISTANT_OPENAI_API_KEY |
|
appwrite-browser: |
|
image: 'appwrite/browser:0.2.4' |
|
container_name: appwrite-browser |
|
<<: *x-logging |
|
restart: unless-stopped |
|
networks: |
|
- appwrite-network |
|
openruntimes-executor: |
|
container_name: openruntimes-executor |
|
hostname: exc1 |
|
<<: *x-logging |
|
restart: unless-stopped |
|
stop_signal: SIGINT |
|
image: 'openruntimes/executor:0.7.14' |
|
networks: |
|
- appwrite-network |
|
- appwrite-runtimes-network |
|
volumes: |
|
- '/var/run/docker.sock:/var/run/docker.sock' |
|
- 'appwrite-builds:/storage/builds:rw' |
|
- 'appwrite-functions:/storage/functions:rw' |
|
- 'appwrite-sites:/storage/sites:rw' |
|
- '/tmp:/tmp:rw' |
|
environment: |
|
- OPR_EXECUTOR_INACTIVE_TRESHOLD=$_APP_COMPUTE_INACTIVE_THRESHOLD |
|
- OPR_EXECUTOR_MAINTENANCE_INTERVAL=$_APP_COMPUTE_MAINTENANCE_INTERVAL |
|
- OPR_EXECUTOR_NETWORK=$_APP_COMPUTE_RUNTIMES_NETWORK |
|
- OPR_EXECUTOR_DOCKER_HUB_USERNAME=$_APP_DOCKER_HUB_USERNAME |
|
- OPR_EXECUTOR_DOCKER_HUB_PASSWORD=$_APP_DOCKER_HUB_PASSWORD |
|
- OPR_EXECUTOR_ENV=$_APP_ENV |
|
- 'OPR_EXECUTOR_RUNTIMES=${_APP_FUNCTIONS_RUNTIMES},${_APP_SITES_RUNTIMES}' |
|
- OPR_EXECUTOR_SECRET=$_APP_EXECUTOR_SECRET |
|
- OPR_EXECUTOR_RUNTIME_VERSIONS=v5 |
|
- OPR_EXECUTOR_LOGGING_CONFIG=$_APP_LOGGING_CONFIG |
|
- OPR_EXECUTOR_STORAGE_DEVICE=$_APP_STORAGE_DEVICE |
|
- OPR_EXECUTOR_STORAGE_S3_ACCESS_KEY=$_APP_STORAGE_S3_ACCESS_KEY |
|
- OPR_EXECUTOR_STORAGE_S3_SECRET=$_APP_STORAGE_S3_SECRET |
|
- OPR_EXECUTOR_STORAGE_S3_REGION=$_APP_STORAGE_S3_REGION |
|
- OPR_EXECUTOR_STORAGE_S3_BUCKET=$_APP_STORAGE_S3_BUCKET |
|
- OPR_EXECUTOR_STORAGE_S3_ENDPOINT=$_APP_STORAGE_S3_ENDPOINT |
|
- OPR_EXECUTOR_STORAGE_DO_SPACES_ACCESS_KEY=$_APP_STORAGE_DO_SPACES_ACCESS_KEY |
|
- OPR_EXECUTOR_STORAGE_DO_SPACES_SECRET=$_APP_STORAGE_DO_SPACES_SECRET |
|
- OPR_EXECUTOR_STORAGE_DO_SPACES_REGION=$_APP_STORAGE_DO_SPACES_REGION |
|
- OPR_EXECUTOR_STORAGE_DO_SPACES_BUCKET=$_APP_STORAGE_DO_SPACES_BUCKET |
|
- OPR_EXECUTOR_STORAGE_BACKBLAZE_ACCESS_KEY=$_APP_STORAGE_BACKBLAZE_ACCESS_KEY |
|
- OPR_EXECUTOR_STORAGE_BACKBLAZE_SECRET=$_APP_STORAGE_BACKBLAZE_SECRET |
|
- OPR_EXECUTOR_STORAGE_BACKBLAZE_REGION=$_APP_STORAGE_BACKBLAZE_REGION |
|
- OPR_EXECUTOR_STORAGE_BACKBLAZE_BUCKET=$_APP_STORAGE_BACKBLAZE_BUCKET |
|
- OPR_EXECUTOR_STORAGE_LINODE_ACCESS_KEY=$_APP_STORAGE_LINODE_ACCESS_KEY |
|
- OPR_EXECUTOR_STORAGE_LINODE_SECRET=$_APP_STORAGE_LINODE_SECRET |
|
- OPR_EXECUTOR_STORAGE_LINODE_REGION=$_APP_STORAGE_LINODE_REGION |
|
- OPR_EXECUTOR_STORAGE_LINODE_BUCKET=$_APP_STORAGE_LINODE_BUCKET |
|
- OPR_EXECUTOR_STORAGE_WASABI_ACCESS_KEY=$_APP_STORAGE_WASABI_ACCESS_KEY |
|
- OPR_EXECUTOR_STORAGE_WASABI_SECRET=$_APP_STORAGE_WASABI_SECRET |
|
- OPR_EXECUTOR_STORAGE_WASABI_REGION=$_APP_STORAGE_WASABI_REGION |
|
- OPR_EXECUTOR_STORAGE_WASABI_BUCKET=$_APP_STORAGE_WASABI_BUCKET |
|
appwrite-mariadb: |
|
image: 'mariadb:10.11' |
|
container_name: appwrite-mariadb |
|
<<: *x-logging |
|
restart: unless-stopped |
|
networks: |
|
- appwrite-network |
|
volumes: |
|
- 'appwrite-mariadb:/var/lib/mysql:rw' |
|
environment: |
|
- 'MYSQL_ROOT_PASSWORD=${_APP_DB_ROOT_PASS}' |
|
- 'MYSQL_DATABASE=${_APP_DB_SCHEMA}' |
|
- 'MYSQL_USER=${_APP_DB_USER}' |
|
- 'MYSQL_PASSWORD=${_APP_DB_PASS}' |
|
- appwrite-MARIADB_AUTO_UPGRADE=1 |
|
command: 'mysqld --innodb-flush-method=fsync' |
|
appwrite-redis: |
|
image: 'redis:7.2.4-alpine' |
|
container_name: appwrite-redis |
|
<<: *x-logging |
|
restart: unless-stopped |
|
command: > |
|
redis-server |
|
--maxmemory 512mb |
|
--maxmemory-policy allkeys-lru |
|
--maxmemory-samples 5 |
|
networks: |
|
- appwrite-network |
|
volumes: |
|
- 'appwrite-redis:/data:rw' |
|
networks: |
|
coolify: |
|
name: coolify |
|
external: true |
|
appwrite-network: |
|
name: appwrite-internal-${COOLIFY_RESOURCE_UUID} |
|
driver: bridge |
|
appwrite-runtimes-network: |
|
name: ${_APP_COMPUTE_RUNTIMES_NETWORK} |
|
driver: bridge |
|
volumes: |
|
appwrite-mariadb: { } |
|
appwrite-redis: { } |
|
appwrite-cache: { } |
|
appwrite-uploads: { } |
|
appwrite-imports: { } |
|
appwrite-certificates: { } |
|
appwrite-functions: { } |
|
appwrite-sites: { } |
|
appwrite-builds: { } |
|
appwrite-config: { } |
Thanks a lot! Working for me ❤️