1
0
Fork 0
mirror of synced 2024-05-20 12:42:39 +12:00
appwrite/docker-compose.yml

424 lines
9.7 KiB
YAML
Raw Normal View History

2019-10-02 10:12:48 +13:00
version: '3'
2019-05-09 18:54:39 +12:00
services:
2020-02-25 20:55:55 +13:00
traefik:
2020-09-28 04:01:30 +13:00
image: traefik:2.3
2020-07-16 08:29:34 +12:00
container_name: appwrite-traefik
2020-02-25 20:55:55 +13:00
command:
2020-02-25 22:13:36 +13:00
- --log.level=DEBUG
- --api.insecure=true
2020-02-25 23:04:12 +13:00
- --providers.file.directory=/storage/config
2020-02-25 22:13:36 +13:00
- --providers.file.watch=true
- --providers.docker=true
- --entrypoints.web.address=:80
- --entrypoints.websecure.address=:443
- --accesslog=true
2020-03-02 02:42:20 +13:00
restart: unless-stopped
2020-02-25 20:55:55 +13:00
ports:
2020-02-25 22:13:36 +13:00
- 80:80
- 443:443
- 8080:8080
2020-02-25 20:55:55 +13:00
volumes:
2020-02-25 22:13:36 +13:00
- /var/run/docker.sock:/var/run/docker.sock
2020-02-25 23:04:12 +13:00
- appwrite-config:/storage/config:ro
- appwrite-certificates:/storage/certificates:ro
2020-02-25 22:13:36 +13:00
depends_on:
2020-03-20 08:00:53 +13:00
- appwrite
2020-02-25 20:55:55 +13:00
networks:
2020-02-25 22:13:36 +13:00
- gateway
- appwrite
2020-02-25 20:55:55 +13:00
2019-10-02 10:12:48 +13:00
appwrite:
2019-11-30 06:34:55 +13:00
container_name: appwrite
build:
context: .
args:
- TESTING=true
2019-12-07 07:55:44 +13:00
- VERSION=dev
2019-10-02 10:12:48 +13:00
restart: unless-stopped
2020-07-03 00:24:39 +12:00
ports:
- 9501:80
2019-12-05 18:30:23 +13:00
networks:
2020-02-25 20:55:55 +13:00
- appwrite
labels:
- traefik.http.routers.appwrite.rule=PathPrefix(`/`)
- traefik.http.routers.appwrite-secure.rule=PathPrefix(`/`)
- traefik.http.routers.appwrite-secure.tls=true
2019-10-02 10:12:48 +13:00
volumes:
2020-05-10 04:40:45 +12:00
- /var/run/docker.sock:/var/run/docker.sock
2020-02-25 22:13:36 +13:00
- appwrite-uploads:/storage/uploads:rw
- appwrite-cache:/storage/cache:rw
2020-02-25 23:04:12 +13:00
- appwrite-config:/storage/config:rw
2020-02-25 22:13:36 +13:00
- appwrite-certificates:/storage/certificates:rw
2020-07-15 09:20:46 +12:00
- appwrite-functions:/storage/functions:rw
2020-07-02 02:38:41 +12:00
- ./phpunit.xml:/usr/src/code/phpunit.xml
- ./tests:/usr/src/code/tests
- ./app:/usr/src/code/app
2020-07-05 10:31:48 +12:00
# - ./vendor:/usr/src/code/vendor
2020-07-02 02:38:41 +12:00
- ./docs:/usr/src/code/docs
- ./public:/usr/src/code/public
- ./src:/usr/src/code/src
2020-07-05 07:18:37 +12:00
- ./debug:/tmp
2019-10-02 10:12:48 +13:00
depends_on:
2020-02-25 22:13:36 +13:00
- mariadb
- redis
- clamav
- influxdb
2019-10-02 10:12:48 +13:00
environment:
2020-07-06 01:51:20 +12:00
- _APP_ENV
2020-09-28 03:29:06 +13:00
- _APP_SYSTEM_EMAIL_NAME
- _APP_SYSTEM_EMAIL_ADDRESS
- _APP_SYSTEM_SECURITY_EMAIL_ADDRESS
2020-07-06 01:51:20 +12:00
- _APP_OPTIONS_ABUSE
- _APP_OPTIONS_FORCE_HTTPS
- _APP_OPENSSL_KEY_V1
- _APP_DOMAIN
- _APP_DOMAIN_TARGET
- _APP_REDIS_HOST
- _APP_REDIS_PORT
- _APP_DB_HOST
- _APP_DB_PORT
- _APP_DB_SCHEMA
- _APP_DB_USER
- _APP_DB_PASS
- _APP_INFLUXDB_HOST
- _APP_INFLUXDB_PORT
2020-07-20 03:17:57 +12:00
- _APP_STORAGE_LIMIT
2020-07-20 02:42:46 +12:00
- _APP_FUNCTIONS_TIMEOUT
- _APP_FUNCTIONS_CONTAINERS
2020-07-06 01:51:20 +12:00
appwrite-worker-usage:
entrypoint: worker-usage
container_name: appwrite-worker-usage
build:
context: .
restart: unless-stopped
networks:
- appwrite
depends_on:
- redis
2020-07-06 07:19:14 +12:00
- telegraf
2020-07-06 01:51:20 +12:00
environment:
2020-07-08 05:59:20 +12:00
- _APP_ENV
2020-07-06 01:51:20 +12:00
- _APP_REDIS_HOST
- _APP_REDIS_PORT
- _APP_STATSD_HOST
- _APP_STATSD_PORT
2020-07-06 08:38:13 +12:00
appwrite-worker-audits:
entrypoint: worker-audits
container_name: appwrite-worker-audits
2020-07-06 01:51:20 +12:00
build:
context: .
restart: unless-stopped
networks:
- appwrite
depends_on:
- redis
2020-07-06 07:19:14 +12:00
- mariadb
environment:
2020-07-08 05:59:20 +12:00
- _APP_ENV
2020-07-06 07:19:14 +12:00
- _APP_REDIS_HOST
- _APP_REDIS_PORT
- _APP_DB_HOST
- _APP_DB_PORT
- _APP_DB_SCHEMA
- _APP_DB_USER
- _APP_DB_PASS
2020-07-06 08:38:13 +12:00
appwrite-worker-webhooks:
entrypoint: worker-webhooks
container_name: appwrite-worker-webhooks
2020-07-06 07:19:14 +12:00
build:
context: .
restart: unless-stopped
networks:
- appwrite
depends_on:
- redis
- mariadb
2020-07-06 01:51:20 +12:00
environment:
2020-07-08 05:59:20 +12:00
- _APP_ENV
2020-09-28 03:29:06 +13:00
- _APP_SYSTEM_SECURITY_EMAIL_ADDRESS
2020-07-06 01:51:20 +12:00
- _APP_REDIS_HOST
- _APP_REDIS_PORT
- _APP_DB_HOST
- _APP_DB_PORT
- _APP_DB_SCHEMA
- _APP_DB_USER
- _APP_DB_PASS
2019-05-09 18:54:39 +12:00
2020-07-06 19:38:56 +12:00
appwrite-worker-tasks:
entrypoint: worker-tasks
container_name: appwrite-worker-tasks
build:
context: .
restart: unless-stopped
networks:
- appwrite
depends_on:
- redis
- mariadb
environment:
2020-07-08 05:59:20 +12:00
- _APP_ENV
2020-09-28 03:29:06 +13:00
- _APP_SYSTEM_SECURITY_EMAIL_ADDRESS
2020-07-06 19:38:56 +12:00
- _APP_REDIS_HOST
- _APP_REDIS_PORT
- _APP_DB_HOST
- _APP_DB_PORT
- _APP_DB_SCHEMA
- _APP_DB_USER
- _APP_DB_PASS
appwrite-worker-deletes:
entrypoint: worker-deletes
container_name: appwrite-worker-deletes
build:
context: .
restart: unless-stopped
networks:
- appwrite
depends_on:
- redis
- mariadb
volumes:
- appwrite-uploads:/storage/uploads:rw
- appwrite-cache:/storage/cache:rw
environment:
2020-07-08 05:59:20 +12:00
- _APP_ENV
2020-07-06 19:38:56 +12:00
- _APP_REDIS_HOST
- _APP_REDIS_PORT
- _APP_DB_HOST
- _APP_DB_PORT
- _APP_DB_SCHEMA
- _APP_DB_USER
- _APP_DB_PASS
appwrite-worker-certificates:
entrypoint: worker-certificates
container_name: appwrite-worker-certificates
build:
context: .
restart: unless-stopped
networks:
- appwrite
depends_on:
- redis
- mariadb
volumes:
- appwrite-config:/storage/config:rw
- appwrite-certificates:/storage/certificates:rw
environment:
2020-07-08 05:59:20 +12:00
- _APP_ENV
2020-09-28 03:29:06 +13:00
- _APP_SYSTEM_SECURITY_EMAIL_ADDRESS
2020-07-06 19:38:56 +12:00
- _APP_REDIS_HOST
- _APP_REDIS_PORT
- _APP_DB_HOST
- _APP_DB_PORT
- _APP_DB_SCHEMA
- _APP_DB_USER
- _APP_DB_PASS
appwrite-worker-functions:
entrypoint: worker-functions
container_name: appwrite-worker-functions
build:
context: .
restart: unless-stopped
networks:
- appwrite
depends_on:
- redis
- mariadb
volumes:
- /var/run/docker.sock:/var/run/docker.sock
2020-07-17 00:04:06 +12:00
- /tmp:/tmp:rw
- appwrite-functions:/storage/functions:rw
environment:
- _APP_ENV
- _APP_REDIS_HOST
- _APP_REDIS_PORT
2020-07-17 00:04:06 +12:00
- _APP_DB_HOST
- _APP_DB_PORT
- _APP_DB_SCHEMA
- _APP_DB_USER
- _APP_DB_PASS
2020-07-20 02:42:46 +12:00
- _APP_FUNCTIONS_TIMEOUT
- _APP_FUNCTIONS_CONTAINERS
2020-07-06 08:38:13 +12:00
appwrite-worker-mails:
entrypoint: worker-mails
container_name: appwrite-worker-mails
build:
context: .
restart: unless-stopped
networks:
- appwrite
depends_on:
- redis
2020-09-28 03:31:29 +13:00
- maildev
# - smtp
2020-07-06 08:38:13 +12:00
environment:
2020-07-08 05:59:20 +12:00
- _APP_ENV
2020-09-28 03:29:06 +13:00
- _APP_SYSTEM_EMAIL_NAME
- _APP_SYSTEM_EMAIL_ADDRESS
2020-07-06 08:38:13 +12:00
- _APP_REDIS_HOST
- _APP_REDIS_PORT
- _APP_SMTP_HOST
- _APP_SMTP_PORT
2020-10-27 03:34:19 +13:00
- _APP_SMTP_SECURE
- _APP_SMTP_USERNAME
- _APP_SMTP_PASSWORD
2020-07-06 08:38:13 +12:00
2020-07-06 19:38:56 +12:00
appwrite-schedule:
entrypoint: schedule
container_name: appwrite-schedule
build:
context: .
restart: unless-stopped
networks:
- appwrite
depends_on:
- redis
environment:
2020-07-08 05:59:20 +12:00
- _APP_ENV
2020-07-06 19:38:56 +12:00
- _APP_REDIS_HOST
- _APP_REDIS_PORT
2019-10-02 10:12:48 +13:00
mariadb:
2020-03-22 10:10:06 +13:00
image: appwrite/mariadb:1.0.3 # fix issues when upgrading using: mysql_upgrade -u root -p
2020-07-16 08:29:34 +12:00
container_name: appwrite-mariadb
2019-10-02 10:12:48 +13:00
restart: unless-stopped
2019-12-05 18:30:23 +13:00
networks:
2020-02-25 22:13:36 +13:00
- appwrite
2019-12-05 18:30:23 +13:00
volumes:
2020-02-29 19:24:46 +13:00
- appwrite-mariadb:/var/lib/mysql:rw
ports:
2020-02-25 22:13:36 +13:00
- "3306:3306"
2019-10-02 10:12:48 +13:00
environment:
2020-10-27 03:34:19 +13:00
- MYSQL_ROOT_PASSWORD=password
2020-10-26 03:15:27 +13:00
- MYSQL_DATABASE=${_APP_DB_SCHEMA}
- MYSQL_USER=${_APP_DB_USER}
- MYSQL_PASSWORD=${_APP_DB_PASS}
command: 'mysqld --innodb-flush-method=fsync'
2020-09-28 03:46:04 +13:00
# command: mv /var/lib/mysql/ib_logfile0 /var/lib/mysql/ib_logfile0.bu && mv /var/lib/mysql/ib_logfile1 /var/lib/mysql/ib_logfile1.bu
2019-05-09 18:54:39 +12:00
2020-09-28 03:31:29 +13:00
maildev:
image: djfarrelly/maildev
container_name: appwrite-maildev
2020-09-28 03:29:06 +13:00
restart: unless-stopped
2020-09-28 03:31:29 +13:00
ports:
- '1080:80'
2020-09-28 03:29:06 +13:00
networks:
- appwrite
2020-09-28 03:31:29 +13:00
# smtp:
# image: appwrite/smtp:1.2.0
# container_name: appwrite-smtp
# restart: unless-stopped
# networks:
# - appwrite
# environment:
# - LOCAL_DOMAINS=@
# - RELAY_FROM_HOSTS=192.168.0.0/16 ; *.yourdomain.com
# - SMARTHOST_HOST=smtp
# - SMARTHOST_PORT=587
2020-02-25 04:03:48 +13:00
redis:
2020-09-28 04:01:30 +13:00
image: redis:6.0-alpine
2020-07-16 08:29:34 +12:00
container_name: appwrite-redis
2019-10-02 10:12:48 +13:00
restart: unless-stopped
2019-12-05 18:30:23 +13:00
networks:
2020-02-25 22:13:36 +13:00
- appwrite
2020-02-29 19:24:46 +13:00
volumes:
- appwrite-redis:/data:rw
2019-08-09 09:49:46 +12:00
2020-02-25 04:03:48 +13:00
clamav:
2020-10-26 03:49:15 +13:00
image: appwrite/clamav:1.2.0
2020-07-16 08:29:34 +12:00
container_name: appwrite-clamav
2019-10-02 10:12:48 +13:00
restart: unless-stopped
2019-12-05 18:30:23 +13:00
networks:
2020-02-25 22:13:36 +13:00
- appwrite
2020-02-25 04:03:48 +13:00
volumes:
2020-02-25 22:13:36 +13:00
- appwrite-uploads:/storage/uploads
2019-10-02 10:12:48 +13:00
influxdb:
image: influxdb:1.8-alpine
2020-07-16 08:29:34 +12:00
container_name: appwrite-influxdb
2019-12-05 18:30:23 +13:00
restart: unless-stopped
networks:
2020-02-25 22:13:36 +13:00
- appwrite
2019-10-02 10:12:48 +13:00
volumes:
2020-02-25 22:13:36 +13:00
- appwrite-influxdb:/var/lib/influxdb:rw
2019-10-02 10:12:48 +13:00
telegraf:
image: appwrite/telegraf:1.0.0
2020-07-16 08:29:34 +12:00
container_name: appwrite-telegraf
2019-12-05 18:30:23 +13:00
restart: unless-stopped
networks:
2020-02-25 22:13:36 +13:00
- appwrite
2019-12-05 18:30:23 +13:00
2020-03-02 00:20:39 +13:00
# redis-commander:
# image: rediscommander/redis-commander:latest
# restart: unless-stopped
# networks:
# - appwrite
# environment:
# - REDIS_HOSTS=redis
# ports:
# - "8081:8081"
2020-03-02 00:14:55 +13:00
2020-01-12 19:35:37 +13:00
# resque:
2020-09-24 05:10:05 +12:00
# image: appwrite/resque-web:1.1.0
2020-01-12 19:35:37 +13:00
# restart: unless-stopped
# networks:
2020-02-25 22:13:36 +13:00
# - appwrite
2020-01-12 19:35:37 +13:00
# ports:
2020-02-25 22:13:36 +13:00
# - "5678:5678"
2020-01-12 19:35:37 +13:00
# environment:
2020-02-25 22:13:36 +13:00
# - RESQUE_WEB_HOST=redis
# - RESQUE_WEB_PORT=6379
# - RESQUE_WEB_HTTP_BASIC_AUTH_USER=user
# - RESQUE_WEB_HTTP_BASIC_AUTH_PASSWORD=password
2020-01-12 02:58:02 +13:00
2020-07-06 01:51:20 +12:00
# chronograf:
# image: chronograf:1.5
2020-07-16 08:29:34 +12:00
# container_name: appwrite-chronograf
2020-07-06 01:51:20 +12:00
# restart: unless-stopped
# networks:
# - appwrite
# volumes:
# - appwrite-chronograf:/var/lib/chronograf
# ports:
# - "8888:8888"
# environment:
# - INFLUXDB_URL=http://influxdb:8086
# - KAPACITOR_URL=http://kapacitor:9092
# - AUTH_DURATION=48h
# - TOKEN_SECRET=duperduper5674829!jwt
# - GH_CLIENT_ID=d86f7145a41eacfc52cc
# - GH_CLIENT_SECRET=9e0081062367a2134e7f2ea95ba1a32d08b6c8ab
# - GH_ORGS=appwrite
# webgrind:
# image: 'jokkedk/webgrind:latest'
# volumes:
# - './debug:/tmp'
# ports:
# - '3001:80'
2020-07-05 07:18:37 +12:00
2019-12-05 18:30:23 +13:00
networks:
2020-02-25 20:55:55 +13:00
gateway:
2019-12-05 18:30:23 +13:00
appwrite:
volumes:
2020-02-29 19:24:46 +13:00
appwrite-mariadb:
appwrite-redis:
appwrite-cache:
appwrite-uploads:
2020-02-23 21:56:27 +13:00
appwrite-certificates:
2020-07-15 09:20:46 +12:00
appwrite-functions:
2019-11-29 20:33:42 +13:00
appwrite-influxdb:
2020-04-25 05:09:09 +12:00
appwrite-chronograf:
2020-02-25 23:04:12 +13:00
appwrite-config: