Repolode
owncloud

owncloud/ocis

Self-hosted file sync and share platform from ownCloud, built as a single Go binary with WebDAV and CS3 APIs.

Open-source alternative to:DropboxGoogle Drive

Stars
2,164
Forks
282
Open issues
615
Last commit
13 hours ago

What is it?

ownCloud Infinite Scale (oCIS) is a self-hosted file sync and share platform. It ships as a single binary or container and can scale from a Raspberry Pi to a Kubernetes cluster by changing configuration and starting services as needed. Its multiservice architecture lets operators choose which functions to run and reuse existing services such as Keycloak.

Clients include the bundled web UI, plus Android, iOS and desktop apps from ownCloud. The backend is built on reva and exposes WebDAV and CS3 APIs. Users authenticate via OpenID Connect, using either an external identity provider or the embedded LibreGraph Connect IdP. Collaborative editing is supported through integrations with Collabora Online, OnlyOffice Docs and Microsoft Office Online via a WOPI gateway.

A local demo instance can be started with Docker or from source using Go 1.25.10 or later, with no external database or identity provider required.

Key features

  • 01Single binary or container that scales from small devices to Kubernetes clusters.
  • 02Sync and share via WebDAV and CS3 APIs, with web, Android, iOS and desktop clients.
  • 03OpenID Connect authentication with external IdPs like Keycloak or the embedded LibreGraph Connect.
  • 04Web office integration with Collabora Online, OnlyOffice and Microsoft Office Online through WOPI.
  • 05Multiservice architecture that lets operators run only the services they need.

Use cases

  • Running a private file sync and share service on a home server or small VM.
  • Deploying a team file platform on Kubernetes with an existing Keycloak instance.
  • Adding collaborative document editing to self-hosted file storage.

Quick start

  1. 1

    Pull the oCIS Docker image

    docker pull owncloud/ocis
  2. 2

    Initialize the configuration

    docker run --rm -it --mount type=bind,source=$HOME/ocis/ocis-config,target=/etc/ocis --mount type=bind,source=$HOME/ocis/ocis-data,target=/var/lib/ocis owncloud/ocis init --insecure yes
  3. 3

    Start the server, then open localhost:9200 and log in with the printed user and password

    docker run --name ocis_runtime --rm -it -p 9200:9200 --mount type=bind,source=$HOME/ocis/ocis-config,target=/etc/ocis --mount type=bind,source=$HOME/ocis/ocis-data,target=/var/lib/ocis -e OCIS_INSECURE=true -e PROXY_HTTP_ADDR=0.0.0.0:9200 -e OCIS_URL=https://localhost:9200 owncloud/ocis

Things to know

  • Building from source requires Go 1.25.10 or newer and a C compiler, and the source build is recommended only for development.
  • Some stable builds provided by ownCloud GmbH are subject to an End User License Agreement.

In collections

Topics

FAQ

What is ocis?
Self-hosted file sync and share platform from ownCloud, built as a single Go binary with WebDAV and CS3 APIs. ownCloud Infinite Scale (oCIS) is a self-hosted file sync and share platform. It ships as a single binary or container and can scale from a Raspberry Pi to a Kubernetes cluster by changing configuration and starting services as needed. Its multiservice architecture lets operators choose which functions to run and reuse existing services such as Keycloak.
Is ocis free to use? What license does it have?
ocis is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
Is ocis still maintained?
Actively maintained. The last commit to ocis was on Oct 24, 2026.
What can I use ocis for?
Running a private file sync and share service on a home server or small VM. Deploying a team file platform on Kubernetes with an existing Keycloak instance. Adding collaborative document editing to self-hosted file storage.
How do I install ocis?
Pull the oCIS Docker image: docker pull owncloud/ocis Initialize the configuration: docker run --rm -it --mount type=bind,source=$HOME/ocis/ocis-config,target=/etc/ocis --mount type=bind,source=$HOME/ocis/ocis-data,target=/var/lib/ocis owncloud/ocis init --insecure yes Start the server, then open localhost:9200 and log in with the printed user and password: docker run --name ocis_runtime --rm -it -p 9200:9200 --mount type=bind,source=$HOME/ocis/ocis-config,target=/etc/ocis --mount type=bind,source=$HOME/ocis/ocis-data,target=/var/lib/ocis -e OCIS_INSECURE=true -e PROXY_HTTP_ADDR=0.0.0.0:9200 -e OCIS_URL=https://localhost:9200 owncloud/ocis
Where can I get ocis?
The source code and installation instructions are on GitHub: https://github.com/owncloud/ocis

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects