147 lines
4.6 KiB
Markdown
147 lines
4.6 KiB
Markdown
---
|
|
title: "myCloud"
|
|
weight: 60
|
|
---
|
|
|
|
# myCloud
|
|
|
|
a bundle of OpenSource Software with one user management.
|
|
|
|
Current based only on: [authentik](https://goauthentik.io)
|
|
|
|
## First Login
|
|
Your main Account must be initalized:
|
|
`https://auth.<commons.ingress.domain>/if/flow/initial-setup/`
|
|
|
|
## Components
|
|
|
|
The following components for an myCloud setup exists:
|
|
include::partial-list-components.adoc[]
|
|
|
|
## Usage
|
|
|
|
My `base-values/mycloud-*.yaml` does not set any namespace, so the same the the Base-Helmchart is used (maybe you like to use multiple myClouds in different namespaces).
|
|
|
|
.Example usage (warning, the `base-values` are not versioned, see xref:base:index.adoc[Base]):
|
|
``` yaml {filename="fluxcd-mycloud.yaml"}
|
|
---
|
|
apiVersion: v1
|
|
kind: Namespace
|
|
metadata:
|
|
name: mycloud <1>
|
|
|
|
---
|
|
apiVersion: v1
|
|
kind: Secret <2>
|
|
metadata:
|
|
name: mycloud-mail
|
|
namespace: mycloud <1>
|
|
data:
|
|
password: MAIL_ACCOUNT_PASSWORD
|
|
|
|
---
|
|
apiVersion: v1
|
|
kind: Secret <3>
|
|
metadata:
|
|
name: mycloud-master-password
|
|
namespace: mycloud <1>
|
|
data:
|
|
masterPassword: MASTER_PASSWORD_FOR_GENERATE_EVERY_A_NEW_ONE
|
|
|
|
---
|
|
apiVersion: source.toolkit.fluxcd.io/v1
|
|
kind: GitRepository
|
|
metadata:
|
|
name: wrenix-flux-charts <4>
|
|
namespace: flux-system
|
|
spec:
|
|
url: https://codeberg.org/wrenix/flux-charts.git
|
|
ref:
|
|
branch: main
|
|
interval: 10m
|
|
# for more info about verification take an look here:
|
|
# - https://fluxcd.io/flux/components/source/gitrepositories/#verification
|
|
# - https://wrenix.codeberg.page/docs/wrenix-flux/latest/#_secure_with_verify
|
|
# later replaced with oci and cosign
|
|
# verify:
|
|
# mode: HEAD
|
|
# secretRef:
|
|
# name: gpg-publickey
|
|
|
|
---
|
|
apiVersion: helm.toolkit.fluxcd.io/v2
|
|
kind: HelmRelease
|
|
metadata:
|
|
name: mycloud <1>
|
|
namespace: mycloud <2>
|
|
spec:
|
|
chart:
|
|
spec:
|
|
sourceRef:
|
|
kind: GitRepository
|
|
name: wrenix-flux-charts <3>
|
|
namespace: flux-system
|
|
chart: "./base"
|
|
reconcileStrategy: "Revision"
|
|
valuesFiles:
|
|
- "./base/values.yaml"
|
|
- "./base-values/commons.yaml" <4>
|
|
- "./base-values/mycloud-core.yaml" <5>
|
|
- "./base-values/mycloud-nextcloud.yaml" <6>
|
|
- "./base-values/mycloud-collabora.yaml" <7>
|
|
interval: 10m
|
|
values:
|
|
base:
|
|
helm:
|
|
release:
|
|
valuesFrom:
|
|
- kind: Secret <8>
|
|
name: mycloud-secrets
|
|
valuesKey: masterPassword
|
|
targetPath: commons.masterPassword
|
|
- kind: Secret <9>
|
|
name: mycloud-secrets
|
|
valuesKey: password
|
|
targetPath: commons.mail.password
|
|
##
|
|
# Commons
|
|
##
|
|
commons:
|
|
mail: <10>
|
|
host: "posteo.de"
|
|
username: "mycloud@posteo.net"
|
|
use_tls: true
|
|
from: "mycloud@posteo.net"
|
|
|
|
helm:
|
|
chart:
|
|
sourceRef: <11>
|
|
kind: GitRepository
|
|
name: wrenix-flux-charts
|
|
namespace: flux-system
|
|
|
|
ingress:
|
|
domain: "mycloud.eu" <12>
|
|
|
|
|
|
##
|
|
# Compoments
|
|
##
|
|
components:
|
|
mycloud-nextcloud:
|
|
values: <13>
|
|
quota: "100 MB"
|
|
```
|
|
* <1> use of base-helm chart for fluxcd to bundle the different mycloud-components together
|
|
* <2> namespace where install all the components later
|
|
* <3> reference where base are founded by fluxcd
|
|
* <4> use my default commons values for flux-chart components
|
|
* <5> use my default to setup all commons for mycloud-components and the mycloud-core components (e.g. xref:components:mycloud-services.adoc[mycloud-services] and xref:components:mycloud-authentik.adoc[mycloud-authentik])
|
|
* <6> use my default values for usage of xref:components:mycloud-nextcloud.adoc[mycloud-nextcloud] (it also configure xref:components:mycloud-services.adoc[mycloud-services] for another database and xref:components:mycloud-authentik.adoc[mycloud-authentik] for user management)
|
|
* <7> use my default values for usage of xref:components:mycloud-collabora.adoc[mycloud-collabora] (it also configure xref:components:mycloud-nextcloud.adoc[mycloud-nextcloud] if it is also used)
|
|
* <8> secret to bypass secure values into the mycloud-components (mail)
|
|
* <9> secret to bypass secure values into the mycloud-components (masterPassword)
|
|
* <10> setup default mail configuration (for all components) for more commons values take an look into the used components (or `base-values`)
|
|
* <11> reference where all the components are foundet by fluxcd (e.g. same then the base chart, see <3>)
|
|
* <12> setup default domain (where subdomains are generate for the different components)
|
|
* <13> overwrite componets values (here setup default quota for an use in xref:components:mycloud-nextcloud.adoc[mycloud-nextcloud])
|