collabora/compose.yml
Moritz f0585179c3
All checks were successful
continuous-integration/drone/tag Build is passing
continuous-integration/drone/push Build is passing
chore: publish 3.3.0+24.04.13.3.1 release
2025-05-27 17:41:03 +02:00

85 lines
2.0 KiB
YAML

---
version: "3.8"
services:
web:
image: "nginx:1.28.0"
environment:
- STACK_NAME
- DOMAIN=${DOMAIN}
configs:
- source: nginx_conf
target: /etc/nginx/nginx.conf
networks:
- proxy
- internal
deploy:
update_config:
failure_action: rollback
labels:
- "traefik.enable=true"
- "traefik.http.services.${STACK_NAME}.loadbalancer.server.port=80"
- "traefik.http.routers.${STACK_NAME}.rule=Host(`${DOMAIN}`)"
- "traefik.http.routers.${STACK_NAME}.entrypoints=web-secure"
- "traefik.http.routers.${STACK_NAME}.tls.certresolver=${LETS_ENCRYPT_ENV}"
healthcheck:
test:
[
"CMD-SHELL",
"curl -s -N localhost/hosting/capabilities | grep Collabora",
]
interval: 30s
timeout: 10s
retries: 10
start_period: 5m
app:
image: "collabora/code:24.04.13.3.1"
cap_add:
- MKNOD
secrets:
- admin_password
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:9980"]
interval: 30s
timeout: 10s
retries: 10
start_period: 2m
configs:
- source: coolwsd_xml
target: /etc/coolwsd/coolwsd.xml
uid: "104" # lool
gid: "106" # lool
environment:
- ADMIN_USERNAME
- DOMAIN=${DOMAIN}
- DONT_GEN_SSL_CERT=true
- NEXTCLOUD_DOMAIN=${NEXTCLOUD_DOMAIN}
- FRAME_ANCESTORS
networks:
- internal
deploy:
labels:
- "coop-cloud.${STACK_NAME}.version=3.3.0+24.04.13.3.1"
- "coop-cloud.${STACK_NAME}.timeout=${TIMEOUT:-120}"
networks:
proxy:
external: true
internal:
secrets:
admin_password:
external: true
name: ${STACK_NAME}_admin_password_${SECRET_ADMIN_PASSWORD_VERSION}
configs:
nginx_conf:
name: ${STACK_NAME}_nginx_conf_${NGINX_CONF_VERSION}
file: nginx.conf.tmpl
template_driver: golang
coolwsd_xml:
name: ${STACK_NAME}_coolwsd_xml_${COOLWSD_XML_VERSION}
file: coolwsd.xml.tmpl
template_driver: golang