version: '2.2' networks: proxy-tier: external: name: nginx-proxy services: web: image: nginx volumes: - ./config/nginx.conf:/etc/nginx/nginx.conf:ro - /etc/localtime:/etc/localtime: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 - /etc/localtime:/etc/localtime:ro networks: - proxy-tier restart: always db: image: mariadb volumes: - /var/lib/nextcloud/db:/var/lib/mysql - /backups/nextcloud:/backups - /etc/localtime:/etc/localtime:ro 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