-
-
Save eldadfux/977869ff6bdd7312adfd4e629ee15cc5 to your computer and use it in GitHub Desktop.
_APP_ENV=production | |
_APP_LOCALE=en | |
_APP_OPTIONS_ABUSE=enabled | |
_APP_OPTIONS_FORCE_HTTPS=disabled | |
_APP_OPENSSL_KEY_V1=your-secret-key | |
_APP_DOMAIN=localhost | |
_APP_DOMAIN_TARGET=localhost | |
_APP_CONSOLE_WHITELIST_ROOT=enabled | |
_APP_CONSOLE_WHITELIST_EMAILS= | |
_APP_CONSOLE_WHITELIST_IPS= | |
_APP_SYSTEM_EMAIL_NAME=Appwrite | |
_APP_SYSTEM_EMAIL_ADDRESS=team@appwrite.io | |
_APP_SYSTEM_RESPONSE_FORMAT= | |
_APP_SYSTEM_SECURITY_EMAIL_ADDRESS=certs@appwrite.io | |
_APP_USAGE_STATS=enabled | |
_APP_LOGGING_PROVIDER= | |
_APP_LOGGING_CONFIG= | |
_APP_USAGE_AGGREGATION_INTERVAL=30 | |
_APP_WORKER_PER_CORE=6 | |
_APP_REDIS_HOST=redis | |
_APP_REDIS_PORT=6379 | |
_APP_REDIS_USER= | |
_APP_REDIS_PASS= | |
_APP_DB_HOST=mariadb | |
_APP_DB_PORT=3306 | |
_APP_DB_SCHEMA=appwrite | |
_APP_DB_USER=user | |
_APP_DB_PASS=password | |
_APP_DB_ROOT_PASS=rootsecretpassword | |
_APP_INFLUXDB_HOST=influxdb | |
_APP_INFLUXDB_PORT=8086 | |
_APP_STATSD_HOST=telegraf | |
_APP_STATSD_PORT=8125 | |
_APP_SMTP_HOST= | |
_APP_SMTP_PORT= | |
_APP_SMTP_SECURE= | |
_APP_SMTP_USERNAME= | |
_APP_SMTP_PASSWORD= | |
_APP_STORAGE_LIMIT=30000000 | |
_APP_STORAGE_PREVIEW_LIMIT=20000000 | |
_APP_STORAGE_ANTIVIRUS=disabled | |
_APP_STORAGE_ANTIVIRUS_HOST=clamav | |
_APP_STORAGE_ANTIVIRUS_PORT=3310 | |
_APP_STORAGE_DEVICE=Local | |
_APP_STORAGE_S3_ACCESS_KEY= | |
_APP_STORAGE_S3_SECRET= | |
_APP_STORAGE_S3_REGION=us-east-1 | |
_APP_STORAGE_S3_BUCKET= | |
_APP_STORAGE_DO_SPACES_ACCESS_KEY= | |
_APP_STORAGE_DO_SPACES_SECRET= | |
_APP_STORAGE_DO_SPACES_REGION=us-east-1 | |
_APP_STORAGE_DO_SPACES_BUCKET= | |
_APP_STORAGE_BACKBLAZE_ACCESS_KEY= | |
_APP_STORAGE_BACKBLAZE_SECRET= | |
_APP_STORAGE_BACKBLAZE_REGION=us-west-004 | |
_APP_STORAGE_BACKBLAZE_BUCKET= | |
_APP_STORAGE_LINODE_ACCESS_KEY= | |
_APP_STORAGE_LINODE_SECRET= | |
_APP_STORAGE_LINODE_REGION=eu-central-1 | |
_APP_STORAGE_LINODE_BUCKET= | |
_APP_STORAGE_WASABI_ACCESS_KEY= | |
_APP_STORAGE_WASABI_SECRET= | |
_APP_STORAGE_WASABI_REGION=eu-central-1 | |
_APP_STORAGE_WASABI_BUCKET= | |
_APP_FUNCTIONS_SIZE_LIMIT=30000000 | |
_APP_FUNCTIONS_TIMEOUT=900 | |
_APP_FUNCTIONS_BUILD_TIMEOUT=900 | |
_APP_FUNCTIONS_CONTAINERS=10 | |
_APP_FUNCTIONS_CPUS=0 | |
_APP_FUNCTIONS_MEMORY=0 | |
_APP_FUNCTIONS_MEMORY_SWAP=0 | |
_APP_FUNCTIONS_RUNTIMES=node-16.0,php-8.0,python-3.9,ruby-3.0 | |
_APP_EXECUTOR_SECRET=your-secret-key | |
_APP_EXECUTOR_HOST=http://appwrite-executor/v1 | |
_APP_EXECUTOR_RUNTIME_NETWORK=appwrite_runtimes | |
_APP_FUNCTIONS_ENVS=node-16.0,php-7.4,python-3.9,ruby-3.0 | |
_APP_FUNCTIONS_INACTIVE_THRESHOLD=60 | |
DOCKERHUB_PULL_USERNAME= | |
DOCKERHUB_PULL_PASSWORD= | |
DOCKERHUB_PULL_EMAIL= | |
OPEN_RUNTIMES_NETWORK=appwrite_runtimes | |
_APP_MAINTENANCE_INTERVAL=86400 | |
_APP_MAINTENANCE_RETENTION_EXECUTION=1209600 | |
_APP_MAINTENANCE_RETENTION_AUDIT=1209600 | |
_APP_MAINTENANCE_RETENTION_ABUSE=86400 |
x-logging: &x-logging | |
logging: | |
driver: 'json-file' | |
options: | |
max-file: '5' | |
max-size: '10m' | |
version: '3' | |
services: | |
traefik: | |
image: traefik:2.7 | |
container_name: appwrite-traefik | |
<<: *x-logging | |
command: | |
- --providers.file.directory=/storage/config | |
- --providers.file.watch=true | |
- --providers.docker=true | |
- --providers.docker.exposedByDefault=false | |
- --providers.docker.constraints=Label(`traefik.constraint-label-stack`,`appwrite`) | |
- --entrypoints.appwrite_web.address=:80 | |
- --entrypoints.appwrite_websecure.address=:443 | |
restart: unless-stopped | |
ports: | |
- 80:80 | |
- 443:443 | |
volumes: | |
- /var/run/docker.sock:/var/run/docker.sock | |
- appwrite-config:/storage/config:ro | |
- appwrite-certificates:/storage/certificates:ro | |
depends_on: | |
- appwrite | |
networks: | |
- gateway | |
- appwrite | |
appwrite: | |
image: appwrite/appwrite:0.14.2 | |
container_name: appwrite | |
<<: *x-logging | |
restart: unless-stopped | |
networks: | |
- appwrite | |
labels: | |
- traefik.enable=true | |
- traefik.constraint-label-stack=appwrite | |
- traefik.docker.network=appwrite | |
- traefik.http.services.appwrite_api.loadbalancer.server.port=80 | |
#http | |
- traefik.http.routers.appwrite_api_http.entrypoints=appwrite_web | |
- traefik.http.routers.appwrite_api_http.rule=PathPrefix(`/`) | |
- traefik.http.routers.appwrite_api_http.service=appwrite_api | |
# https | |
- traefik.http.routers.appwrite_api_https.entrypoints=appwrite_websecure | |
- traefik.http.routers.appwrite_api_https.rule=PathPrefix(`/`) | |
- traefik.http.routers.appwrite_api_https.service=appwrite_api | |
- traefik.http.routers.appwrite_api_https.tls=true | |
volumes: | |
- appwrite-uploads:/storage/uploads:rw | |
- appwrite-cache:/storage/cache:rw | |
- appwrite-config:/storage/config:rw | |
- appwrite-certificates:/storage/certificates:rw | |
- appwrite-functions:/storage/functions:rw | |
depends_on: | |
- mariadb | |
- redis | |
# - clamav | |
- influxdb | |
environment: | |
- _APP_ENV | |
- _APP_WORKER_PER_CORE | |
- _APP_LOCALE | |
- _APP_CONSOLE_WHITELIST_ROOT | |
- _APP_CONSOLE_WHITELIST_EMAILS | |
- _APP_CONSOLE_WHITELIST_IPS | |
- _APP_SYSTEM_EMAIL_NAME | |
- _APP_SYSTEM_EMAIL_ADDRESS | |
- _APP_SYSTEM_SECURITY_EMAIL_ADDRESS | |
- _APP_SYSTEM_RESPONSE_FORMAT | |
- _APP_OPTIONS_ABUSE | |
- _APP_OPTIONS_FORCE_HTTPS | |
- _APP_OPENSSL_KEY_V1 | |
- _APP_DOMAIN | |
- _APP_DOMAIN_TARGET | |
- _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_INFLUXDB_HOST | |
- _APP_INFLUXDB_PORT | |
- _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_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_FUNCTIONS_SIZE_LIMIT | |
- _APP_FUNCTIONS_TIMEOUT | |
- _APP_FUNCTIONS_BUILD_TIMEOUT | |
- _APP_FUNCTIONS_CONTAINERS | |
- _APP_FUNCTIONS_CPUS | |
- _APP_FUNCTIONS_MEMORY | |
- _APP_FUNCTIONS_MEMORY_SWAP | |
- _APP_FUNCTIONS_RUNTIMES | |
- _APP_EXECUTOR_SECRET | |
- _APP_EXECUTOR_HOST | |
- _APP_LOGGING_PROVIDER | |
- _APP_LOGGING_CONFIG | |
- _APP_STATSD_HOST | |
- _APP_STATSD_PORT | |
- _APP_MAINTENANCE_INTERVAL | |
- _APP_MAINTENANCE_RETENTION_EXECUTION | |
- _APP_MAINTENANCE_RETENTION_ABUSE | |
- _APP_MAINTENANCE_RETENTION_AUDIT | |
appwrite-realtime: | |
image: appwrite/appwrite:0.14.2 | |
entrypoint: realtime | |
container_name: appwrite-realtime | |
<<: *x-logging | |
restart: unless-stopped | |
labels: | |
- "traefik.enable=true" | |
- "traefik.constraint-label-stack=appwrite" | |
- "traefik.docker.network=appwrite" | |
- "traefik.http.services.appwrite_realtime.loadbalancer.server.port=80" | |
#ws | |
- traefik.http.routers.appwrite_realtime_ws.entrypoints=appwrite_web | |
- traefik.http.routers.appwrite_realtime_ws.rule=PathPrefix(`/v1/realtime`) | |
- traefik.http.routers.appwrite_realtime_ws.service=appwrite_realtime | |
# wss | |
- traefik.http.routers.appwrite_realtime_wss.entrypoints=appwrite_websecure | |
- traefik.http.routers.appwrite_realtime_wss.rule=PathPrefix(`/v1/realtime`) | |
- traefik.http.routers.appwrite_realtime_wss.service=appwrite_realtime | |
- traefik.http.routers.appwrite_realtime_wss.tls=true | |
- traefik.http.routers.appwrite_realtime_wss.tls.certresolver=dns | |
networks: | |
- appwrite | |
depends_on: | |
- mariadb | |
- redis | |
environment: | |
- _APP_ENV | |
- _APP_WORKER_PER_CORE | |
- _APP_OPTIONS_ABUSE | |
- _APP_OPENSSL_KEY_V1 | |
- _APP_REDIS_HOST | |
- _APP_REDIS_PORT | |
- _APP_DB_HOST | |
- _APP_DB_PORT | |
- _APP_DB_SCHEMA | |
- _APP_DB_USER | |
- _APP_DB_PASS | |
- _APP_USAGE_STATS | |
- _APP_LOGGING_PROVIDER | |
- _APP_LOGGING_CONFIG | |
appwrite-worker-audits: | |
image: appwrite/appwrite:0.14.2 | |
entrypoint: worker-audits | |
<<: *x-logging | |
container_name: appwrite-worker-audits | |
restart: unless-stopped | |
networks: | |
- appwrite | |
depends_on: | |
- redis | |
- mariadb | |
environment: | |
- _APP_ENV | |
- _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_PROVIDER | |
- _APP_LOGGING_CONFIG | |
appwrite-worker-webhooks: | |
image: appwrite/appwrite:0.14.2 | |
entrypoint: worker-webhooks | |
<<: *x-logging | |
container_name: appwrite-worker-webhooks | |
restart: unless-stopped | |
networks: | |
- appwrite | |
depends_on: | |
- redis | |
- mariadb | |
environment: | |
- _APP_ENV | |
- _APP_OPENSSL_KEY_V1 | |
- _APP_SYSTEM_SECURITY_EMAIL_ADDRESS | |
- _APP_REDIS_HOST | |
- _APP_REDIS_PORT | |
- _APP_REDIS_USER | |
- _APP_REDIS_PASS | |
- _APP_LOGGING_PROVIDER | |
- _APP_LOGGING_CONFIG | |
appwrite-worker-deletes: | |
image: appwrite/appwrite:0.14.2 | |
entrypoint: worker-deletes | |
<<: *x-logging | |
container_name: appwrite-worker-deletes | |
restart: unless-stopped | |
networks: | |
- appwrite | |
depends_on: | |
- redis | |
- mariadb | |
volumes: | |
- appwrite-uploads:/storage/uploads:rw | |
- appwrite-cache:/storage/cache:rw | |
- appwrite-functions:/storage/functions:rw | |
- appwrite-builds:/storage/builds:rw | |
- appwrite-certificates:/storage/certificates:rw | |
environment: | |
- _APP_ENV | |
- _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_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_PROVIDER | |
- _APP_LOGGING_CONFIG | |
- _APP_EXECUTOR_SECRET | |
- _APP_EXECUTOR_HOST | |
appwrite-worker-database: | |
image: appwrite/appwrite:0.14.2 | |
entrypoint: worker-database | |
<<: *x-logging | |
container_name: appwrite-worker-database | |
restart: unless-stopped | |
networks: | |
- appwrite | |
depends_on: | |
- redis | |
- mariadb | |
environment: | |
- _APP_ENV | |
- _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_PROVIDER | |
- _APP_LOGGING_CONFIG | |
appwrite-worker-builds: | |
image: appwrite/appwrite:0.14.2 | |
entrypoint: worker-builds | |
<<: *x-logging | |
container_name: appwrite-worker-builds | |
restart: unless-stopped | |
networks: | |
- appwrite | |
depends_on: | |
- redis | |
- mariadb | |
environment: | |
- _APP_ENV | |
- _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_PROVIDER | |
- _APP_LOGGING_CONFIG | |
appwrite-worker-certificates: | |
image: appwrite/appwrite:0.14.2 | |
entrypoint: worker-certificates | |
<<: *x-logging | |
container_name: appwrite-worker-certificates | |
restart: unless-stopped | |
networks: | |
- appwrite | |
depends_on: | |
- redis | |
- mariadb | |
volumes: | |
- appwrite-config:/storage/config:rw | |
- appwrite-certificates:/storage/certificates:rw | |
environment: | |
- _APP_ENV | |
- _APP_OPENSSL_KEY_V1 | |
- _APP_DOMAIN | |
- _APP_DOMAIN_TARGET | |
- _APP_SYSTEM_SECURITY_EMAIL_ADDRESS | |
- _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_PROVIDER | |
- _APP_LOGGING_CONFIG | |
appwrite-worker-functions: | |
image: appwrite/appwrite:0.14.2 | |
entrypoint: worker-functions | |
<<: *x-logging | |
container_name: appwrite-worker-functions | |
restart: unless-stopped | |
networks: | |
- appwrite | |
depends_on: | |
- redis | |
- mariadb | |
- appwrite-executor | |
environment: | |
- _APP_ENV | |
- _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_FUNCTIONS_TIMEOUT | |
- _APP_EXECUTOR_SECRET | |
- _APP_EXECUTOR_HOST | |
- _APP_USAGE_STATS | |
- DOCKERHUB_PULL_USERNAME | |
- DOCKERHUB_PULL_PASSWORD | |
appwrite-executor: | |
image: appwrite/appwrite:0.14.2 | |
entrypoint: executor | |
<<: *x-logging | |
container_name: appwrite-executor | |
restart: unless-stopped | |
stop_signal: SIGINT | |
networks: | |
appwrite: | |
runtimes: | |
volumes: | |
- /var/run/docker.sock:/var/run/docker.sock | |
- appwrite-functions:/storage/functions:rw | |
- appwrite-builds:/storage/builds:rw | |
- /tmp:/tmp:rw | |
depends_on: | |
- redis | |
- mariadb | |
- appwrite | |
environment: | |
- _APP_ENV | |
- _APP_VERSION | |
- _APP_FUNCTIONS_TIMEOUT | |
- _APP_FUNCTIONS_BUILD_TIMEOUT | |
- _APP_FUNCTIONS_CONTAINERS | |
- _APP_FUNCTIONS_RUNTIMES | |
- _APP_FUNCTIONS_CPUS | |
- _APP_FUNCTIONS_MEMORY | |
- _APP_FUNCTIONS_MEMORY_SWAP | |
- _APP_FUNCTIONS_INACTIVE_THRESHOLD | |
- _APP_EXECUTOR_SECRET | |
- OPEN_RUNTIMES_NETWORK | |
- _APP_LOGGING_PROVIDER | |
- _APP_LOGGING_CONFIG | |
- _APP_STORAGE_DEVICE | |
- _APP_STORAGE_S3_ACCESS_KEY | |
- _APP_STORAGE_S3_SECRET | |
- _APP_STORAGE_S3_REGION | |
- _APP_STORAGE_S3_BUCKET | |
- _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 | |
- DOCKERHUB_PULL_USERNAME | |
- DOCKERHUB_PULL_PASSWORD | |
appwrite-worker-mails: | |
image: appwrite/appwrite:0.14.2 | |
entrypoint: worker-mails | |
<<: *x-logging | |
container_name: appwrite-worker-mails | |
restart: unless-stopped | |
networks: | |
- appwrite | |
depends_on: | |
- redis | |
environment: | |
- _APP_ENV | |
- _APP_OPENSSL_KEY_V1 | |
- _APP_SYSTEM_EMAIL_NAME | |
- _APP_SYSTEM_EMAIL_ADDRESS | |
- _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_PROVIDER | |
- _APP_LOGGING_CONFIG | |
appwrite-maintenance: | |
image: appwrite/appwrite:0.14.2 | |
entrypoint: maintenance | |
<<: *x-logging | |
container_name: appwrite-maintenance | |
restart: unless-stopped | |
networks: | |
- appwrite | |
depends_on: | |
- redis | |
environment: | |
- _APP_ENV | |
- _APP_OPENSSL_KEY_V1 | |
- _APP_DOMAIN | |
- _APP_DOMAIN_TARGET | |
- _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_ABUSE | |
- _APP_MAINTENANCE_RETENTION_AUDIT | |
appwrite-usage: | |
image: appwrite/appwrite:0.14.2 | |
entrypoint: usage | |
container_name: appwrite-usage | |
<<: *x-logging | |
restart: unless-stopped | |
networks: | |
- appwrite | |
depends_on: | |
- influxdb | |
- mariadb | |
environment: | |
- _APP_ENV | |
- _APP_OPENSSL_KEY_V1 | |
- _APP_DB_HOST | |
- _APP_DB_PORT | |
- _APP_DB_SCHEMA | |
- _APP_DB_USER | |
- _APP_DB_PASS | |
- _APP_INFLUXDB_HOST | |
- _APP_INFLUXDB_PORT | |
- _APP_USAGE_AGGREGATION_INTERVAL | |
- _APP_REDIS_HOST | |
- _APP_REDIS_PORT | |
- _APP_REDIS_USER | |
- _APP_REDIS_PASS | |
appwrite-schedule: | |
image: appwrite/appwrite:0.14.2 | |
entrypoint: schedule | |
container_name: appwrite-schedule | |
<<: *x-logging | |
restart: unless-stopped | |
networks: | |
- appwrite | |
depends_on: | |
- redis | |
environment: | |
- _APP_ENV | |
- _APP_REDIS_HOST | |
- _APP_REDIS_PORT | |
- _APP_REDIS_USER | |
- _APP_REDIS_PASS | |
mariadb: | |
image: mariadb:10.7 # fix issues when upgrading using: mysql_upgrade -u root -p | |
container_name: appwrite-mariadb | |
<<: *x-logging | |
restart: unless-stopped | |
networks: | |
- appwrite | |
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} | |
command: 'mysqld --innodb-flush-method=fsync' | |
redis: | |
image: redis:6.2-alpine | |
container_name: appwrite-redis | |
<<: *x-logging | |
restart: unless-stopped | |
networks: | |
- appwrite | |
volumes: | |
- appwrite-redis:/data:rw | |
# clamav: | |
# image: appwrite/clamav:1.2.0 | |
# container_name: appwrite-clamav | |
# restart: unless-stopped | |
# networks: | |
# - appwrite | |
# volumes: | |
# - appwrite-uploads:/storage/uploads | |
influxdb: | |
image: appwrite/influxdb:1.5.0 | |
container_name: appwrite-influxdb | |
<<: *x-logging | |
restart: unless-stopped | |
networks: | |
- appwrite | |
volumes: | |
- appwrite-influxdb:/var/lib/influxdb:rw | |
telegraf: | |
image: appwrite/telegraf:1.4.0 | |
container_name: appwrite-telegraf | |
<<: *x-logging | |
restart: unless-stopped | |
networks: | |
- appwrite | |
environment: | |
- _APP_INFLUXDB_HOST | |
- _APP_INFLUXDB_PORT | |
networks: | |
gateway: | |
appwrite: | |
runtimes: | |
volumes: | |
appwrite-mariadb: | |
appwrite-redis: | |
appwrite-cache: | |
appwrite-uploads: | |
appwrite-certificates: | |
appwrite-functions: | |
appwrite-builds: | |
appwrite-influxdb: | |
appwrite-config: | |
appwrite-executor: |
This is not working for me. I am just copying this and executing:
docker-compose -f docker-compose.yml --env-file ./.env up -d
When I access localhost I get
500: Server Error
. Logs are yielding:Base table or view not found: 1146 Table
. Am I missing something?
This sounds like a common mariadb issue. Try to restart the mariadb container, sometimes it's not initializing the base tables on a fresh start.
Just to let everyone know using this Gist. The issue is resolved. You can see the entire thread here: appwrite/appwrite#1224 Everything works fine. Just make sure that you leave the _APP_DB_SCHEMA
as is or setup the tables manually with the desired schema.
Hey, the _APP_INFLUXDB_HOST
and _APP_INFLUXDB_PORT
env parameters are duplicated (lines 26-27 and 46-47).
Hey, the
_APP_INFLUXDB_HOST
and_APP_INFLUXDB_PORT
env parameters are duplicated (lines 26-27 and 46-47).
Fixed.
Hello,
for the file provider /storage/config
do we need to have a copy of that file on the host machine(s) or is it in the Appwrite containers.
Thanks for everything!
Hi it says appwriter-worker-webhooks depends on mariadb but there no env vars related to mariadb are specified for this service https://gist.github.com/eldadfux/977869ff6bdd7312adfd4e629ee15cc5#file-docker-compose-yml-L190
Hi it says appwriter-worker-webhooks depends on mariadb but there no env vars related to mariadb are specified for this service https://gist.github.com/eldadfux/977869ff6bdd7312adfd4e629ee15cc5#file-docker-compose-yml-L190
It is dependent - but we don't use MariaDB in the webhooks worker at all 👍
Ola.. I'm still learning my way around Docker, so just for clarification..
It is dependent - but we don't use MariaDB in the webhooks worker at all +1
without going too far down that rabbit hole, would this be to do with the fact (way?) that appwrite-worker-webhooks
interacts with other relevant appwrite-worker-<name>
containers?
Does this work with 0.12.0?
I have updated the stack to version 0.12.1
Updated this gist to version 0.12.2
How can I host Appwrite on Google cloud Run
ERROR: Head "https://registry-1.docker.io/v2/library/redis/manifests/6.0-alpine3.12": received unexpected HTTP status: 503 Service Unavailable
ERROR: Head "registry-1.docker.io/v2/library/redis/manifests/6.0-alpine3.12": received unexpected HTTP status: 503 Service Unavailable
looking at line 325
of the original docker-compose.yml
file under the "Revisions" tab, it seems this redis@6.0-alpine3.12
source image reference goes way back to the very beginning of this Gist...
this version is still available on Docker Hub, so maybe this was just a sporadic network issue?
ERROR: Head "registry-1.docker.io/v2/library/redis/manifests/6.0-alpine3.12": received unexpected HTTP status: 503 Service Unavailable
looking at line
325
of the originaldocker-compose.yml
file under the "Revisions" tab, it seems thisredis@6.0-alpine3.12
source image reference goes way back to the very beginning of this Gist...this version is still available on Docker Hub, so maybe this was just a sporadic network issue?
Solved
Can you please update environment file according to 0.14.2 and add these four variables in .env:
_APP_MAINTENANCE_INTERVAL=86400
_APP_MAINTENANCE_RETENTION_EXECUTION=1209600
_APP_MAINTENANCE_RETENTION_ABUSE=86400
_APP_MAINTENANCE_RETENTION_AUDIT=1209600
This is not working for me. I am just copying this and executing:
When I access localhost I get
500: Server Error
. Logs are yielding:Base table or view not found: 1146 Table
. Am I missing something?