ownCloud is a free, open source file management & sync project written in Go and released under Apache-2.0. It has 2,122 GitHub stars, 274 forks and 628 open issues, and was last pushed 5 hours ago. On this registry it ranks #7 of 12 tracked projects in File Management & Sync, and is listed as an open source replacement for 2 paid products, with 5 head-to-head comparisons available. It gained 6 stars over the last 6 tracked days.

What is ownCloud?

What it is

ownCloud Infinite Scale (oCIS) is a self-hosted file sync and share server written in Go under the Apache-2.0 license. It lives in the ownCloud ecosystem and uses reva as a scalable backend with open APIs such as WebDAV and CS3. It presents itself as the foundation for a data management platform and as an open alternative to Google Workspace and Google Drive.

The concrete problem is that organizations need a place to store, synchronize, share, and edit files without relying on a commercial cloud service. oCIS addresses this by providing a server that can run inside the operator's own environment while still supporting web, Android, iOS, and desktop clients. It also supports integration with web office applications, so users can open and collaboratively edit documents through the same file-sharing platform.

Key capabilities

  • Synchronizes and shares file spaces through ownCloud clients for web, Android, iOS, and desktop.
  • Runs a scalable server backend based on reva and exposes open APIs such as WebDAV and CS3.
  • Supports self-hosted deployment with Docker, including bind mounts for configuration and data.
  • Integrates web office applications such as Collabora Online, OnlyOffice Docs, and Microsoft Office Online Server.
  • Supports collaborative editing through the WOPI application gateway.
  • Provides an administrative and user-facing setup path through the official documentation and Docker quickstart.

Who uses it and how

  • Teams that need an open alternative to Google Workspace or Google Drive can host oCIS for file sync and sharing.
  • Self-hosters can initialize an instance with Docker, create local config and data directories, and run the server on port 9200.
  • Users access the service through web, Android, iOS, or desktop clients that synchronize files with the backend.
  • Organizations that edit office documents can connect oCIS to Collabora Online, OnlyOffice Docs, or Microsoft Office Online Server for in-browser collaborative work.
  • Operators can follow the minimalistic Docker evaluation guide and use the printed credentials for initial access.

Getting started

The README quickstart uses the owncloud/ocis Docker image. Operators create configuration and data directories, run an initialization container, then start a runtime container on port 9200 and sign in at localhost:9200 with the printed user and password.

When to use it — and when not to

Choose oCIS when the goal is a self-hosted open alternative to Google Workspace or Google Drive and the operator can manage Docker, local configuration, data storage, and the exposed server URL. Avoid it when a fully hosted service is required, because the README excerpt gives a Docker-based self-hosted path and does not mention a hosted option. Metadata lists zero contributors, a repository age of 0 years, and 628 open issues, so operators should treat it as early-stage and plan maintenance.

project readme (upstream, from github) — read inline

ownCloud Infinite Scale

Matrix Build Status Security Rating Coverage Acceptance Test Coverage Go Report Go Doc oCIS docker image License

Introduction

ownCloud Infinite Scale (oCIS) is the new file sync & share platform that will be the foundation of your data management platform.

Make sure to download the latest released version today!

Quickstart

For details of the commands used see the Minimalistic Evaluation Guide for oCIS with Docker.

mkdir -p $HOME/ocis/ocis-config \
mkdir -p $HOME/ocis/ocis-data
sudo chown -Rfv 1000:1000 $HOME/ocis/
docker pull owncloud/ocis
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
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

Use as URL localhost:9200 and the user/password printed.

Overview

Clients

Infinite Scale allows the following ownCloud clients:

to synchronize and share file spaces with a scalable server backend based on reva using open and well-defined APIs like WebDAV and CS3.

Web Office Applications

Infinite Scale can integrate web office applications such as:

Collaborative editing is supported by the WOPI application gateway.

Authentication

Users are authenticated via OpenID Connect using either an external IdP like Keycloak or the embedded LibreGraph Connect identity provider.

Installation

With focus on easy install and operation, Infinite Scale is delivered as a single binary or container that allows scaling from a Raspberry Pi to a Kubernetes cluster by changing the configuration and starting multiple services as needed. The multiservice architecture allows tailoring the functionality to your needs and reusing services that may already be in place like when using Keycloak. See the details below for various installation options.

Important Readings

Before starting to set up an instance, we highly recommend reading the Prerequisites, the Deployment section and especially the General Information page describing and explaining information that is valid for all deployment types.

Run ownCloud Infinite Scale

Use the Official Documentation

See the Install Infinite Scale on a Server for a production ready deployment starting with a Raspberry Pi, a single server or VM.

Use the ocis Repo as Source

Use this method to build and run an instance with the latest code. This is only recommended for development purposes.

The minimum go version required is 1.25.10.
Note that you need a C compile environment installed as a prerequisite because some dependencies, like reva, have components that require C-Go libraries and toolchains. The command installing for debian based systems is: sudo apt install build-essential.

To build and run a local instance with demo users:

# get the source
git clone [email protected]:owncloud/ocis.git

# enter the ocis dir
cd ocis

# generate assets
make generate

# build the binary
make -C ocis build

# initialize a minimal oCIS configuration
./ocis/bin/ocis init

# run with demo users
IDM_CREATE_DEMO_USERS=true ./ocis/bin/ocis server

# Open your browser on http://localhost:9200 to access the bundled web-ui

All batteries included: no external database, no external IDP needed!

Documentation

Admin Documentation

Refer to the Admin Documentation - Introduction to Infinite Scale to get started with running oCIS in production.

Development Documentation

See the Development Documentation - Getting Started to get an overview of Requirements, the repository structure and other starting points.

Security

See the Security Aspects for a general overview of security related topics. If you find a security issue, please contact [email protected] first.

Contributing

We are very happy that oCIS does not require a Contributor License Agreement (CLA) as it is Apache 2.0 licensed. We hope this will make it easier to contribute code. If you want to get in touch, most of the developers hang out in our matrix channel or reach out to the ownCloud central forum.

Infinite Scale is carefully internationalized so that everyone, no matter what language they speak, has a great experience. To achieve this, we rely on the help of volunteer translators. If you want to help, you can find the projects behind the following links: Transifex for ownCloud web and Transifex for ownCloud (Select the resource by filtering for ocis-).

Please always refer to our Contribution Guidelines.

End User License Agreement

Some builds of stable ownCloud Infinite Scale releases provided by ownCloud GmbH are subject to an End User License Agreement.

Copyright

Copyright (c) 2020-20

readme truncated — read the full docs on github

Frequently asked questions

Is ownCloud free to use?

ownCloud is open source under the Apache-2.0 licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does ownCloud do?

Enterprise file sync, share, and collaboration platform

What is ownCloud written in?

ownCloud is primarily written in Go. Its source is publicly available at https://github.com/owncloud/ocis, and it has 2,122 GitHub stars.

What is a good open source alternative to Google Drive?

ownCloud is one of the open source options listed as an alternative to Google Drive, Google Workspace. Compare licences, stars and activity side by side on the ownCloud profile.