self-hosting/roles/nextcloud-docker/files/nextcloud/docker-compose.yml
2017-12-31 14:03:28 +01:00

77 lines
1.6 KiB
YAML

version: '2.2'
networks:
proxy-tier:
external:
name: nginx-proxy
services:
web:
image: nginx
volumes:
- ./config/nginx.conf:/etc/nginx/nginx.conf:ro
links:
- app
- collabora
volumes_from:
- app
environment:
- VIRTUAL_HOST=${CLOUD_DOMAIN}
- VIRTUAL_NETWORK=nginx-proxy
- VIRTUAL_PORT=80
networks:
- proxy-tier
restart: always
app:
build:
context: .
dockerfile: Dockerfile.cron
links:
- db
volumes:
- /var/lib/nextcloud/apps:/var/www/html/apps
- ./config:/var/www/html/config
- /var/lib/nextcloud/data:/var/www/html/data
- /media:/media
networks:
- proxy-tier
restart: always
db:
image: mariadb
volumes:
- /var/lib/nextcloud/db:/var/lib/mysql
- /backups/nextcloud:/backups
environment:
- MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
- MYSQL_DATABASE=${MYSQL_DATABASE}
- MYSQL_USER=${MYSQL_USER}
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
networks:
- proxy-tier
restart: always
redis:
image: redis
networks:
- proxy-tier
restart: always
collabora:
image: collabora/code
cap_add:
- MKNOD
expose:
- 9980
environment:
- domain=${CLOUD_DOMAIN}
- VIRTUAL_HOST=${COLLABORA_DOMAIN}
- VIRTUAL_NETWORK=nginx-proxy
- VIRTUAL_PORT=9980
#- VIRTUAL_PROTO=https
# - LETSENCRYPT_HOST=${COLLABORA_DOMAIN}
# - LETSENCRYPT_EMAIL=${LETSENCRYPT_EMAIL}
networks:
- proxy-tier
restart: always