Ok, that sounds to work now, but only when the collabora url within Nextcloud settings is set to the collabora website external address (<office.domain.tld>
). When it is set to the local url http://collabora:9980, I have the following error:
Collabora Online unknown error: cURL error 52: Empty reply from server Please contact the “http://collabora:9980” administrator.
When using the external url the access is pretty long and I have latency navigating through the documents, Hope that could be solved if I succeed to connect through the local url. If someone could help me understand, that would be nice.
Below is my configurations. the reverse proxy and nextcloud configuration are broken down in two docker-compose.yml:
version: '2'
services:
proxy_nginx:
image: jwilder/nginx-proxy
container_name: proxy_nginx
privileged: true
restart: always
ports:
- "80:80"
- "443:443"
volumes:
- ./proxy/certs:/etc/nginx/certs:ro
- ./proxy/vhost.d:/etc/nginx/vhost.d
- ./proxy/conf.d:/etc/nginx/conf.d
- ./proxy/html:/usr/share/nginx/html
- /var/run/docker.sock:/tmp/docker.sock:ro
networks:
- front
proxy_letsencrypt:
image: jrcs/letsencrypt-nginx-proxy-companion
container_name: proxy_letsencrypt
privileged: true
volumes:
- ./proxy/certs:/etc/nginx/certs:rw
- /var/run/docker.sock:/var/run/docker.sock:ro
volumes_from:
- proxy_nginx
networks:
front:
external:
name: proxy-ssl
and
version: '2'
services:
app:
image: wonderfall/nextcloud
privileged: true
links:
- db
- collabora
environment:
- UID=1000
- GID=1000
- UPLOAD_MAX_SIZE=10G
- APC_SHM_SIZE=128M
- OPCACHE_MEM_SIZE=128
- CRON_PERIOD=15m
- VIRTUAL_HOST=<cloud.domain.tld>
- VIRTUAL_NETWORK=proxy-ssl
- VIRTUAL_PORT=8888
- LETSENCRYPT_HOST=<cloud.domain.tld>
- LETSENCRYPT_EMAIL=<admin@domain.tld>
volumes:
- ./data:/data
- ./config:/config
- ./apps:/apps2
networks:
- front
- back
db:
image: mariadb:10
restart: always
privileged: true
environment:
- MYSQL_ROOT_PASSWORD=<password>
- MYSQL_USER=user
- MYSQL_DATABASE=db
- MYSQL_PASSWORD=<password>
- TZ="America/Chicago"
volumes:
- ./mysql:/var/lib/mysql
networks:
- back
redis:
image: redis
networks:
- back
collabora:
image: collabora/code
expose:
- 9980
cap_add:
- MKNOD
environment:
- domain=<cloud.domain.tld>
- VIRTUAL_HOST=<office.domain.tld>
- VIRTUAL_NETWORK=proxy-ssl
- VIRTUAL_PORT=9980
- VIRTUAL_PROTO=https
- LETSENCRYPT_HOST=<office.domain.tld>
- LETSENCRYPT_EMAIL=<admin@domain.tld>
networks:
- front
networks:
front:
external:
name: proxy-ssl
back: