Merge pull request #888 from BinkyTwin/codex/add-owncloud-infinite-scale-template

feat: add ownCloud Infinite Scale template
This commit is contained in:
Mauricio Siu
2026-07-08 10:18:34 -06:00
committed by GitHub
4 changed files with 141 additions and 0 deletions

View File

@@ -0,0 +1,41 @@
version: "3.8"
services:
gateway:
image: nginx:1.27-alpine
restart: unless-stopped
depends_on:
- owncloud-infinite-scale
expose:
- "8080"
volumes:
- ../files/etc/nginx/conf.d/default.conf:/etc/nginx/conf.d/default.conf:ro
owncloud-infinite-scale:
image: owncloud/ocis:8.0.3
restart: unless-stopped
entrypoint:
- /bin/sh
command: ["-c", "ocis init --insecure yes || true; ocis server"]
expose:
- "9200"
environment:
OCIS_URL: ${OCIS_URL}
OCIS_LOG_LEVEL: ${OCIS_LOG_LEVEL}
OCIS_INSECURE: "true"
PROXY_TLS: "false"
PROXY_HTTP_ADDR: 0.0.0.0:9200
IDM_ADMIN_PASSWORD: ${IDM_ADMIN_PASSWORD}
SETTINGS_GRPC_ADDR: 0.0.0.0:9191
GATEWAY_GRPC_ADDR: 0.0.0.0:9142
STORAGE_USERS_DATA_GATEWAY_URL: http://owncloud-infinite-scale:9200/data
THUMBNAILS_FILESYSTEMSTORAGE_ROOT: /var/lib/ocis-thumbnails
volumes:
- owncloud-infinite-scale-config:/etc/ocis
- owncloud-infinite-scale-data:/var/lib/ocis
- owncloud-infinite-scale-thumbnails:/var/lib/ocis-thumbnails
volumes:
owncloud-infinite-scale-config:
owncloud-infinite-scale-data:
owncloud-infinite-scale-thumbnails:

View File

@@ -0,0 +1,19 @@
{
"id": "owncloud-infinite-scale",
"name": "ownCloud Infinite Scale",
"version": "8.0.3",
"description": "ownCloud Infinite Scale is a modern file sync and share platform with WebDAV and ownCloud client support.",
"logo": "owncloud-infinite-scale.svg",
"links": {
"github": "https://github.com/owncloud/ocis",
"website": "https://owncloud.com/infinite-scale/",
"docs": "https://doc.owncloud.com/ocis/latest/"
},
"tags": [
"storage",
"files",
"sync",
"webdav",
"collaboration"
]
}

View File

@@ -0,0 +1,11 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" role="img" aria-label="ownCloud Infinite Scale">
<rect width="128" height="128" rx="24" fill="#1f6feb"/>
<path
fill="#fff"
d="M40 84h48a22 22 0 0 0 2-43 30 30 0 0 0-56-7 24 24 0 0 0 6 50Zm1-14a10 10 0 0 1-2-20l7-1 2-7a16 16 0 0 1 31 4l1 7 7 1a8 8 0 0 1-1 16H41Z"
/>
<path
fill="#bfe3ff"
d="M51 65c8-12 18-12 26 0 2 3 5 5 9 5h7c-5 8-16 11-25 6-5-3-7-3-12 0-8 5-20 2-25-6h8c5 0 9-2 12-5Z"
/>
</svg>

After

Width:  |  Height:  |  Size: 485 B

View File

@@ -0,0 +1,70 @@
[variables]
main_domain = "${domain}"
owncloud_url = "https://${main_domain}"
admin_password = "${password:32}"
log_level = "info"
[[config.domains]]
serviceName = "gateway"
port = 8080
host = "${main_domain}"
path = "/"
[[config.mounts]]
filePath = "/etc/nginx/conf.d/default.conf"
content = """
map $http_upgrade $connection_upgrade {
default upgrade;
"" close;
}
server {
listen 8080;
client_max_body_size 0;
proxy_request_buffering off;
location / {
proxy_pass http://owncloud-infinite-scale:9200;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Proto https;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_read_timeout 3600s;
proxy_send_timeout 3600s;
}
}
"""
[[config.mounts]]
filePath = "README.md"
content = """# ownCloud Infinite Scale
This template deploys ownCloud Infinite Scale (oCIS), a modern file sync and share platform with WebDAV and ownCloud client support.
## Access
- URL: `https://${main_domain}`
- Admin user: `admin`
- Admin password: the generated `admin_password` value
The `owncloud_url` value must use `https://` because oCIS only supports HTTPS public URLs (its built-in identity provider rejects plain HTTP issuers). A bundled nginx gateway sits in front of oCIS and forwards requests with `X-Forwarded-Proto: https`, which keeps oCIS from redirecting every request when it runs behind the Dokploy proxy. Enable HTTPS on the Dokploy domain so the public URL matches `OCIS_URL`.
## Storage
The template creates persistent volumes for:
- `/etc/ocis` configuration
- `/var/lib/ocis` application data and user storage
- `/var/lib/ocis-thumbnails` generated thumbnails
Back up these volumes together before upgrades or migrations.
"""
[config.env]
OCIS_URL = "${owncloud_url}"
IDM_ADMIN_PASSWORD = "${admin_password}"
OCIS_LOG_LEVEL = "${log_level}"