### Start OpenCloud with Traefik Source: https://github.com/opencloud-eu/opencloud-compose/blob/main/README.md Starts OpenCloud with Traefik reverse proxy and Let's Encrypt certificates. This can be done using explicit `-f` flags or by setting `COMPOSE_FILE` in your `.env` file. ```bash docker compose -f docker-compose.yml -f traefik/opencloud.yml up -d ``` ```bash COMPOSE_FILE=docker-compose.yml:traefik/opencloud.yml ``` ```bash docker compose up -d ``` -------------------------------- ### External Proxy Setup (Localhost Binding) Source: https://context7.com/opencloud-eu/opencloud-compose/llms.txt Configure OpenCloud and Collabora to bind to localhost interfaces, suitable for environments with an existing reverse proxy. This setup bypasses Traefik. ```bash # Behind an existing proxy (localhost-only binding) docker compose \ -f docker-compose.yml \ -f weboffice/collabora.yml \ -f external-proxy/opencloud.yml \ -f external-proxy/collabora.yml \ up -d # Nginx upstream example # upstream opencloud { server 127.0.0.1:9200; } # upstream wopi { server 127.0.0.1:9300; } # upstream collabora { server 127.0.0.1:9980; } # NOTE: When using Nginx Proxy Manager, do NOT enable "Block Common Exploits" # on the Proxy Host — it breaks desktop app authentication (403 Forbidden). # Exposed on all interfaces (use with caution) docker compose \ -f docker-compose.yml \ -f external-proxy/opencloud-exposed.yml \ up -d ``` -------------------------------- ### Create Environment File Source: https://github.com/opencloud-eu/opencloud-compose/blob/main/README.md Copy the example environment file to create your own configuration. This file is excluded from version control. ```bash cp .env.example .env ``` -------------------------------- ### Clone and Configure OpenCloud Compose Source: https://context7.com/opencloud-eu/opencloud-compose/llms.txt Steps to clone the repository, set the initial admin password, and optionally configure image tags or persistent host paths. Starts the base OpenCloud service without TLS. ```bash git clone https://github.com/opencloud-eu/opencloud-compose.git cd opencloud-compose cp .env.example .env # 1. Mandatory: set admin password before first start echo "INITIAL_ADMIN_PASSWORD=MyStr0ng!Pass" >> .env # 2. Optionally pin a specific image tag (defaults to 6.1.0) echo "OC_DOCKER_TAG=6.1.0" >> .env # 3. Optionally use persistent host paths instead of Docker volumes echo "OC_CONFIG_DIR=/srv/opencloud/config" >> .env echo "OC_DATA_DIR=/srv/opencloud/data" >> .env mkdir -p /srv/opencloud/{config,data} chown -R 1000:1000 /srv/opencloud # 4. Start (base only, no TLS — useful for testing behind an existing proxy) docker compose up -d # View logs docker compose logs -f opencloud ``` -------------------------------- ### Setup Monitoring with Prometheus Source: https://context7.com/opencloud-eu/opencloud-compose/llms.txt Configure monitoring for OpenCloud's proxy and optional collaboration services. Requires the 'opencloud-net' Docker network to be created beforehand. Metrics can be scraped from localhost. ```bash # Create the external network first docker network create opencloud-net docker compose \ -f docker-compose.yml \ -f monitoring/monitoring.yml \ -f monitoring/monitoring-collaboration.yml \ -f traefik/opencloud.yml \ up -d # Scrape metrics (from host or Prometheus) curl http://localhost:9205/metrics # OpenCloud proxy metrics curl http://localhost:9304/metrics # Collaboration (WOPI) metrics # Example Prometheus scrape config # scrape_configs: # - job_name: opencloud # static_configs: # - targets: [':9205', ':9304'] ``` -------------------------------- ### Configure Traefik with Local Self-Signed Certificates Source: https://context7.com/opencloud-eu/opencloud-compose/llms.txt Sets up Traefik using local self-signed certificates generated with mkcert for development. Configures Traefik to use these certificates and updates the hosts file. Starts the OpenCloud and Traefik services. ```bash # --- OR --- local self-signed certificates with mkcert (dev) mkcert -install mkcert -cert-file certs/opencloud.test.crt \ -key-file certs/opencloud.test.key \ "*.opencloud.test" opencloud.test cat > config/traefik/dynamic/certs.yml <<'EOF' tls: certificates: - certFile: /certs/opencloud.test.crt keyFile: /certs/opencloud.test.key stores: - default EOF cat >> .env <<'EOF' TRAEFIK_SERVICES_TLS_CONFIG=tls=true INSECURE=true EOF echo "127.0.0.1 cloud.opencloud.test traefik.opencloud.test" | sudo tee -a /etc/hosts docker compose -f docker-compose.yml -f traefik/opencloud.yml up -d # Access: https://cloud.opencloud.test ``` -------------------------------- ### Production with Collabora, Keycloak, and LDAP Source: https://github.com/opencloud-eu/opencloud-compose/blob/main/README.md A comprehensive production configuration that includes Collabora, Keycloak, and LDAP. This setup uses a layered approach with multiple compose files. ```bash COMPOSE_FILE=docker-compose.yml:weboffice/collabora.yml:idm/ldap-keycloak.yml:traefik/opencloud.yml:traefik/collabora.yml:traefik/ldap-keycloak.yml ``` -------------------------------- ### Production with Keycloak and LDAP Source: https://github.com/opencloud-eu/opencloud-compose/blob/main/README.md This configuration is for production deployments requiring Keycloak and LDAP integration. It layers multiple compose files for a comprehensive setup. ```bash COMPOSE_FILE=docker-compose.yml:idm/ldap-keycloak.yml:traefik/opencloud.yml:traefik/ldap-keycloak.yml ``` -------------------------------- ### Custom Compose File Overrides Example Source: https://github.com/opencloud-eu/opencloud-compose/blob/main/README.md Example of a custom docker-compose.override.yml file to add custom labels to the OpenCloud service. This allows for environment-specific configurations without altering the main compose files. ```yaml services: opencloud: labels: - "traefik.enable=true" - "traefik.http.routers.opencloud.rule=Host(`cloud.opencloud.test`)" - "traefik.http.services.opencloud.loadbalancer.server.port=80" - "traefik.http.routers.opencloud.tls.certresolver=my-resolver" ``` -------------------------------- ### Production with Monitoring Source: https://github.com/opencloud-eu/opencloud-compose/blob/main/README.md This configuration enables production deployments with integrated monitoring. It specifies the main compose file, monitoring configuration, and Traefik setup. ```bash COMPOSE_FILE=docker-compose.yml:monitoring/monitoring.yml:traefik/opencloud.yml ``` -------------------------------- ### Clone OpenCloud Compose Repository Source: https://github.com/opencloud-eu/opencloud-compose/blob/main/README.md Use this command to clone the repository for local development. Ensure you have Git installed. ```bash git clone https://github.com/opencloud-eu/opencloud-compose.git cd opencloud-compose ``` -------------------------------- ### Configure Traefik Reverse Proxy with Let's Encrypt Source: https://context7.com/opencloud-eu/opencloud-compose/llms.txt Sets up Traefik for HTTPS termination using Let's Encrypt. Requires setting the ACME mail and the public domain in the .env file. Starts the OpenCloud and Traefik services. ```bash # Let's Encrypt (public server) cat >> .env <<'EOF' TRAEFIK_ACME_MAIL=devops@example.com TRAEFIK_SERVICES_TLS_CONFIG=tls.certresolver=letsencrypt OC_DOMAIN=cloud.example.com EOF docker compose -f docker-compose.yml -f traefik/opencloud.yml up -d ``` -------------------------------- ### Full Stack Deployment with COMPOSE_FILE Source: https://context7.com/opencloud-eu/opencloud-compose/llms.txt Manage a complex production deployment using the COMPOSE_FILE variable in .env for a simplified 'docker compose up -d' command. This example includes OpenCloud, Collabora, Keycloak/LDAP, Tika, ClamAV, Radicale, and Traefik. ```bash # Production: OpenCloud + Collabora + Keycloak/LDAP + Tika + ClamAV + Radicale cat > .env <<'EOF' COMPOSE_FILE=docker-compose.yml:weboffice/collabora.yml:idm/ldap-keycloak.yml:search/tika.yml:antivirus/clamav.yml:radicale/radicale.yml:traefik/opencloud.yml:traefik/collabora.yml:traefik/ldap-keycloak.yml OC_DOMAIN=cloud.example.com COLLABORA_DOMAIN=collabora.example.com WOPISERVER_DOMAIN=wopiserver.example.com KEYCLOAK_DOMAIN=keycloak.example.com TRAEFIK_ACME_MAIL=devops@example.com TRAEFIK_SERVICES_TLS_CONFIG=tls.certresolver=letsencrypt INITIAL_ADMIN_PASSWORD=ChangeMe! KEYCLOAK_ADMIN_PASSWORD=KeycloakAdmin! LDAP_BIND_PASSWORD=LdapAdmin! START_ADDITIONAL_SERVICES=antivirus INSECURE=false EOF docker compose up -d docker compose logs -f ``` -------------------------------- ### Generate Local Certificates with mkcert Source: https://github.com/opencloud-eu/opencloud-compose/blob/main/README.md Use mkcert to generate self-signed TLS certificates for local development domains. This process includes installing mkcert, trusting its local CA, and generating certificate files. ```bash # Install mkcert (if not already installed) # macOS: brew install mkcert # Linux: apt install mkcert or similar # Windows: choco install mkcert or download from GitHub # Install the local CA mkcert -install # Generate certificates for your local domains mkcert -cert-file certs/opencloud.test.crt -key-file certs/opencloud.test.key "*.opencloud.test" opencloud.test ``` -------------------------------- ### Integrate Authelia as OIDC Provider Source: https://context7.com/opencloud-eu/opencloud-compose/llms.txt Configures OpenCloud to use Authelia as its OIDC provider. This setup disables access-token verification and sets role assignment from the 'groups' claim. Ensure Authelia is running and configured with an OpenCloud client. Environment variables for client ID and scopes should be set in .env. ```bash cat >> .env <<'EOF'\ IDP_ISSUER_URL=https://auth.example.com\ OC_OIDC_CLIENT_ID=opencloud\ OC_OIDC_CLIENT_SCOPES=openid profile email groups\ EOF ``` ```bash docker compose \ -f docker-compose.yml \ -f idm/external-authelia.yml \ -f traefik/opencloud.yml \ up -d ``` -------------------------------- ### Enable Monitoring Capabilities Source: https://github.com/opencloud-eu/opencloud-compose/blob/main/README.md Set up monitoring for OpenCloud services to gather metrics. This requires creating an external network named 'opencloud-net' beforehand. ```bash docker compose -f docker-compose.yml -f monitoring/monitoring.yml -f traefik/opencloud.yml up -d ``` ```env COMPOSE_FILE=docker-compose.yml:monitoring/monitoring.yml:traefik/opencloud.yml ``` ```bash docker network create opencloud-net ``` -------------------------------- ### Add Local Domains to /etc/hosts Source: https://github.com/opencloud-eu/opencloud-compose/blob/main/README.md For local development, map OpenCloud and Traefik hostnames to your local machine by editing the `/etc/hosts` file. ```bash 127.0.0.1 cloud.opencloud.test 127.0.0.1 traefik.opencloud.test 127.0.0.1 keycloak.opencloud.test ``` -------------------------------- ### Deploy OpenCloud with Collabora Online Source: https://github.com/opencloud-eu/opencloud-compose/blob/main/README.md Integrates Collabora Online for document editing. Requires DNS entries for OpenCloud, Collabora, and WOPI server subdomains. ```bash docker compose -f docker-compose.yml -f weboffice/collabora.yml -f traefik/opencloud.yml -f traefik/collabora.yml up -d ``` ```bash COMPOSE_FILE=docker-compose.yml:weboffice/collabora.yml:traefik/opencloud.yml:traefik/collabora.yml ``` ```bash 127.0.0.1 collabora.opencloud.test 127.0.0.1 wopiserver.opencloud.test ``` -------------------------------- ### Production with Collabora Source: https://github.com/opencloud-eu/opencloud-compose/blob/main/README.md Use this configuration to deploy production with Collabora support. It specifies multiple compose files, with later files overriding earlier ones. ```bash COMPOSE_FILE=docker-compose.yml:weboffice/collabora.yml:traefik/opencloud.yml:traefik/collabora.yml ``` -------------------------------- ### Configure Persistent Storage Paths Source: https://github.com/opencloud-eu/opencloud-compose/blob/main/README.md Configure OC_CONFIG_DIR and OC_DATA_DIR environment variables for persistent storage in production. Ensure the directories exist and have the correct ownership. ```bash OC_CONFIG_DIR=/path/to/opencloud/config OC_DATA_DIR=/path/to/opencloud/data ``` ```bash mkdir -p /path/to/opencloud/{config,data} chown -R 1000:1000 /path/to/opencloud ``` -------------------------------- ### Enable CalDAV and CardDAV with Radicale Source: https://github.com/opencloud-eu/opencloud-compose/blob/main/README.md Configure OpenCloud Compose to enable CalDAV (calendars, to-do lists) and CardDAV (contacts) server functionality using Radicale. DNS requirements must be satisfied. ```bash docker compose -f docker-compose.yml -f radicale/radicale.yml -f traefik/opencloud.yml up -d ``` ```env COMPOSE_FILE=docker-compose.yml:radicale/radicale.yml:traefik/opencloud.yml ``` -------------------------------- ### Configure Collabora Online Integration Source: https://context7.com/opencloud-eu/opencloud-compose/llms.txt Adds Collabora Online CODE editor and OpenCloud WOPI bridge. Configures domains, admin credentials, and SSL settings for Collabora. SSL termination is handled by Traefik. ```bash cat >> .env <<'EOF' COLLABORA_DOMAIN=collabora.example.com WOPISERVER_DOMAIN=wopiserver.example.com COLLABORA_ADMIN_USER=admin COLLABORA_ADMIN_PASSWORD=secret COLLABORA_SSL_ENABLE=false # SSL terminated by Traefik COLLABORA_SSL_VERIFICATION=false EOF ``` -------------------------------- ### Configure External Identity Provider with Auto-provisioning Source: https://context7.com/opencloud-eu/opencloud-compose/llms.txt Integrates OpenCloud with an external OIDC provider, enabling user auto-provisioning into OpenCloud's LDAP. Required environment variables like IDP_ISSUER_URL must be set in the .env file. The built-in identity management services are disabled. ```bash cat >> .env <<'EOF'\ IDP_ISSUER_URL=https://auth.example.com/realms/myRealm\ IDP_DOMAIN=auth.example.com\ IDP_ACCOUNT_URL=https://auth.example.com/realms/myRealm/account\ OC_OIDC_CLIENT_ID=opencloud-web\ OC_OIDC_CLIENT_SCOPES=openid profile email roles\ PROXY_ROLE_ASSIGNMENT_OIDC_CLAIM=roles\ LDAP_BIND_PASSWORD=ldapadmin\ EOF ``` ```bash docker compose \ -f docker-compose.yml \ -f idm/external-idp.yml \ -f traefik/opencloud.yml \ up -d ``` -------------------------------- ### Deploy Radicale CalDAV/CardDAV Source: https://context7.com/opencloud-eu/opencloud-compose/llms.txt Use this configuration to add Radicale for CalDAV and CardDAV services, enabling user authentication via OpenCloud's reverse proxy. Ensure the RADICALE_DATA_DIR is set and the directory exists. ```bash docker compose \ -f docker-compose.yml \ -f radicale/radicale.yml \ -f traefik/opencloud.yml \ up -d # CalDAV endpoint (authenticated via OpenCloud session) # https://cloud.example.com/caldav/ # CardDAV endpoint # https://cloud.example.com/carddav/ # Configure a CalDAV client (e.g. Thunderbird): # Server: https://cloud.example.com/caldav/ # Username: # Password: # Persistent data storage echo "RADICALE_DATA_DIR=/srv/radicale/data" >> .env mkdir -p /srv/radicale/data chown -R 1000:1000 /srv/radicale ``` -------------------------------- ### Deploy OpenCloud with Keycloak and LDAP Source: https://github.com/opencloud-eu/opencloud-compose/blob/main/README.md Deploys OpenCloud with Keycloak for identity management and LDAP for user directory. Ensure DNS entries are configured for OpenCloud and Keycloak subdomains. ```bash docker compose -f docker-compose.yml -f idm/ldap-keycloak.yml -f traefik/opencloud.yml -f traefik/ldap-keycloak.yml up -d ``` ```bash COMPOSE_FILE=docker-compose.yml:idm/ldap-keycloak.yml:traefik/opencloud.yml:traefik/ldap-keycloak.yml ``` -------------------------------- ### Enable Full Text Search with Apache Tika Source: https://github.com/opencloud-eu/opencloud-compose/blob/main/README.md Use this configuration to enable full-text search capabilities powered by Apache Tika. Ensure DNS requirements are met. ```bash docker compose -f docker-compose.yml -f search/tika.yml -f traefik/opencloud.yml up -d ``` ```env COMPOSE_FILE=docker-compose.yml:search/tika.yml:traefik/opencloud.yml ``` -------------------------------- ### Create Custom Overrides File Source: https://context7.com/opencloud-eu/opencloud-compose/llms.txt Use this command to create a custom override file named `my-overrides.yml` in the `custom/` directory. This file allows you to specify environment variables or service configurations that will be applied on top of the base `docker-compose.yml`. ```bash mkdir -p custom cat > custom/my-overrides.yml <<'EOF' services: opencloud: environment: OC_PASSWORD_POLICY_MIN_CHARACTERS: "12" EOF ``` -------------------------------- ### View Specific Service Logs Source: https://github.com/opencloud-eu/opencloud-compose/blob/main/README.md Command to view the logs of a specific service (e.g., 'opencloud') managed by Docker Compose in a follow mode. ```bash docker compose logs -f opencloud ``` -------------------------------- ### Configure Keycloak + LDAP Identity Management Source: https://context7.com/opencloud-eu/opencloud-compose/llms.txt Sets up Keycloak as an OIDC identity provider and OpenLDAP for user management. Environment variables for Keycloak and LDAP credentials must be set in a .env file. OpenCloud will delegate authentication to Keycloak. ```bash cat >> .env <<'EOF'\ KEYCLOAK_DOMAIN=keycloak.example.com\ KEYCLOAK_ADMIN=kcadmin\ KEYCLOAK_ADMIN_PASSWORD=SuperSecret!\ KC_DB_USERNAME=keycloak\ KC_DB_PASSWORD=dbpass\ LDAP_BIND_PASSWORD=ldapadmin\ EOF ``` ```bash docker compose \ -f docker-compose.yml \ -f idm/ldap-keycloak.yml \ -f traefik/opencloud.yml \ -f traefik/ldap-keycloak.yml \ up -d ``` -------------------------------- ### Enable ClamAV Anti-Virus Scanning Source: https://github.com/opencloud-eu/opencloud-compose/blob/main/README.md Activate ClamAV for scanning uploaded files. Adjust the START_ADDITIONAL_SERVICES variable in your .env file to include 'antivirus'. ```bash docker compose -f docker-compose.yml -f antivirus/clamav.yml -f traefik/opencloud.yml up -d ``` ```env COMPOSE_FILE=docker-compose.yml:antivirus/clamav.yml:traefik/opencloud.yml ``` ```env START_ADDITIONAL_SERVICES="antivirus" ``` -------------------------------- ### View All Docker Compose Logs Source: https://github.com/opencloud-eu/opencloud-compose/blob/main/README.md Command to view the logs of all running services managed by Docker Compose in a follow mode. ```bash docker compose logs -f ``` -------------------------------- ### Enable Full-Text Search with Apache Tika Source: https://context7.com/opencloud-eu/opencloud-compose/llms.txt Adds an Apache Tika container for full-text search capabilities, enabling content extraction from various file types. The default Tika image is slim; use TIKA_IMAGE=apache/tika:latest-full for advanced OCR. The compose files for OpenCloud and Tika, along with Traefik, are required. ```bash docker compose \ -f docker-compose.yml \ -f search/tika.yml \ -f traefik/opencloud.yml \ up -d ``` ```bash curl http://localhost:9998/tika ``` ```bash echo "TIKA_IMAGE=apache/tika:latest-full" >> .env docker compose ... up -d ``` -------------------------------- ### Configure S3 Object Storage Source: https://context7.com/opencloud-eu/opencloud-compose/llms.txt Switch OpenCloud's user-data storage to an S3-compatible endpoint. System metadata remains on local storage. Ensure S3 credentials and bucket are correctly configured in the .env file. ```bash cat >> .env <<'EOF' DECOMPOSEDS3_ENDPOINT=https://s3.amazonaws.com DECOMPOSEDS3_REGION=eu-central-1 DECOMPOSEDS3_ACCESS_KEY=AKIAIOSFODNN7EXAMPLE DECOMPOSEDS3_SECRET_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY DECOMPOSEDS3_BUCKET=my-opencloud-bucket EOF docker compose \ -f docker-compose.yml \ -f storage/decomposeds3.yml \ -f traefik/opencloud.yml \ up -d # For local MinIO testing (default endpoint is http://minio:9000): # docker compose -f docker-compose.yml -f storage/decomposeds3.yml \ # -f traefik/opencloud.yml up -d # DECOMPOSEDS3_ENDPOINT=http://minio:9000 (default) ``` -------------------------------- ### Deploy Collabora Online Source: https://context7.com/opencloud-eu/opencloud-compose/llms.txt Deploys Collabora Online for document editing. Ensure DNS entries are set up before running. The COMPOSE_FILE environment variable can be used as an alternative to command-line flags. ```bash docker compose \ -f docker-compose.yml \ -f weboffice/collabora.yml \ -f traefik/opencloud.yml \ -f traefik/collabora.yml \ up -d ``` -------------------------------- ### Set Initial Admin Password Source: https://github.com/opencloud-eu/opencloud-compose/blob/main/README.md Set the INITIAL_ADMIN_PASSWORD environment variable in your .env file before the first startup of OpenCloud. This is required only when using the built-in LDAP server (idm). Changes after the first startup will be ignored. ```bash INITIAL_ADMIN_PASSWORD=your-secure-password-here ``` -------------------------------- ### Create Custom Override Directory Source: https://github.com/opencloud-eu/opencloud-compose/blob/main/README.md Command to create a directory for custom Docker Compose overrides. This directory is typically ignored by git for local customizations. ```bash mkdir -p custom ``` -------------------------------- ### Enable Let's Encrypt with ACME Challenge Source: https://github.com/opencloud-eu/opencloud-compose/blob/main/README.md Configure Traefik to use Let's Encrypt for TLS certificates by setting the email address for ACME challenges and enabling the Let's Encrypt certificate resolver. ```bash # In your .env file TRAEFIK_LETSENCRYPT_EMAIL=devops@your-domain.tld TRAEFIK_SERVICES_TLS_CONFIG="tls.certresolver=letsencrypt" ``` -------------------------------- ### Use Local Certificates with Traefik Source: https://github.com/opencloud-eu/opencloud-compose/blob/main/README.md Enable Traefik to use locally provided TLS certificates by setting the appropriate environment variable. This is useful for development or when managing certificates manually. ```bash # In your .env file TRAEFIK_SERVICES_TLS_CONFIG="tls=true" ``` -------------------------------- ### Configure OpenCloud Behind External Proxy Source: https://github.com/opencloud-eu/opencloud-compose/blob/main/README.md Integrate OpenCloud Compose with an existing reverse proxy like Nginx or Caddy. Ensure your external proxy handles DNS and SSL termination. ```bash docker compose -f docker-compose.yml -f weboffice/collabora.yml -f external-proxy/opencloud.yml -f external-proxy/collabora.yml up -d ``` ```env COMPOSE_FILE=docker-compose.yml:weboffice/collabora.yml:external-proxy/opencloud.yml:external-proxy/collabora.yml ``` -------------------------------- ### Enable ClamAV Antivirus Scanning Source: https://context7.com/opencloud-eu/opencloud-compose/llms.txt Integrates ClamAV for scanning uploaded files, aborting infected ones. Ensure ANTIVIRUS_MAX_SCAN_SIZE in .env matches ClamAV's CLAMD_CONF_StreamMaxLength in the compose file. The clamav container logs can be monitored for signature updates. ```bash cat >> .env <<'EOF'\ START_ADDITIONAL_SERVICES=antivirus\ ANTIVIRUS_MAX_SCAN_SIZE=200MB\ # Also adjust ClamAV's CLAMD_CONF_StreamMaxLength in antivirus/clamav.yml to match\ EOF ``` ```bash docker compose \ -f docker-compose.yml \ -f antivirus/clamav.yml \ -f traefik/opencloud.yml \ up -d ``` ```bash docker compose logs -f clamav ``` -------------------------------- ### Configure Traefik Dynamic TLS Certificates Source: https://github.com/opencloud-eu/opencloud-compose/blob/main/README.md Define TLS certificates in Traefik's dynamic configuration by specifying the paths to your certificate and key files. Ensure these files are placed in the designated certs directory. ```yaml tls: certificates: - certFile: /certs/opencloud.test.crt keyFile: /certs/opencloud.test.key stores: - default ``` -------------------------------- ### Verify Collabora Health Source: https://context7.com/opencloud-eu/opencloud-compose/llms.txt Checks the health status of the Collabora server. This command should be run after deploying Collabora. ```bash curl -f https://wopiserver.example.com/hosting/discovery ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.