mirror of
https://github.com/opencloud-eu/opencloud.git
synced 2026-01-03 02:39:52 -06:00
71 lines
3.0 KiB
Markdown
71 lines
3.0 KiB
Markdown

|
|
|
|
[](https://ci.opencloud.eu/repos/3)
|
|
[](https://app.element.io/#/room/#opencloud:matrix.org)
|
|
[](https://opensource.org/licenses/Apache-2.0)
|
|
|
|
# Server Backend
|
|
|
|
|
|
> [!TIP]
|
|
> For general information about OpenCloud and how to install please visit [OpenCloud on Github](https://github.com/opencloud-eu/) and [OpenCloud GmbH](https://opencloud.eu).
|
|
|
|
This is the main repository of the OpenCloud server.
|
|
It contains the golang codebase for the backend services.
|
|
|
|
## Getting Involved
|
|
|
|
The OpenCloud server is released under [Apache 2.0](https://github.com/opencloud-eu/opencloud/blob/main/LICENSE).
|
|
The project is thrilled to receive contributions in all forms.
|
|
Start hacking now, there are many ways to get involved such as:
|
|
|
|
- Reporting [issues or bugs](https://github.com/opencloud-eu/opencloud/issues)
|
|
- Requesting [features](https://github.com/opencloud-eu/opencloud/issues)
|
|
- [Writing documentation](https://github.com/opencloud-eu/docs)
|
|
- [Writing code or extend our tests](https://github.com/opencloud-eu/opencloud/pulls)
|
|
- [Reviewing code](https://github.com/opencloud-eu/opencloud/pulls)
|
|
- Helping others in the [community](https://app.element.io/#/room/#opencloud:matrix.org)
|
|
|
|
Every contribution is meaningful and appreciated!
|
|
Please refer to our [Contribution Guidelines](https://github.com/opencloud-eu/opencloud/blob/main/CONTRIBUTING.md) if you want to get started.
|
|
|
|
## Build OpenCloud
|
|
|
|
To build the backend, follow these instructions:
|
|
|
|
Generate the assets needed by e.g., the web UI and the builtin IDP
|
|
|
|
``` console
|
|
make generate
|
|
```
|
|
|
|
Then compile the `opencloud` binary
|
|
|
|
``` console
|
|
make -C opencloud build
|
|
```
|
|
That will produce the binary `opencloud/bin/opencloud`. It can be started as a local test instance right away with a two step command:
|
|
|
|
```bash
|
|
opencloud/bin/opencloud init && opencloud/bin/opencloud server
|
|
```
|
|
This creates a server configuration (by default in `$HOME/.opencloud`) and starts the server.
|
|
|
|
For more setup- and installation options consult the [Development Documentation](https://docs.opencloud.eu/).
|
|
|
|
## Technology
|
|
|
|
Important information for contributors about the technology in use.
|
|
|
|
### Authentication
|
|
|
|
The OpenCloud backend authenticates users via [OpenID Connect](https://openid.net/connect/) using either an external IdP like [Keycloak](https://www.keycloak.org/) or the embedded [LibreGraph Connect](https://github.com/libregraph/lico) identity provider.
|
|
|
|
### Database
|
|
|
|
The OpenCloud backend does not use a database. It stores all data in the filesystem. By default, the root directory of the backend is `$HOME/.opencloud/`.
|
|
|
|
## Security
|
|
|
|
If you find a security-related issue, please contact [security@opencloud.eu](mailto:security@opencloud.eu) immediately.
|