Giter Site home page Giter Site logo

owncloud-docker / helm-charts Goto Github PK

View Code? Open in Web Editor NEW
2.0 2.0 8.0 225 KB

ownCloud Server Helm charts

Home Page: https://owncloud-docker.github.io/helm-charts/

License: Apache License 2.0

Starlark 72.48% Smarty 17.01% Makefile 10.51%
docker helm owncloud

helm-charts's People

Contributors

alviss7 avatar astromechza avatar cakeben avatar d7oc avatar dpmerron-ltd avatar jonaprince avatar renovate[bot] avatar ssakuh avatar xoxys avatar

Stargazers

 avatar

Watchers

 avatar  avatar

helm-charts's Issues

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

This repository currently has no open or pending branches.

Detected dependencies

helm-values
charts/owncloud/values.yaml
kubernetes
ci/k3d-drone.yaml
  • docker.io/rancher/k3s v1.29.2-k3s1
regex
Makefile
  • norwoodj/helm-docs v1.13.1
.drone.star
  • docker.io/jnorwood/helm-docs v1.13.1
  • docker.io/bitnami/kubectl 1.29
  • ghcr.io/k3d-io/k3d 5-dind
charts/owncloud/Chart.yaml
  • owncloud/server 10.14.0

  • Check this box to trigger a request for Renovate to run again on this repository

Ingress Class in Values.yaml wrong

Theres is an discrepancy in the ingress template and the values yaml for the ingress class name

templates/ingress.yaml:

  {{- with .Values.ingress.className }}
  ingressClassName: {{ . }}
  {{- end }}

values.yaml:

ingress:
  # -- Enables the Ingress.
  enabled: false
  # -- Ingress class to use.
  # Uses the default ingress class if not set.
  ingressClassName: ""

{{- with .Values.ingress.className }} should be {{- with .Values.ingress.ingressClassName }}

It's up to you to fix the naming but it should be correct :P
(The readme is also incorrect)

Add certificate management

Currently the helm chart has no certificate management. In real world scenarios ownCloud might need to be enhanced by custom certificates for accessing external systems such as LDAP, object storages, mail servers which are secured by custom certificates.

The implementation should have a Secret reference which will then be used as volume mount to enhance the systems SSL certificates.

Find aligned solution for environment defaults between helm charts and docker containers

Right now the docker containers and the helm charts each set the default values at two places (in the values.yaml and in the entrypoint.d directory in the docker container). Have those definitions twice usually tends to diverge over time. So we should find a solution to have the defaults definition only once which is then automatically transferred to helm charts and docker containers.

NodeSelector don't work for cronjobs

I started this helm with added:

nodeSelector:
  kubernetes.io/hostname: hworker3

this deployed owncloud with pods running on this particular node, nodeSelector is added to deployments (and pods) correctly)
but it's not for CronJobs, those were created on different nodes and failed to do anything (because of storage avaiablibity)

new install - error on login

Hi, I've deployed owncloud using this Helm chart to AWS EKS, and also configured an EFS ReadWriteMany persistent volume, so multiple pods can access the PV at the same time. This took some adjustments/fixes to the Helm chart, but it's running now successfully. When I try to login as the admin user though, I'm getting a 500 internal error. I enabled debug mode and got the output below. Any advice on how to fix this issue? I also have the objectstore s3 backend enabled, along with RDS mysql database. The DB connectivity looks good, and I don't see any issues the app is reporting with s3 connectivity, but I haven't been able to login to test it yet.

I should also note that I've configured an ingress - the cluster it's running on uses nginx ingress + cert manager for SSL certs. Health checks are passing and I'm able to access the UI via the ingress URL. This particular error only happens when I try to login as admin:

Internal Server Error
The server encountered an internal error and was unable to complete your request.

Please contact the server administrator if this error reappears multiple times and include the technical details below in your report.

More details can be found in the [server log](https://doc.owncloud.com/server/10.13/go.php?to=admin-logfiles).


Technical details
Remote Address: 10.40.3.166
Request ID: a82b39dd233900784411777416bf99ab
Type: OCP\Files\NotFoundException
Code: 0
Message:
File: /var/www/owncloud/lib/private/Files/Node/Node.php
Line: 97

Trace
#0 /var/www/owncloud/lib/private/Files/Node/Node.php(217): OC\Files\Node\Node->getFileInfo()
#1 /var/www/owncloud/lib/private/Files/Node/Node.php(117): OC\Files\Node\Node->getPermissions()
#2 /var/www/owncloud/lib/private/Files/Node/File.php(109): OC\Files\Node\Node->checkPermissions()
#3 /var/www/owncloud/lib/private/legacy/util.php(433): OC\Files\Node\File->fopen()
#4 /var/www/owncloud/lib/private/legacy/util.php(426): OC_Util::copyr()
#5 /var/www/owncloud/lib/private/legacy/util.php(403): OC_Util::copyr()
#6 /var/www/owncloud/lib/private/User/Session.php(469): OC_Util::copySkeleton()
#7 /var/www/owncloud/lib/private/User/Session.php(1036): OC\User\Session->prepareUserLogin()
#8 /var/www/owncloud/lib/private/User/Session.php(543): OC\User\Session->loginInOwnCloud(*** sensitive parameters replaced ***)
#9 /var/www/owncloud/lib/private/User/Session.php(344): OC\User\Session->loginWithPassword(*** sensitive parameters replaced ***)
#10 /var/www/owncloud/core/Controller/LoginController.php(270): OC\User\Session->login(*** sensitive parameters replaced ***)
#11 /var/www/owncloud/lib/private/AppFramework/Http/Dispatcher.php(169): OC\Core\Controller\LoginController->tryLogin(*** sensitive parameters replaced ***)
#12 /var/www/owncloud/lib/private/AppFramework/Http/Dispatcher.php(89): OC\AppFramework\Http\Dispatcher->executeController()
#13 /var/www/owncloud/lib/private/AppFramework/App.php(99): OC\AppFramework\Http\Dispatcher->dispatch()
#14 /var/www/owncloud/lib/private/AppFramework/Routing/RouteActionHandler.php(47): OC\AppFramework\App::main()
#15 /var/www/owncloud/lib/private/Route/Router.php(344): OC\AppFramework\Routing\RouteActionHandler->__invoke()
#16 /var/www/owncloud/lib/kernel.php(913): OC\Route\Router->match()
#17 /var/www/owncloud/index.php(32): OC::handleRequest()
#18 {main}

Could not Start Pod

Hello,

i could not start the owncloud deployment.
The Pod will not correctly start and i don'r really see an error.

the Pod Logs will only display:

3 Creating volume folders...
2 Creating hook folders...
1 Waiting for MySQL...

an the Pod will automatic terminated by the Readiness probe:
Readiness probe failed: Get "http://xx.xx.x.xxx:8080/status.php": dial tcp xx.xx.x.xx:8080: connect: connection refused
the only values what i have changed are the following:

owncloud:
  adminPassword: "xxx"
  adminUsername: "xxx"
  db:
    fail: "true"
    host: "myhostname"
    name: "owncloud"
    password: "mypassword"
    prefix: "oc_"
    timeout: "30"
    type: "mysql"
    username: "owncloud"
  domain: "clouddomain"
  debug: true
  defaultLanguage: "de"

persistence:
  # -- Enables persistence.
  enabled: true
  owncloud:
    accessMode:
      - ReadWriteOnce
    size: 40Gi

ingress:
  enabled: true
  annotations: 
    traefik.ingress.kubernetes.io/router.entrypoints: websecure
    traefik.ingress.kubernetes.io/router.tls.certresolver: le
  tls: []
  #  - secretName: owncloud-tls
  #    hosts:
  #       - clouddomain

any idea where i have an typo or something ?

Kind Regards

Enabling Ingress results in Error

Hey! If I enable ingress in the helm chart I get the following error:

Error: INSTALLATION FAILED: YAML parse error on owncloud/templates/ingress.yaml: error converting YAML to JSON: yaml: line 17: mapping values are not allowed in this context

yaml looks like this:

ingress:
  enabled: true
  annotations:
    cert-manager.io/cluster-issuer: "letsencrypt-prod"
  tls:
    - secretName: owncloud-tls
      hosts:
         - owncloud.domain.com

Missing cronjob call for /usr/lib/php/sessionclean

I found that my /mnt/data/sessions directory was filling up with old session files. up to 80k of them without any cleanup.

There's a crontab entry for it in cron.d, but that doesn't get called by anything, and not by the occ system:cron background jobs either.

I solved this myself by adding a manual cronjob like below, but ideally we'd include this in the helm chart or make sure the existing helm chart calls it after running the owncloud /usr/bin/cronjob file.

---
apiVersion: batch/v1
kind: CronJob
metadata:
  name: owncloud-phpsessionclean
  namespace: production
spec:
  schedule: "@hourly"
  concurrencyPolicy: Forbid
  jobTemplate:
    spec:
      parallelism: 1
      backoffLimit: 0
      template:
        spec:
          restartPolicy: Never
          containers:
          - name: cronjob
            image: docker.io/owncloud/server:10.13.3
            imagePullPolicy: IfNotPresent
            command: ["/bin/sh", "/usr/lib/php/sessionclean"]
            envFrom:
              - configMapRef:
                  name: owncloud-env-config
            volumeMounts:
              - name: owncloud-data
                mountPath: /mnt/data
              - name: config-volume
                mountPath: /mnt/data/config/configmap.config.php
                subPath: configmap.config.php
          volumes:
            - name: owncloud-data
              persistentVolumeClaim:
                claimName: owncloud
            - name: config-volume
              secret:
                secretName: owncloud-config

Unable to start container process on OpenShift

Hi,
I tried to install this helm chart with almost same default values, and i got :

(combined from similar events): Error: container create failed: time="2023-12-24T05:33:49Z" level=error msg="runc create failed: unable to start container process: error during container init: error mounting \"/var/lib/kubelet/pods/047ce890-26dc-4462-b511-a46e61644a7f/volume-subpaths/config-volume/owncloud/1\" to rootfs at \"/mnt/data/config/configmap.config.php\": open /var/lib/containers/storage/overlay/bb1dbc56eee0cd15ad6b45469a9b6010d9db38c8df8ffd80a526d937cd2f73f7/merged/mnt/data/config/configmap.config.php: permission denied"

Environment:

  • k8s 1.123 ( OCP 4.12)
  • crio container runtime ( not docker)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.