--- 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./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/v2beta1 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])