OpenCloud
Use these steps to run OpenCloud from the official OpenCloud Compose repository.
Clone the Compose Repository
Clone the OpenCloud Compose repository and move into it:
git clone https://github.com/opencloud-eu/opencloud-compose.git
cd opencloud-compose
Create the Environment File
Copy the example environment file:
cp .env.example .env
Open .env for editing:
vim .env
Configure OpenCloud
Disable insecure mode, set your domain names, and set the initial admin password:
# Disable insecure mode.
# INSECURE=true
# Set your domain names.
TRAEFIK_DOMAIN=traefik.YOUR.DOMAIN
OC_DOMAIN=cloud.YOUR.DOMAIN
COLLABORA_DOMAIN=collabora.YOUR.DOMAIN
WOPISERVER_DOMAIN=wopiserver.YOUR.DOMAIN
# Set your admin password.
INITIAL_ADMIN_PASSWORD=YourSecurePassword
Use an External Proxy
If you are using an external proxy, such as Nginx Proxy Manager, uncomment this COMPOSE_FILE value in .env:
COMPOSE_FILE=docker-compose.yml:weboffice/collabora.yml:external-proxy/opencloud.yml:external-proxy/collabora.yml
Configure Nginx Proxy Manager
When using Nginx Proxy Manager for OpenCloud, add this to the proxy host's advanced configuration:
# Allows unlimited file size uploads for the Tus protocol.
client_max_body_size 0;
# Required for Server-Sent Events and real-time syncing/notifications.
proxy_buffering off;
proxy_request_buffering off;
# Prevents dropped connections during long uploads or syncs.
proxy_read_timeout 3600s;
proxy_send_timeout 3600s;
keepalive_timeout 3600s;
keepalive_requests 100000;
# Stops Nginx from checking other upstream servers on failure.
proxy_next_upstream off;
# Security hardening.
add_header X-Frame-Options "SAMEORIGIN";
add_header X-Content-Type-Options "nosniff";
add_header X-XSS-Protection "1; mode=block";
add_header Referrer-Policy "no-referrer-when-downgrade";
# Forces browsers to use HTTPS for future requests.
add_header Strict-Transport-Security "max-age=15768000; includeSubDomains; preload" always;
Start OpenCloud
Run Docker Compose from the opencloud-compose directory:
docker compose up -d