From 9262c66833a30312b65f5444e98edfb0237d4186 Mon Sep 17 00:00:00 2001 From: derStephan Date: Thu, 6 Aug 2026 10:22:50 +0200 Subject: [PATCH 01/42] expose glances via caddy community container and add secret (#8531) * Add ui secret for caddy integration fixes https://github.com/szaimen/aio-caddy/pull/167 Signed-off-by: derStephan * add description of caddy integration fixes https://github.com/szaimen/aio-caddy/pull/167 Signed-off-by: derStephan * add secret for glances container fixes https://github.com/szaimen/aio-caddy/pull/167 Signed-off-by: derStephan * Update community-containers/glances/readme.md Co-authored-by: Simon L. Signed-off-by: derStephan * Update community-containers/caddy/caddy.json Co-authored-by: Simon L. Signed-off-by: derStephan * add glances container to caddy add Signed-off-by: derStephan * Update community-containers/glances/readme.md Co-authored-by: Simon L. Signed-off-by: derStephan * add secrets section for caddy Signed-off-by: derStephan * add docker.sock to json validator Signed-off-by: derStephan * fix validator issue Signed-off-by: derStephan * docker socket removed from schema on maintainer's request. Signed-off-by: derStephan * add hint for user name Signed-off-by: derStephan --------- Signed-off-by: derStephan Co-authored-by: Simon L. --- community-containers/caddy/caddy.json | 4 +++- community-containers/caddy/readme.md | 1 + community-containers/glances/glances.json | 6 +++++- community-containers/glances/readme.md | 1 + 4 files changed, 10 insertions(+), 2 deletions(-) diff --git a/community-containers/caddy/caddy.json b/community-containers/caddy/caddy.json index 4c821064..df226f30 100644 --- a/community-containers/caddy/caddy.json +++ b/community-containers/caddy/caddy.json @@ -21,6 +21,7 @@ "APACHE_PORT=%APACHE_PORT%", "APACHE_IP_BINDING=%APACHE_IP_BINDING%", "NEXTCLOUD_EXPORTER_CADDY_PASSWORD=%NEXTCLOUD_EXPORTER_CADDY_PASSWORD%", + "NEXTCLOUD_GLANCES_CADDY_PASSWORD=%NEXTCLOUD_GLANCES_CADDY_PASSWORD%", "DESEC_TOKEN=%DESEC_TOKEN%" ], "volumes": [ @@ -36,7 +37,8 @@ } ], "secrets": [ - "NEXTCLOUD_EXPORTER_CADDY_PASSWORD" + "NEXTCLOUD_EXPORTER_CADDY_PASSWORD", + "NEXTCLOUD_GLANCES_CADDY_PASSWORD" ], "aio_variables": [ "apache_ip_binding=@INTERNAL", diff --git a/community-containers/caddy/readme.md b/community-containers/caddy/readme.md index 1f3e5864..538f0833 100644 --- a/community-containers/caddy/readme.md +++ b/community-containers/caddy/readme.md @@ -23,6 +23,7 @@ This container configures subdomains for a number of community containers. | Container | Subdomain | Geoblocking | IP Allow List | Authentication | |---------------------------------------------------------------------------------------------------------------------|----------------------------------|-------------|---------------|----------------| | [azuracast](https://github.com/nextcloud/all-in-one/tree/main/community-containers/azuracast) | `radio.your-nc-domain.com` | ✅ | | | +| [glances](https://github.com/nextcloud/all-in-one/tree/main/community-containers/glances) | `glances.your-nc-domain.com` | ✅ | | ✅ | | [jellyfin](https://github.com/nextcloud/all-in-one/tree/main/community-containers/jellyfin) | `media.your-nc-domain.com` | ✅ | | | | [joplin-server](https://github.com/nextcloud/all-in-one/tree/main/community-containers/joplin-server) | `joplin.your-nc-domain.com` | ✅ | | | | [lldap](https://github.com/nextcloud/all-in-one/tree/main/community-containers/lldap) | `ldap.your-nc-domain.com` | ✅ | ✅ | | diff --git a/community-containers/glances/glances.json b/community-containers/glances/glances.json index 13bb13d1..7c84c409 100644 --- a/community-containers/glances/glances.json +++ b/community-containers/glances/glances.json @@ -30,9 +30,13 @@ "environment": [ "GLANCES_OPT=-w" ], + "ui_secret": "NEXTCLOUD_GLANCES_CADDY_PASSWORD", + "secrets": [ + "NEXTCLOUD_GLANCES_CADDY_PASSWORD" + ], "backup_volumes": [ "nextcloud_aio_glances" ] } ] -} \ No newline at end of file +} diff --git a/community-containers/glances/readme.md b/community-containers/glances/readme.md index 10c0ef77..fd81e3e8 100644 --- a/community-containers/glances/readme.md +++ b/community-containers/glances/readme.md @@ -6,6 +6,7 @@ This container starts [Glances](https://nicolargo.github.io/glances/), a web-bas ### Notes - After adding and starting the container, you can directly visit http://ip.address.of.server:61208/ and access your new Glances instance! +- if you are using caddy community container, this will be available at `https://glances.your-server.com`, For security reasons, a password will be generated and shown in the AIO interface (if you click on showing the secret for glances). Use `glances` as user name. - It is recommended to start this container only in home networks, because there is no built-in authentication. But you can do a http-auth with your proxy. - In order to access your Glances outside the local network, you have to set up your own reverse proxy. You can set up a reverse proxy following [these instructions](https://github.com/nextcloud/all-in-one/blob/main/reverse-proxy.md). - The data of Glances will be automatically included in AIO's backup solution! From bb6039dfcf719b00c537b625cb8ee504cd6697de Mon Sep 17 00:00:00 2001 From: "Simon L." Date: Thu, 6 Aug 2026 10:26:35 +0200 Subject: [PATCH 02/42] Update AIO version from 13.4.1 to 13.5.0 Signed-off-by: Simon L. --- php/templates/includes/aio-version.twig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/php/templates/includes/aio-version.twig b/php/templates/includes/aio-version.twig index c27905ac..d224e690 100644 --- a/php/templates/includes/aio-version.twig +++ b/php/templates/includes/aio-version.twig @@ -1 +1 @@ -13.4.1 +13.5.0 From d1f87e8c3d6ec2521ea360b21b442b75ba2a87fc Mon Sep 17 00:00:00 2001 From: "Simon L." Date: Thu, 6 Aug 2026 10:46:14 +0200 Subject: [PATCH 03/42] Revert "build(deps): bump collabora/code from 26.04.2.1.1 to 26.04.2.4.1 in /Containers/collabora" --- Containers/collabora/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Containers/collabora/Dockerfile b/Containers/collabora/Dockerfile index 6f94afd6..5409360b 100644 --- a/Containers/collabora/Dockerfile +++ b/Containers/collabora/Dockerfile @@ -1,6 +1,6 @@ # syntax=docker/dockerfile:latest # From a file located probably somewhere here: https://github.com/CollaboraOnline/online/blob/master/docker/from-packages/Dockerfile -FROM collabora/code:26.04.2.4.1 +FROM collabora/code:26.04.2.1.1 USER root ARG DEBIAN_FRONTEND=noninteractive From 2977df67e850cb780be478f1823a58e3e8daf4d2 Mon Sep 17 00:00:00 2001 From: "Simon L." Date: Thu, 6 Aug 2026 12:17:50 +0200 Subject: [PATCH 04/42] try to fix playwright test Signed-off-by: Simon L. --- php/tests/run.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/php/tests/run.sh b/php/tests/run.sh index ef209262..35859741 100755 --- a/php/tests/run.sh +++ b/php/tests/run.sh @@ -29,6 +29,9 @@ run_tests() { # Clean up old containers and volumes $DOCO --profile $profile down -v --remove-orphans docker container rm --force nextcloud-aio-{mastercontainer,apache,notify-push,nextcloud,redis,database,domaincheck,whiteboard,imaginary,talk,collabora,borgbackup} > /dev/null 2>&1 + # Wait a few seconds so that the containers are correctly removed + sleep 10 + # Then remove the volumes docker volume rm nextcloud_aio_{mastercontainer,apache,database,database_dump,nextcloud,nextcloud_data,redis,backup_cache,elasticsearch} > /dev/null 2>&1 echo -e "\n 📣 Running playwright tests for ${TESTS_FILE} with SKIP_DOMAIN_VALIDATION=$SKIP_DOMAIN_VALIDATION and profile '$profile'\n" From 972527bd9a6a979267a7ec01272931e9fa34d49c Mon Sep 17 00:00:00 2001 From: "Simon L." Date: Thu, 6 Aug 2026 13:50:03 +0200 Subject: [PATCH 05/42] fix detail in run.sh Signed-off-by: Simon L. --- php/tests/run.sh | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/php/tests/run.sh b/php/tests/run.sh index 35859741..4abeefc1 100755 --- a/php/tests/run.sh +++ b/php/tests/run.sh @@ -29,9 +29,6 @@ run_tests() { # Clean up old containers and volumes $DOCO --profile $profile down -v --remove-orphans docker container rm --force nextcloud-aio-{mastercontainer,apache,notify-push,nextcloud,redis,database,domaincheck,whiteboard,imaginary,talk,collabora,borgbackup} > /dev/null 2>&1 - # Wait a few seconds so that the containers are correctly removed - sleep 10 - # Then remove the volumes docker volume rm nextcloud_aio_{mastercontainer,apache,database,database_dump,nextcloud,nextcloud_data,redis,backup_cache,elasticsearch} > /dev/null 2>&1 echo -e "\n 📣 Running playwright tests for ${TESTS_FILE} with SKIP_DOMAIN_VALIDATION=$SKIP_DOMAIN_VALIDATION and profile '$profile'\n" @@ -39,7 +36,7 @@ run_tests() { exitcode=$? if test $exitcode -gt 0; then for container in nextcloud-aio-{mastercontainer,borgbackup,desec-mock}; do - if docker container list --format="{{ .Names }}" | grep -q "$container"; then + if docker container list -a --format="{{ .Names }}" | grep -q "$container"; then echo -e "\n 📣 Log output from container ${container}:\n" docker logs "$container" fi From da782248f172da014ab99905137518a308fbebd5 Mon Sep 17 00:00:00 2001 From: "Simon L." Date: Thu, 6 Aug 2026 14:01:23 +0200 Subject: [PATCH 06/42] remove `nextcloud_aio_eurooffice_data` from backup volume for now Signed-off-by: Simon L. --- php/containers.json | 3 --- 1 file changed, 3 deletions(-) diff --git a/php/containers.json b/php/containers.json index 67b518cf..09fcd34e 100644 --- a/php/containers.json +++ b/php/containers.json @@ -802,9 +802,6 @@ "writeable": true } ], - "backup_volumes": [ - "nextcloud_aio_eurooffice_data" - ], "secrets": [ "EUROOFFICE_SECRET" ], From 19a9fb6fab52b6a6c9c5175928753497b9675f98 Mon Sep 17 00:00:00 2001 From: szaimen <42591237+szaimen@users.noreply.github.com> Date: Thu, 6 Aug 2026 12:35:00 +0000 Subject: [PATCH 07/42] php dependency updates Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- php/composer.lock | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/php/composer.lock b/php/composer.lock index 57b75675..e2e8a404 100644 --- a/php/composer.lock +++ b/php/composer.lock @@ -64,21 +64,21 @@ }, { "name": "guzzlehttp/guzzle", - "version": "7.15.2", + "version": "7.15.3", "source": { "type": "git", "url": "https://github.com/guzzle/guzzle.git", - "reference": "744101956d78b7c1384d0cbf379db13e859167bf" + "reference": "ae311b8f045ea93ce7b1c9cdb7cec06c53f944bc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/guzzle/zipball/744101956d78b7c1384d0cbf379db13e859167bf", - "reference": "744101956d78b7c1384d0cbf379db13e859167bf", + "url": "https://api.github.com/repos/guzzle/guzzle/zipball/ae311b8f045ea93ce7b1c9cdb7cec06c53f944bc", + "reference": "ae311b8f045ea93ce7b1c9cdb7cec06c53f944bc", "shasum": "" }, "require": { "ext-json": "*", - "guzzlehttp/promises": "^2.5.1", + "guzzlehttp/promises": "^2.5.2", "guzzlehttp/psr7": "^2.13", "php": "^7.2.5 || ^8.0", "psr/http-client": "^1.0", @@ -172,7 +172,7 @@ ], "support": { "issues": "https://github.com/guzzle/guzzle/issues", - "source": "https://github.com/guzzle/guzzle/tree/7.15.2" + "source": "https://github.com/guzzle/guzzle/tree/7.15.3" }, "funding": [ { @@ -188,20 +188,20 @@ "type": "tidelift" } ], - "time": "2026-07-26T23:23:20+00:00" + "time": "2026-08-05T19:48:21+00:00" }, { "name": "guzzlehttp/promises", - "version": "2.5.1", + "version": "2.5.2", "source": { "type": "git", "url": "https://github.com/guzzle/promises.git", - "reference": "9ad1e4fc607446a055b95870c7f668e93b5cff29" + "reference": "2823687acff28b2dbe67b2508a6b300e2c3fa4ce" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/promises/zipball/9ad1e4fc607446a055b95870c7f668e93b5cff29", - "reference": "9ad1e4fc607446a055b95870c7f668e93b5cff29", + "url": "https://api.github.com/repos/guzzle/promises/zipball/2823687acff28b2dbe67b2508a6b300e2c3fa4ce", + "reference": "2823687acff28b2dbe67b2508a6b300e2c3fa4ce", "shasum": "" }, "require": { @@ -256,7 +256,7 @@ ], "support": { "issues": "https://github.com/guzzle/promises/issues", - "source": "https://github.com/guzzle/promises/tree/2.5.1" + "source": "https://github.com/guzzle/promises/tree/2.5.2" }, "funding": [ { @@ -272,7 +272,7 @@ "type": "tidelift" } ], - "time": "2026-07-08T15:48:39+00:00" + "time": "2026-08-05T19:30:54+00:00" }, { "name": "guzzlehttp/psr7", From 09509130e32e4a11fc900c406b0ce3483a693ab4 Mon Sep 17 00:00:00 2001 From: szaimen <42591237+szaimen@users.noreply.github.com> Date: Thu, 6 Aug 2026 12:35:23 +0000 Subject: [PATCH 08/42] Yaml updates Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- manual-install/latest.yml | 39 ++++++++++++++++++++++++++++++++++++++ manual-install/sample.conf | 2 ++ 2 files changed, 41 insertions(+) diff --git a/manual-install/latest.yml b/manual-install/latest.yml index 0d1411d7..12b59ace 100644 --- a/manual-install/latest.yml +++ b/manual-install/latest.yml @@ -19,6 +19,9 @@ services: nextcloud-aio-whiteboard: condition: service_started required: false + nextcloud-aio-harp: + condition: service_started + required: false nextcloud-aio-nextcloud: condition: service_started required: false @@ -50,6 +53,7 @@ services: - APACHE_MAX_TIME=${NEXTCLOUD_MAX_TIME} - NOTIFY_PUSH_HOST=nextcloud-aio-notify-push - WHITEBOARD_HOST=nextcloud-aio-whiteboard + - HARP_HOST=nextcloud-aio-harp volumes: - nextcloud_aio_nextcloud:/var/www/html:ro - nextcloud_aio_apache:/mnt/data:rw @@ -193,6 +197,7 @@ services: - IMAGINARY_SECRET - WHITEBOARD_SECRET - WHITEBOARD_ENABLED + - HARP_ENABLED stop_grace_period: 600s restart: unless-stopped shm_size: 134217728 @@ -434,6 +439,7 @@ services: - JWT_SECRET=${EUROOFFICE_SECRET} volumes: - nextcloud_aio_eurooffice:/var/lib/euro-office:rw + - nextcloud_aio_eurooffice_data:/var/www/euro-office/Data:rw restart: unless-stopped profiles: - eurooffice @@ -504,6 +510,35 @@ services: cap_drop: - NET_RAW + nextcloud-aio-harp: + image: ghcr.io/nextcloud-releases/aio-harp:latest + init: true + expose: + - "8780" + healthcheck: + start_period: 0s + test: /healthcheck.sh + interval: 10s + timeout: 10s + start_interval: 5s + retries: 9 + environment: + - NC_INSTANCE_URL=https://${NC_DOMAIN} + - HP_FRP_DISABLE_TLS=true + - TZ=${TIMEZONE} + volumes: + - ${WATCHTOWER_DOCKER_SOCKET_PATH}:/var/run/docker.sock:ro + - nextcloud_aio_harp:/certs:rw + restart: unless-stopped + read_only: true + tmpfs: + - /tmp + - /run/harp + cap_drop: + - NET_RAW + profiles: + - harp + nextcloud-aio-whiteboard: image: ghcr.io/nextcloud-releases/aio-whiteboard:latest user: "65534" @@ -549,6 +584,10 @@ volumes: name: nextcloud_aio_elasticsearch nextcloud_aio_eurooffice: name: nextcloud_aio_eurooffice + nextcloud_aio_eurooffice_data: + name: nextcloud_aio_eurooffice_data + nextcloud_aio_harp: + name: nextcloud_aio_harp nextcloud_aio_nextcloud: name: nextcloud_aio_nextcloud nextcloud_aio_onlyoffice: diff --git a/manual-install/sample.conf b/manual-install/sample.conf index d4da3604..5efd84fa 100644 --- a/manual-install/sample.conf +++ b/manual-install/sample.conf @@ -17,6 +17,7 @@ CLAMAV_ENABLED="no" # Setting this to "yes" (with quotes) enables the o COLLABORA_ENABLED="no" # Setting this to "yes" (with quotes) enables the option in Nextcloud automatically. EUROOFFICE_ENABLED="no" # Setting this to "yes" (with quotes) enables the option in Nextcloud automatically. FULLTEXTSEARCH_ENABLED="no" # Setting this to "yes" (with quotes) enables the option in Nextcloud automatically. +HARP_ENABLED="no" # Setting this to "yes" (with quotes) enables the option in Nextcloud automatically. IMAGINARY_ENABLED="no" # Setting this to "yes" (with quotes) enables the option in Nextcloud automatically. ONLYOFFICE_ENABLED="no" # Setting this to "yes" (with quotes) enables the option in Nextcloud automatically. TALK_ENABLED="no" # Setting this to "yes" (with quotes) enables the option in Nextcloud automatically. @@ -43,3 +44,4 @@ NEXTCLOUD_UPLOAD_LIMIT=16G # This allows to change the upload limit of REMOVE_DISABLED_APPS=yes # Setting this to no keep Nextcloud apps that are disabled via their switch and not uninstall them if they should be installed in Nextcloud. TALK_PORT=3478 # This allows to adjust the port that the talk container is using. It should be set to something higher than 1024! Otherwise it might not work! UPDATE_NEXTCLOUD_APPS="no" # When setting to "yes" (with quotes), it will automatically update all installed Nextcloud apps upon container startup on saturdays. +WATCHTOWER_DOCKER_SOCKET_PATH=/var/run/docker.sock # This can be changed depending on where the docker socket is located on your host From 16a186c902cf857a78007726f20535af23b827c9 Mon Sep 17 00:00:00 2001 From: pabzm <57864086+pabzm@users.noreply.github.com> Date: Fri, 7 Aug 2026 05:32:23 +0000 Subject: [PATCH 09/42] chore(tests): update test container image references Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- php/tests/compose.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/php/tests/compose.yaml b/php/tests/compose.yaml index a8818601..0c8a3240 100644 --- a/php/tests/compose.yaml +++ b/php/tests/compose.yaml @@ -59,14 +59,14 @@ services: - local-code desec-mock: - image: docker.io/library/node:26@sha256:c31fbcbf4a7e94a36accd38fdf69882fdf7685039dcd41412245d3d1065c5cbc + image: docker.io/library/node:26@sha256:bde0dae02f2b12d2bce5ee72b2432f0e511767b7b2dc4dd3b064df11ae422fee volumes: - ..:/app/php working_dir: /app command: node php/tests/desec-mock.mjs 8090 2>&1 npm-installer: - image: docker.io/library/node:26@sha256:c31fbcbf4a7e94a36accd38fdf69882fdf7685039dcd41412245d3d1065c5cbc + image: docker.io/library/node:26@sha256:bde0dae02f2b12d2bce5ee72b2432f0e511767b7b2dc4dd3b064df11ae422fee volumes: - ..:/app working_dir: /app/tests From e39d5d100cbe585c80e97a6d144f3f57d8fcf903 Mon Sep 17 00:00:00 2001 From: "Ruben D." Date: Sat, 8 Aug 2026 16:22:16 +0200 Subject: [PATCH 10/42] Update Stalwart references to new maintainer and repository locations Credits to @docjyj Signed-off-by: Ruben D. --- community-containers/stalwart/readme.md | 14 ++++++++------ community-containers/stalwart/stalwart.json | 2 +- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/community-containers/stalwart/readme.md b/community-containers/stalwart/readme.md index 0b63a92f..cccc3921 100644 --- a/community-containers/stalwart/readme.md +++ b/community-containers/stalwart/readme.md @@ -1,22 +1,24 @@ > [!CAUTION] -> Be aware that the mail server is the most difficult service to deploy. -> +> Be aware that the mail server is the most challenging service to deploy. +> > Do not use this feature as a main mail server or without a redundancy system and without knowledge. ## Stalwart mail server -This container bundles the [Stalwart](https://stalw.art/) mail server and auto-configures it for you. +This container bundles the [Stalwart](https://stalw.art/) mail server and autoconfigures it for you. ### Notes Documentation is available on the container repository. This documentation is regularly updated and is intended to be as simple and detailed as possible. Thanks for all your feedback! -- See https://github.com/docjyJ/aio-stalwart#getting-started for getting start with this container. +- See https://github.com/winterrific/aio-stalwart#getting-started for getting start with this container. - See https://stalw.art/docs/faq for further faq and docs on the project - See https://github.com/nextcloud/all-in-one/tree/main/community-containers#community-containers how to add it to the AIO stack ### Repository -https://github.com/docjyj/aio-stalwart +https://github.com/winterrific/aio-stalwart ### Maintainer -https://github.com/docjyj +https://github.com/winterrific + +Created by https://github.com/docjyj diff --git a/community-containers/stalwart/stalwart.json b/community-containers/stalwart/stalwart.json index b9a48091..7d448d3c 100644 --- a/community-containers/stalwart/stalwart.json +++ b/community-containers/stalwart/stalwart.json @@ -4,7 +4,7 @@ "container_name": "nextcloud-aio-stalwart", "display_name": "Stalwart", "documentation": "https://github.com/nextcloud/all-in-one/tree/main/community-containers/stalwart", - "image": "ghcr.io/docjyj/aio-stalwart", + "image": "ghcr.io/winterrific/aio-stalwart", "image_tag": "v3", "internal_port": "10003", "restart": "unless-stopped", From d8ec254bd53da3149d9212bd058282c26c405381 Mon Sep 17 00:00:00 2001 From: Javier Murcia Date: Sun, 9 Aug 2026 03:29:22 +0200 Subject: [PATCH 11/42] FIX: taskprocessing-worker is not restarted after its timeout Signed-off-by: Javier Murcia --- Containers/nextcloud/supervisord.conf | 1 + 1 file changed, 1 insertion(+) diff --git a/Containers/nextcloud/supervisord.conf b/Containers/nextcloud/supervisord.conf index 5bf90ed0..eec24f6f 100644 --- a/Containers/nextcloud/supervisord.conf +++ b/Containers/nextcloud/supervisord.conf @@ -31,6 +31,7 @@ stdout_logfile_maxbytes=0 stderr_logfile=/dev/stderr stderr_logfile_maxbytes=0 command=php /var/www/html/occ taskprocessing:worker --timeout 300 +autorestart=true user=www-data [program:run-exec-commands] From 83a2658cad14b8ad046347920df9439067fd645c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 10 Aug 2026 04:09:32 +0000 Subject: [PATCH 12/42] build(deps): bump euro-office/documentserver in /Containers/eurooffice Bumps euro-office/documentserver from v9.3.2 to v9.3.3. --- updated-dependencies: - dependency-name: euro-office/documentserver dependency-version: v9.3.3 dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- Containers/eurooffice/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Containers/eurooffice/Dockerfile b/Containers/eurooffice/Dockerfile index c232c00e..d6198714 100644 --- a/Containers/eurooffice/Dockerfile +++ b/Containers/eurooffice/Dockerfile @@ -1,5 +1,5 @@ # syntax=docker/dockerfile:latest -FROM ghcr.io/euro-office/documentserver:v9.3.2 +FROM ghcr.io/euro-office/documentserver:v9.3.3 # USER root is probably used From e1e4b69bb79c039fde3cd865e0b9a49f5f5149f1 Mon Sep 17 00:00:00 2001 From: xhon-pelushi Date: Wed, 12 Aug 2026 19:30:05 -0400 Subject: [PATCH 13/42] Improve dependency-update PR titles/links and exclude Helm chart PRs from release notes - Nextcloud and watchtower dependency update PRs now include the new version in the title and a link to the corresponding upstream release notes in the PR body. - Helm chart update PRs no longer carry the 'dependencies' label, so they are no longer grouped into the 'Updated dependencies' release notes section (they are a downstream packaging change, not an upstream dependency bump). Fixes #8538 Signed-off-by: xhon-pelushi --- .github/workflows/nextcloud-update.yml | 9 +++++++-- .github/workflows/update-helm.yml | 2 +- .github/workflows/watchtower-update.yml | 11 ++++++++--- 3 files changed, 16 insertions(+), 6 deletions(-) diff --git a/.github/workflows/nextcloud-update.yml b/.github/workflows/nextcloud-update.yml index 5c75812f..eed76039 100644 --- a/.github/workflows/nextcloud-update.yml +++ b/.github/workflows/nextcloud-update.yml @@ -13,6 +13,7 @@ jobs: steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Run nextcloud-update script + id: nextcloud_update run: | # Inspired by https://github.com/nextcloud/docker/blob/master/update.sh @@ -77,6 +78,7 @@ jobs: if [ -n "$NCVERSION" ]; then sed -i "s|^ENV NEXTCLOUD_VERSION.*|ENV NEXTCLOUD_VERSION=$NCVERSION|" ./Containers/nextcloud/Dockerfile fi + echo "nc_version=$NCVERSION" >> "$GITHUB_OUTPUT" - name: Create Pull Request uses: peter-evans/create-pull-request@5f6978faf089d4d20b00c7766989d076bb2fc7f1 # v7 @@ -84,8 +86,11 @@ jobs: token: ${{ secrets.GITHUB_TOKEN }} commit-message: nextcloud-update automated change signoff: true - title: Nextcloud dependency update - body: Automated Nextcloud container update + title: Nextcloud dependency update to ${{ steps.nextcloud_update.outputs.nc_version }} + body: | + Automated Nextcloud container update to version ${{ steps.nextcloud_update.outputs.nc_version }}. + + See the [Nextcloud Server ${{ steps.nextcloud_update.outputs.nc_version }} release notes](https://github.com/nextcloud/server/releases/tag/v${{ steps.nextcloud_update.outputs.nc_version }}) for details. labels: dependencies, 3. to review milestone: next branch: nextcloud-container-update diff --git a/.github/workflows/update-helm.yml b/.github/workflows/update-helm.yml index 97f6cdd8..2289fc73 100644 --- a/.github/workflows/update-helm.yml +++ b/.github/workflows/update-helm.yml @@ -29,7 +29,7 @@ jobs: signoff: true title: Helm Chart updates body: Automated Helm Chart updates for the yaml files. It can be merged if it looks good at any time which will automatically trigger a new release of the helm chart. - labels: dependencies, 3. to review + labels: 3. to review milestone: next branch: aio-helm-update token: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/watchtower-update.yml b/.github/workflows/watchtower-update.yml index def3354b..3bd51867 100644 --- a/.github/workflows/watchtower-update.yml +++ b/.github/workflows/watchtower-update.yml @@ -12,6 +12,7 @@ jobs: steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Run watchtower-container-update + id: watchtower_update run: | # Watchtower watchtower_version="$( @@ -24,15 +25,19 @@ jobs: watchtower_commit_hash="$(git ls-remote https://github.com/nicholas-fedor/watchtower $watchtower_version | sed 's/refs.*//')" sed -i "s|^ENV WATCHTOWER_COMMIT_HASH.*$|ENV WATCHTOWER_COMMIT_HASH=$watchtower_commit_hash|" ./Containers/watchtower/Dockerfile sed -i "s|\$WATCHTOWER_COMMIT_HASH.*$|\$WATCHTOWER_COMMIT_HASH # $watchtower_version|" ./Containers/watchtower/Dockerfile - + echo "watchtower_version=$watchtower_version" >> "$GITHUB_OUTPUT" + - name: Create Pull Request uses: peter-evans/create-pull-request@5f6978faf089d4d20b00c7766989d076bb2fc7f1 # v7 with: token: ${{ secrets.GITHUB_TOKEN }} commit-message: watchtower-update automated change signoff: true - title: watchtower container update - body: Automated watchtower container update + title: watchtower container update to ${{ steps.watchtower_update.outputs.watchtower_version }} + body: | + Automated watchtower container update to version ${{ steps.watchtower_update.outputs.watchtower_version }}. + + See the [Watchtower ${{ steps.watchtower_update.outputs.watchtower_version }} release notes](https://github.com/nicholas-fedor/watchtower/releases/tag/${{ steps.watchtower_update.outputs.watchtower_version }}) for details. labels: dependencies, 3. to review milestone: next branch: watchtower-container-update From a8d09e02cd1a8d6d09b51a756d556cc49e9ea8eb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 14 Aug 2026 04:07:35 +0000 Subject: [PATCH 14/42] build(deps): bump docker in /Containers/mastercontainer Bumps docker from 29.7.0-cli to 29.7.2-cli. --- updated-dependencies: - dependency-name: docker dependency-version: 29.7.2-cli dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- Containers/mastercontainer/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Containers/mastercontainer/Dockerfile b/Containers/mastercontainer/Dockerfile index f53086d5..dc466610 100644 --- a/Containers/mastercontainer/Dockerfile +++ b/Containers/mastercontainer/Dockerfile @@ -1,6 +1,6 @@ # syntax=docker/dockerfile:latest # Docker CLI is a requirement -FROM docker:29.7.0-cli AS docker +FROM docker:29.7.2-cli AS docker ARG CADDY_REMOTE_HOST_HASH=e80a9931765a8dbcbb47db415863387f0df0e1b3 From 91a457bc7950917a0f46b414e6b9e8e7f47e678a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 14 Aug 2026 04:08:25 +0000 Subject: [PATCH 15/42] build(deps): bump python in /Containers/talk-recording Bumps python from 3.14.6-alpine3.24 to 3.14.7-alpine3.24. --- updated-dependencies: - dependency-name: python dependency-version: 3.14.7-alpine3.24 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- Containers/talk-recording/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Containers/talk-recording/Dockerfile b/Containers/talk-recording/Dockerfile index 2006c5e5..4e99a328 100644 --- a/Containers/talk-recording/Dockerfile +++ b/Containers/talk-recording/Dockerfile @@ -1,5 +1,5 @@ # syntax=docker/dockerfile:latest -FROM python:3.14.6-alpine3.24 +FROM python:3.14.7-alpine3.24 COPY --chmod=775 start.sh /start.sh COPY --chmod=775 healthcheck.sh /healthcheck.sh From 87b4c22e13c7ddce51b0ce8fbebc778a6276a714 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 17 Aug 2026 04:08:16 +0000 Subject: [PATCH 16/42] build(deps): bump collabora/code in /Containers/collabora Bumps collabora/code from 26.04.2.1.1 to 26.04.3.1.1. --- updated-dependencies: - dependency-name: collabora/code dependency-version: 26.04.3.1.1 dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- Containers/collabora/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Containers/collabora/Dockerfile b/Containers/collabora/Dockerfile index 5409360b..eb6c759a 100644 --- a/Containers/collabora/Dockerfile +++ b/Containers/collabora/Dockerfile @@ -1,6 +1,6 @@ # syntax=docker/dockerfile:latest # From a file located probably somewhere here: https://github.com/CollaboraOnline/online/blob/master/docker/from-packages/Dockerfile -FROM collabora/code:26.04.2.1.1 +FROM collabora/code:26.04.3.1.1 USER root ARG DEBIAN_FRONTEND=noninteractive From 80f8b47211d8ec612a325dde6f8331f4f0952a07 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 17 Aug 2026 04:08:27 +0000 Subject: [PATCH 17/42] build(deps): bump elasticsearch in /Containers/fulltextsearch Bumps elasticsearch from 9.4.4 to 9.5.1. --- updated-dependencies: - dependency-name: elasticsearch dependency-version: 9.5.1 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- Containers/fulltextsearch/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Containers/fulltextsearch/Dockerfile b/Containers/fulltextsearch/Dockerfile index 75a9906e..1b63ffb7 100644 --- a/Containers/fulltextsearch/Dockerfile +++ b/Containers/fulltextsearch/Dockerfile @@ -1,6 +1,6 @@ # syntax=docker/dockerfile:latest # Probably from here https://github.com/elastic/dockerfiles/blob/9.3/elasticsearch/Dockerfile -FROM elasticsearch:9.4.4 +FROM elasticsearch:9.5.1 USER root From 8a7431e34d8e3f6b55a7ecfbab062d3053a8e5ea Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 17 Aug 2026 04:09:11 +0000 Subject: [PATCH 18/42] build(deps): bump postgres in /Containers/postgresql Bumps postgres from 18.4-alpine to 18.6-alpine. --- updated-dependencies: - dependency-name: postgres dependency-version: 18.6-alpine dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- Containers/postgresql/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Containers/postgresql/Dockerfile b/Containers/postgresql/Dockerfile index 2f459704..1141d721 100644 --- a/Containers/postgresql/Dockerfile +++ b/Containers/postgresql/Dockerfile @@ -1,6 +1,6 @@ # syntax=docker/dockerfile:latest # From https://github.com/docker-library/postgres/blob/master/18/alpine3.24/Dockerfile -FROM postgres:18.4-alpine +FROM postgres:18.6-alpine ENV PGDATA=/var/lib/postgresql/data From 0ea7163cab96d1c0327a40c724f87932736364ae Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 17 Aug 2026 04:09:27 +0000 Subject: [PATCH 19/42] build(deps): bump nats in /Containers/talk Bumps nats from 2.14.4-scratch to 2.14.5-scratch. --- updated-dependencies: - dependency-name: nats dependency-version: 2.14.5-scratch dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- Containers/talk/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Containers/talk/Dockerfile b/Containers/talk/Dockerfile index ef4e0691..ea3d2406 100644 --- a/Containers/talk/Dockerfile +++ b/Containers/talk/Dockerfile @@ -1,5 +1,5 @@ # syntax=docker/dockerfile:latest -FROM nats:2.14.4-scratch AS nats +FROM nats:2.14.5-scratch AS nats FROM eturnal/eturnal:1.12.2-alpine AS eturnal FROM strukturag/nextcloud-spreed-signaling:2.1.1 AS signaling FROM alpine:3.24.1 AS janus From ecb8c1b23f48a7ddeb71d0c60ee001a8473576a5 Mon Sep 17 00:00:00 2001 From: szaimen <42591237+szaimen@users.noreply.github.com> Date: Mon, 17 Aug 2026 08:25:11 +0000 Subject: [PATCH 20/42] Helm Chart updates Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- nextcloud-aio-helm-chart/Chart.yaml | 2 +- .../nextcloud-aio-apache-deployment.yaml | 4 +- .../nextcloud-aio-clamav-deployment.yaml | 4 +- .../nextcloud-aio-collabora-deployment.yaml | 2 +- .../nextcloud-aio-database-deployment.yaml | 4 +- ...eurooffice-data-persistentvolumeclaim.yaml | 16 +++++ .../nextcloud-aio-eurooffice-deployment.yaml | 12 +++- ...xtcloud-aio-fulltextsearch-deployment.yaml | 4 +- .../nextcloud-aio-harp-deployment.yaml | 72 +++++++++++++++++++ ...tcloud-aio-harp-persistentvolumeclaim.yaml | 18 +++++ .../templates/nextcloud-aio-harp-service.yaml | 19 +++++ .../nextcloud-aio-imaginary-deployment.yaml | 2 +- .../nextcloud-aio-nextcloud-deployment.yaml | 6 +- .../nextcloud-aio-notify-push-deployment.yaml | 2 +- .../nextcloud-aio-onlyoffice-deployment.yaml | 4 +- .../nextcloud-aio-redis-deployment.yaml | 2 +- .../nextcloud-aio-talk-deployment.yaml | 2 +- ...xtcloud-aio-talk-recording-deployment.yaml | 2 +- .../nextcloud-aio-whiteboard-deployment.yaml | 2 +- nextcloud-aio-helm-chart/values.yaml | 8 +++ 20 files changed, 166 insertions(+), 21 deletions(-) create mode 100755 nextcloud-aio-helm-chart/templates/nextcloud-aio-eurooffice-data-persistentvolumeclaim.yaml create mode 100755 nextcloud-aio-helm-chart/templates/nextcloud-aio-harp-deployment.yaml create mode 100755 nextcloud-aio-helm-chart/templates/nextcloud-aio-harp-persistentvolumeclaim.yaml create mode 100755 nextcloud-aio-helm-chart/templates/nextcloud-aio-harp-service.yaml diff --git a/nextcloud-aio-helm-chart/Chart.yaml b/nextcloud-aio-helm-chart/Chart.yaml index b9c317be..b5013fd3 100755 --- a/nextcloud-aio-helm-chart/Chart.yaml +++ b/nextcloud-aio-helm-chart/Chart.yaml @@ -1,6 +1,6 @@ name: nextcloud-aio-helm-chart description: A generated Helm Chart for Nextcloud AIO from Skippbox Kompose -version: 13.4.1 +version: 13.5.0 apiVersion: v2 keywords: - latest diff --git a/nextcloud-aio-helm-chart/templates/nextcloud-aio-apache-deployment.yaml b/nextcloud-aio-helm-chart/templates/nextcloud-aio-apache-deployment.yaml index 0154e571..238fc1cd 100755 --- a/nextcloud-aio-helm-chart/templates/nextcloud-aio-apache-deployment.yaml +++ b/nextcloud-aio-helm-chart/templates/nextcloud-aio-apache-deployment.yaml @@ -51,6 +51,8 @@ spec: value: nextcloud-aio-collabora - name: EUROOFFICE_HOST value: nextcloud-aio-eurooffice + - name: HARP_HOST + value: nextcloud-aio-harp - name: NC_DOMAIN value: "{{ .Values.NC_DOMAIN }}" - name: NEXTCLOUD_HOST @@ -65,7 +67,7 @@ spec: value: "{{ .Values.TIMEZONE }}" - name: WHITEBOARD_HOST value: nextcloud-aio-whiteboard - image: ghcr.io/nextcloud-releases/aio-apache:20260805_083533 + image: ghcr.io/nextcloud-releases/aio-apache:20260817_082005 readinessProbe: exec: command: diff --git a/nextcloud-aio-helm-chart/templates/nextcloud-aio-clamav-deployment.yaml b/nextcloud-aio-helm-chart/templates/nextcloud-aio-clamav-deployment.yaml index 7d446260..75da9d62 100755 --- a/nextcloud-aio-helm-chart/templates/nextcloud-aio-clamav-deployment.yaml +++ b/nextcloud-aio-helm-chart/templates/nextcloud-aio-clamav-deployment.yaml @@ -36,7 +36,7 @@ spec: {{- end }} initContainers: - name: init-subpath - image: ghcr.io/nextcloud-releases/aio-alpine:20260805_083533 + image: ghcr.io/nextcloud-releases/aio-alpine:20260817_082005 command: - mkdir - "-p" @@ -61,7 +61,7 @@ spec: value: "{{ .Values.NEXTCLOUD_UPLOAD_LIMIT }}" - name: TZ value: "{{ .Values.TIMEZONE }}" - image: ghcr.io/nextcloud-releases/aio-clamav:20260805_083533 + image: ghcr.io/nextcloud-releases/aio-clamav:20260817_082005 readinessProbe: exec: command: diff --git a/nextcloud-aio-helm-chart/templates/nextcloud-aio-collabora-deployment.yaml b/nextcloud-aio-helm-chart/templates/nextcloud-aio-collabora-deployment.yaml index 2f52d42f..32c9bbb6 100755 --- a/nextcloud-aio-helm-chart/templates/nextcloud-aio-collabora-deployment.yaml +++ b/nextcloud-aio-helm-chart/templates/nextcloud-aio-collabora-deployment.yaml @@ -37,7 +37,7 @@ spec: value: --o:ssl.enable=false --o:ssl.termination=true --o:logging.disable_server_audit=true --o:welcome.enable=false --o:fetch_update_check=0 --o:allow_update_popup=false --o:remote_font_config.url=https://{{ .Values.NC_DOMAIN }}/apps/richdocuments/settings/fonts.json --o:net.post_allow.host[0]=.+ - name: server_name value: "{{ .Values.NC_DOMAIN }}" - image: ghcr.io/nextcloud-releases/aio-collabora:20260805_083533 + image: ghcr.io/nextcloud-releases/aio-collabora:20260817_082005 readinessProbe: exec: command: diff --git a/nextcloud-aio-helm-chart/templates/nextcloud-aio-database-deployment.yaml b/nextcloud-aio-helm-chart/templates/nextcloud-aio-database-deployment.yaml index 5d3c2544..d05516db 100755 --- a/nextcloud-aio-helm-chart/templates/nextcloud-aio-database-deployment.yaml +++ b/nextcloud-aio-helm-chart/templates/nextcloud-aio-database-deployment.yaml @@ -35,7 +35,7 @@ spec: {{- end }} initContainers: - name: init-subpath - image: ghcr.io/nextcloud-releases/aio-alpine:20260805_083533 + image: ghcr.io/nextcloud-releases/aio-alpine:20260817_082005 command: - mkdir - "-p" @@ -66,7 +66,7 @@ spec: value: nextcloud - name: TZ value: "{{ .Values.TIMEZONE }}" - image: ghcr.io/nextcloud-releases/aio-postgresql:20260805_083533 + image: ghcr.io/nextcloud-releases/aio-postgresql:20260817_082005 readinessProbe: exec: command: diff --git a/nextcloud-aio-helm-chart/templates/nextcloud-aio-eurooffice-data-persistentvolumeclaim.yaml b/nextcloud-aio-helm-chart/templates/nextcloud-aio-eurooffice-data-persistentvolumeclaim.yaml new file mode 100755 index 00000000..3eb9e94f --- /dev/null +++ b/nextcloud-aio-helm-chart/templates/nextcloud-aio-eurooffice-data-persistentvolumeclaim.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + labels: + io.kompose.service: nextcloud-aio-eurooffice-data + name: nextcloud-aio-eurooffice-data + namespace: "{{ .Values.NAMESPACE }}" +spec: + {{- if .Values.STORAGE_CLASS }} + storageClassName: {{ .Values.STORAGE_CLASS }} + {{- end }} + accessModes: + - ReadWriteOnce + resources: + requests: + storage: {{ .Values.EUROOFFICE_DATA_STORAGE_SIZE }} diff --git a/nextcloud-aio-helm-chart/templates/nextcloud-aio-eurooffice-deployment.yaml b/nextcloud-aio-helm-chart/templates/nextcloud-aio-eurooffice-deployment.yaml index 2388c53b..ef066a92 100755 --- a/nextcloud-aio-helm-chart/templates/nextcloud-aio-eurooffice-deployment.yaml +++ b/nextcloud-aio-helm-chart/templates/nextcloud-aio-eurooffice-deployment.yaml @@ -24,12 +24,15 @@ spec: spec: initContainers: - name: init-volumes - image: ghcr.io/nextcloud-releases/aio-alpine:20260805_083533 + image: ghcr.io/nextcloud-releases/aio-alpine:20260817_082005 command: - chmod - "777" - /nextcloud-aio-eurooffice + - /nextcloud-aio-eurooffice-data volumeMounts: + - name: nextcloud-aio-eurooffice-data + mountPath: /nextcloud-aio-eurooffice-data - name: nextcloud-aio-eurooffice mountPath: /nextcloud-aio-eurooffice containers: @@ -46,7 +49,7 @@ spec: value: "{{ .Values.AIO_LOG_LEVEL }}" - name: TZ value: "{{ .Values.TIMEZONE }}" - image: ghcr.io/nextcloud-releases/aio-eurooffice:20260805_083533 + image: ghcr.io/nextcloud-releases/aio-eurooffice:20260817_082005 readinessProbe: exec: command: @@ -70,8 +73,13 @@ spec: volumeMounts: - mountPath: /var/lib/euro-office name: nextcloud-aio-eurooffice + - mountPath: /var/www/euro-office/Data + name: nextcloud-aio-eurooffice-data volumes: - name: nextcloud-aio-eurooffice persistentVolumeClaim: claimName: nextcloud-aio-eurooffice + - name: nextcloud-aio-eurooffice-data + persistentVolumeClaim: + claimName: nextcloud-aio-eurooffice-data {{- end }} diff --git a/nextcloud-aio-helm-chart/templates/nextcloud-aio-fulltextsearch-deployment.yaml b/nextcloud-aio-helm-chart/templates/nextcloud-aio-fulltextsearch-deployment.yaml index 64457492..4412230f 100755 --- a/nextcloud-aio-helm-chart/templates/nextcloud-aio-fulltextsearch-deployment.yaml +++ b/nextcloud-aio-helm-chart/templates/nextcloud-aio-fulltextsearch-deployment.yaml @@ -24,7 +24,7 @@ spec: spec: initContainers: - name: init-volumes - image: ghcr.io/nextcloud-releases/aio-alpine:20260805_083533 + image: ghcr.io/nextcloud-releases/aio-alpine:20260817_082005 command: - chmod - "777" @@ -64,7 +64,7 @@ spec: value: "false" - name: xpack.security.transport.ssl.enabled value: "false" - image: ghcr.io/nextcloud-releases/aio-fulltextsearch:20260805_083533 + image: ghcr.io/nextcloud-releases/aio-fulltextsearch:20260817_082005 readinessProbe: exec: command: diff --git a/nextcloud-aio-helm-chart/templates/nextcloud-aio-harp-deployment.yaml b/nextcloud-aio-helm-chart/templates/nextcloud-aio-harp-deployment.yaml new file mode 100755 index 00000000..67f80a1b --- /dev/null +++ b/nextcloud-aio-helm-chart/templates/nextcloud-aio-harp-deployment.yaml @@ -0,0 +1,72 @@ +{{- if eq .Values.HARP_ENABLED "yes" }} +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + kompose.version: 1.38.0 (a8f5d1cbd) + labels: + io.kompose.service: nextcloud-aio-harp + name: nextcloud-aio-harp + namespace: "{{ .Values.NAMESPACE }}" +spec: + replicas: 1 + selector: + matchLabels: + io.kompose.service: nextcloud-aio-harp + strategy: + type: Recreate + template: + metadata: + annotations: + kompose.version: 1.38.0 (a8f5d1cbd) + labels: + io.kompose.service: nextcloud-aio-harp + spec: + {{- if .Values.HARP_SERVICE_ACCOUNT_NAME }} + serviceAccountName: "{{ .Values.HARP_SERVICE_ACCOUNT_NAME }}" + {{- end }} + containers: + - env: + - name: HP_K8S_ENABLED + value: "true" + - name: HP_K8S_NAMESPACE + value: "{{ .Values.HARP_K8S_NAMESPACE }}" + - name: HP_K8S_STORAGE_CLASS + value: "{{ .Values.HARP_K8S_STORAGE_CLASS }}" + - name: HP_K8S_DEFAULT_STORAGE_SIZE + value: "{{ .Values.HARP_K8S_DEFAULT_STORAGE_SIZE }}" + - name: HP_K8S_HOST_ALIASES + value: "{{ .Values.HARP_K8S_HOST_ALIASES }}" + - name: HP_FRP_DISABLE_TLS + value: "true" + - name: NC_INSTANCE_URL + value: https://{{ .Values.NC_DOMAIN }} + - name: TZ + value: "{{ .Values.TIMEZONE }}" + image: ghcr.io/nextcloud-releases/aio-harp:20260817_082005 + readinessProbe: + exec: + command: + - /healthcheck.sh + failureThreshold: 9 + periodSeconds: 10 + timeoutSeconds: 10 + livenessProbe: + exec: + command: + - /healthcheck.sh + failureThreshold: 9 + periodSeconds: 10 + timeoutSeconds: 10 + name: nextcloud-aio-harp + ports: + - containerPort: 8780 + protocol: TCP + volumeMounts: + - mountPath: /certs + name: nextcloud-aio-harp + volumes: + - name: nextcloud-aio-harp + persistentVolumeClaim: + claimName: nextcloud-aio-harp +{{- end }} diff --git a/nextcloud-aio-helm-chart/templates/nextcloud-aio-harp-persistentvolumeclaim.yaml b/nextcloud-aio-helm-chart/templates/nextcloud-aio-harp-persistentvolumeclaim.yaml new file mode 100755 index 00000000..d00b7063 --- /dev/null +++ b/nextcloud-aio-helm-chart/templates/nextcloud-aio-harp-persistentvolumeclaim.yaml @@ -0,0 +1,18 @@ +{{- if eq .Values.HARP_ENABLED "yes" }} +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + labels: + io.kompose.service: nextcloud-aio-harp + name: nextcloud-aio-harp + namespace: "{{ .Values.NAMESPACE }}" +spec: + {{- if .Values.STORAGE_CLASS }} + storageClassName: {{ .Values.STORAGE_CLASS }} + {{- end }} + accessModes: + - ReadWriteOnce + resources: + requests: + storage: {{ .Values.HARP_STORAGE_SIZE }} +{{- end }} diff --git a/nextcloud-aio-helm-chart/templates/nextcloud-aio-harp-service.yaml b/nextcloud-aio-helm-chart/templates/nextcloud-aio-harp-service.yaml new file mode 100755 index 00000000..a26925ba --- /dev/null +++ b/nextcloud-aio-helm-chart/templates/nextcloud-aio-harp-service.yaml @@ -0,0 +1,19 @@ +{{- if eq .Values.HARP_ENABLED "yes" }} +apiVersion: v1 +kind: Service +metadata: + annotations: + kompose.version: 1.38.0 (a8f5d1cbd) + labels: + io.kompose.service: nextcloud-aio-harp + name: nextcloud-aio-harp + namespace: "{{ .Values.NAMESPACE }}" +spec: + ipFamilyPolicy: PreferDualStack + ports: + - name: "8780" + port: 8780 + targetPort: 8780 + selector: + io.kompose.service: nextcloud-aio-harp +{{- end }} diff --git a/nextcloud-aio-helm-chart/templates/nextcloud-aio-imaginary-deployment.yaml b/nextcloud-aio-helm-chart/templates/nextcloud-aio-imaginary-deployment.yaml index 281b1d91..f45813e6 100755 --- a/nextcloud-aio-helm-chart/templates/nextcloud-aio-imaginary-deployment.yaml +++ b/nextcloud-aio-helm-chart/templates/nextcloud-aio-imaginary-deployment.yaml @@ -40,7 +40,7 @@ spec: value: "{{ .Values.IMAGINARY_SECRET }}" - name: TZ value: "{{ .Values.TIMEZONE }}" - image: ghcr.io/nextcloud-releases/aio-imaginary:20260805_083533 + image: ghcr.io/nextcloud-releases/aio-imaginary:20260817_082005 readinessProbe: exec: command: diff --git a/nextcloud-aio-helm-chart/templates/nextcloud-aio-nextcloud-deployment.yaml b/nextcloud-aio-helm-chart/templates/nextcloud-aio-nextcloud-deployment.yaml index 6a6657c4..5576a7e0 100755 --- a/nextcloud-aio-helm-chart/templates/nextcloud-aio-nextcloud-deployment.yaml +++ b/nextcloud-aio-helm-chart/templates/nextcloud-aio-nextcloud-deployment.yaml @@ -38,7 +38,7 @@ spec: # AIO settings start # Do not remove or change this line! initContainers: - name: init-volumes - image: ghcr.io/nextcloud-releases/aio-alpine:20260805_083533 + image: ghcr.io/nextcloud-releases/aio-alpine:20260817_082005 command: - chmod - "777" @@ -126,6 +126,8 @@ spec: value: http - name: FULLTEXTSEARCH_USER value: elastic + - name: HARP_ENABLED + value: "{{ .Values.HARP_ENABLED }}" - name: IMAGINARY_ENABLED value: "{{ .Values.IMAGINARY_ENABLED }}" - name: IMAGINARY_HOST @@ -198,7 +200,7 @@ spec: value: "{{ .Values.WHITEBOARD_ENABLED }}" - name: WHITEBOARD_SECRET value: "{{ .Values.WHITEBOARD_SECRET }}" - image: ghcr.io/nextcloud-releases/aio-nextcloud:20260805_083533 + image: ghcr.io/nextcloud-releases/aio-nextcloud:20260817_082005 {{- if eq (.Values.RPSS_ENABLED | default "no") "yes" }} # AIO-config - do not change this comment! securityContext: # The items below only work in container context diff --git a/nextcloud-aio-helm-chart/templates/nextcloud-aio-notify-push-deployment.yaml b/nextcloud-aio-helm-chart/templates/nextcloud-aio-notify-push-deployment.yaml index 2cfb2733..95d6af30 100755 --- a/nextcloud-aio-helm-chart/templates/nextcloud-aio-notify-push-deployment.yaml +++ b/nextcloud-aio-helm-chart/templates/nextcloud-aio-notify-push-deployment.yaml @@ -41,7 +41,7 @@ spec: value: nextcloud-aio-nextcloud - name: TZ value: "{{ .Values.TIMEZONE }}" - image: ghcr.io/nextcloud-releases/aio-notify-push:20260805_083533 + image: ghcr.io/nextcloud-releases/aio-notify-push:20260817_082005 readinessProbe: exec: command: diff --git a/nextcloud-aio-helm-chart/templates/nextcloud-aio-onlyoffice-deployment.yaml b/nextcloud-aio-helm-chart/templates/nextcloud-aio-onlyoffice-deployment.yaml index abcf53b2..33624b47 100755 --- a/nextcloud-aio-helm-chart/templates/nextcloud-aio-onlyoffice-deployment.yaml +++ b/nextcloud-aio-helm-chart/templates/nextcloud-aio-onlyoffice-deployment.yaml @@ -24,7 +24,7 @@ spec: spec: initContainers: - name: init-volumes - image: ghcr.io/nextcloud-releases/aio-alpine:20260805_083533 + image: ghcr.io/nextcloud-releases/aio-alpine:20260817_082005 command: - chmod - "777" @@ -46,7 +46,7 @@ spec: value: "{{ .Values.AIO_LOG_LEVEL }}" - name: TZ value: "{{ .Values.TIMEZONE }}" - image: ghcr.io/nextcloud-releases/aio-onlyoffice:20260805_083533 + image: ghcr.io/nextcloud-releases/aio-onlyoffice:20260817_082005 readinessProbe: exec: command: diff --git a/nextcloud-aio-helm-chart/templates/nextcloud-aio-redis-deployment.yaml b/nextcloud-aio-helm-chart/templates/nextcloud-aio-redis-deployment.yaml index 8251d858..c389a633 100755 --- a/nextcloud-aio-helm-chart/templates/nextcloud-aio-redis-deployment.yaml +++ b/nextcloud-aio-helm-chart/templates/nextcloud-aio-redis-deployment.yaml @@ -41,7 +41,7 @@ spec: value: "{{ .Values.REDIS_PASSWORD }}" - name: TZ value: "{{ .Values.TIMEZONE }}" - image: ghcr.io/nextcloud-releases/aio-redis:20260805_083533 + image: ghcr.io/nextcloud-releases/aio-redis:20260817_082005 readinessProbe: exec: command: diff --git a/nextcloud-aio-helm-chart/templates/nextcloud-aio-talk-deployment.yaml b/nextcloud-aio-helm-chart/templates/nextcloud-aio-talk-deployment.yaml index 4e9746dd..1708d15f 100755 --- a/nextcloud-aio-helm-chart/templates/nextcloud-aio-talk-deployment.yaml +++ b/nextcloud-aio-helm-chart/templates/nextcloud-aio-talk-deployment.yaml @@ -56,7 +56,7 @@ spec: value: "{{ .Values.TURN_SECRET }}" - name: TZ value: "{{ .Values.TIMEZONE }}" - image: ghcr.io/nextcloud-releases/aio-talk:20260805_083533 + image: ghcr.io/nextcloud-releases/aio-talk:20260817_082005 readinessProbe: exec: command: diff --git a/nextcloud-aio-helm-chart/templates/nextcloud-aio-talk-recording-deployment.yaml b/nextcloud-aio-helm-chart/templates/nextcloud-aio-talk-recording-deployment.yaml index e225f54f..f89fb9a5 100755 --- a/nextcloud-aio-helm-chart/templates/nextcloud-aio-talk-recording-deployment.yaml +++ b/nextcloud-aio-helm-chart/templates/nextcloud-aio-talk-recording-deployment.yaml @@ -46,7 +46,7 @@ spec: value: "{{ .Values.RECORDING_SECRET }}" - name: TZ value: "{{ .Values.TIMEZONE }}" - image: ghcr.io/nextcloud-releases/aio-talk-recording:20260805_083533 + image: ghcr.io/nextcloud-releases/aio-talk-recording:20260817_082005 readinessProbe: exec: command: diff --git a/nextcloud-aio-helm-chart/templates/nextcloud-aio-whiteboard-deployment.yaml b/nextcloud-aio-helm-chart/templates/nextcloud-aio-whiteboard-deployment.yaml index 755ffbbd..aea4b708 100755 --- a/nextcloud-aio-helm-chart/templates/nextcloud-aio-whiteboard-deployment.yaml +++ b/nextcloud-aio-helm-chart/templates/nextcloud-aio-whiteboard-deployment.yaml @@ -52,7 +52,7 @@ spec: value: redis - name: TZ value: "{{ .Values.TIMEZONE }}" - image: ghcr.io/nextcloud-releases/aio-whiteboard:20260805_083533 + image: ghcr.io/nextcloud-releases/aio-whiteboard:20260817_082005 readinessProbe: exec: command: diff --git a/nextcloud-aio-helm-chart/values.yaml b/nextcloud-aio-helm-chart/values.yaml index 4845f562..43ff8c56 100755 --- a/nextcloud-aio-helm-chart/values.yaml +++ b/nextcloud-aio-helm-chart/values.yaml @@ -17,6 +17,7 @@ CLAMAV_ENABLED: "no" # Setting this to "yes" (with quotes) enables the COLLABORA_ENABLED: "no" # Setting this to "yes" (with quotes) enables the option in Nextcloud automatically. EUROOFFICE_ENABLED: "no" # Setting this to "yes" (with quotes) enables the option in Nextcloud automatically. FULLTEXTSEARCH_ENABLED: "no" # Setting this to "yes" (with quotes) enables the option in Nextcloud automatically. +HARP_ENABLED: "no" # Setting this to "yes" (with quotes) enables the option in Nextcloud automatically. IMAGINARY_ENABLED: "no" # Setting this to "yes" (with quotes) enables the option in Nextcloud automatically. ONLYOFFICE_ENABLED: "no" # Setting this to "yes" (with quotes) enables the option in Nextcloud automatically. TALK_ENABLED: "no" # Setting this to "yes" (with quotes) enables the option in Nextcloud automatically. @@ -49,6 +50,8 @@ DATABASE_STORAGE_SIZE: 1Gi # You can change the size of the database volum DATABASE_DUMP_STORAGE_SIZE: 1Gi # You can change the size of the database-dump volume that default to 1Gi with this value ELASTICSEARCH_STORAGE_SIZE: 1Gi # You can change the size of the elasticsearch volume that default to 1Gi with this value EUROOFFICE_STORAGE_SIZE: 1Gi # You can change the size of the eurooffice volume that default to 1Gi with this value +EUROOFFICE_DATA_STORAGE_SIZE: 1Gi # You can change the size of the eurooffice-data volume that default to 1Gi with this value +HARP_STORAGE_SIZE: 1Gi # You can change the size of the harp volume that default to 1Gi with this value NEXTCLOUD_STORAGE_SIZE: 5Gi # You can change the size of the nextcloud volume that default to 1Gi with this value NEXTCLOUD_DATA_STORAGE_SIZE: 5Gi # You can change the size of the nextcloud-data volume that default to 1Gi with this value NEXTCLOUD_TRUSTED_CACERTS_STORAGE_SIZE: 1Gi # You can change the size of the nextcloud-trusted-cacerts volume that default to 1Gi with this value @@ -77,3 +80,8 @@ MAIL_FROM_ADDRESS: # (not set by default): Set the local-part for the 'f MAIL_DOMAIN: # (not set by default): Set a different domain for the emails than the domain where Nextcloud is installed. TALK_MAX_STREAM_BITRATE: "1048576" # This allows to adjust the max stream bitrate of the talk hpb TALK_MAX_SCREEN_BITRATE: "2097152" # This allows to adjust the max stream bitrate of the talk hpb +HARP_K8S_NAMESPACE: nextcloud-exapps # The Kubernetes namespace that HaRP deploys ExApps (AppAPI apps) into. The namespace must already exist and the HaRP service account must be allowed to manage resources in it. +HARP_K8S_STORAGE_CLASS: # The storage class that HaRP uses for ExApp persistent volume claims. Leave empty to use the cluster's default storage class. +HARP_K8S_DEFAULT_STORAGE_SIZE: 10Gi # The default size of the persistent volume claims that HaRP creates for ExApps. +HARP_K8S_HOST_ALIASES: # Optional. Additional host aliases that HaRP sets on the ExApp pods so that they can resolve the configured hostnames. Use a comma-separated list of hostname:ip pairs, e.g. 'nextcloud.example.com:10.0.0.5,collabora.example.com:10.0.0.6'. Leave empty to not set any host aliases. +HARP_SERVICE_ACCOUNT_NAME: # The name of the Kubernetes service account that is mounted into the HaRP pod and used to authenticate against the Kubernetes API. You need to create this service account yourself and grant it permission to manage resources (deployments, services, persistent volume claims, …) in the HARP_K8S_NAMESPACE namespace via a Role/RoleBinding. Leave empty to use the namespace's "default" service account. From 53509a4fe112fde482d44321febad0f3ad2cf01f Mon Sep 17 00:00:00 2001 From: szaimen <42591237+szaimen@users.noreply.github.com> Date: Mon, 17 Aug 2026 08:31:54 +0000 Subject: [PATCH 21/42] nextcloud-update automated change Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- Containers/nextcloud/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Containers/nextcloud/Dockerfile b/Containers/nextcloud/Dockerfile index 576bae86..07be1a62 100644 --- a/Containers/nextcloud/Dockerfile +++ b/Containers/nextcloud/Dockerfile @@ -8,7 +8,7 @@ ENV SOURCE_LOCATION=/usr/src/nextcloud ENV REDIS_DB_INDEX=0 # AIO settings start # Do not remove or change this line! -ENV NEXTCLOUD_VERSION=33.0.7 +ENV NEXTCLOUD_VERSION=33.0.8 ENV AIO_TOKEN=123456 ENV AIO_URL=localhost # AIO settings end # Do not remove or change this line! From d6c2d5862f9ff4bd88eeb5a060c16bff4a065f8b Mon Sep 17 00:00:00 2001 From: szaimen <42591237+szaimen@users.noreply.github.com> Date: Mon, 17 Aug 2026 08:42:31 +0000 Subject: [PATCH 22/42] watchtower-update automated change Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- Containers/watchtower/Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Containers/watchtower/Dockerfile b/Containers/watchtower/Dockerfile index 1c1ce7f2..875c1da9 100644 --- a/Containers/watchtower/Dockerfile +++ b/Containers/watchtower/Dockerfile @@ -1,13 +1,13 @@ # syntax=docker/dockerfile:latest FROM golang:1.26.5-alpine3.24 AS go -ENV WATCHTOWER_COMMIT_HASH=e48a0307b9cab185e08f6f8453ee62f937f43a06 +ENV WATCHTOWER_COMMIT_HASH=dcc6e4acd3bd798c46b21bb4e70870f2dca6675d RUN set -ex; \ apk upgrade --no-cache -a; \ apk add --no-cache \ build-base; \ - go install github.com/nicholas-fedor/watchtower@$WATCHTOWER_COMMIT_HASH # v1.20.2 + go install github.com/nicholas-fedor/watchtower@$WATCHTOWER_COMMIT_HASH # v1.20.3 FROM alpine:3.24.1 From c707e99ff085b7628426775011594d60a6bd0ae6 Mon Sep 17 00:00:00 2001 From: "Simon L." Date: Mon, 17 Aug 2026 13:01:16 +0200 Subject: [PATCH 23/42] helm-chart: fix eurooffice data pvc should be optiional Signed-off-by: Simon L. --- ...nextcloud-aio-eurooffice-data-persistentvolumeclaim.yaml | 2 ++ nextcloud-aio-helm-chart/update-helm.sh | 6 ++++++ 2 files changed, 8 insertions(+) diff --git a/nextcloud-aio-helm-chart/templates/nextcloud-aio-eurooffice-data-persistentvolumeclaim.yaml b/nextcloud-aio-helm-chart/templates/nextcloud-aio-eurooffice-data-persistentvolumeclaim.yaml index 3eb9e94f..b76ddb2a 100755 --- a/nextcloud-aio-helm-chart/templates/nextcloud-aio-eurooffice-data-persistentvolumeclaim.yaml +++ b/nextcloud-aio-helm-chart/templates/nextcloud-aio-eurooffice-data-persistentvolumeclaim.yaml @@ -1,3 +1,4 @@ +{{- if eq .Values.EUROOFFICE_ENABLED "yes" }} apiVersion: v1 kind: PersistentVolumeClaim metadata: @@ -14,3 +15,4 @@ spec: resources: requests: storage: {{ .Values.EUROOFFICE_DATA_STORAGE_SIZE }} +{{- end }} diff --git a/nextcloud-aio-helm-chart/update-helm.sh b/nextcloud-aio-helm-chart/update-helm.sh index 9e4d9a6a..c760b63e 100755 --- a/nextcloud-aio-helm-chart/update-helm.sh +++ b/nextcloud-aio-helm-chart/update-helm.sh @@ -509,6 +509,12 @@ find ./ -name "*nextcloud-aio-elasticsearch-persistentvolumeclaim.yaml" -exec se # shellcheck disable=SC1083 find ./ -name "*nextcloud-aio-elasticsearch-persistentvolumeclaim.yaml" -exec sed -i "$ a {{- end }}" \{} \; +# Additional case for Eurooffice-data +# shellcheck disable=SC1083 +find ./ -name "*nextcloud-aio-eurooffice-data-persistentvolumeclaim.yaml" -exec sed -i "1i\\{{- if eq .Values.EUROOFFICE_ENABLED \"yes\" }}" \{} \; +# shellcheck disable=SC1083 +find ./ -name "*nextcloud-aio-eurooffice-data-persistentvolumeclaim.yaml" -exec sed -i "$ a {{- end }}" \{} \; + cat << EOL > /tmp/security.conf # The items below only work in container context allowPrivilegeEscalation: false From bb9039e4fdda202feb9da349df40df8a9b0062b0 Mon Sep 17 00:00:00 2001 From: "Simon L." Date: Mon, 17 Aug 2026 13:02:16 +0200 Subject: [PATCH 24/42] increase helm to 13.5.0-1 Signed-off-by: Simon L. --- nextcloud-aio-helm-chart/Chart.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nextcloud-aio-helm-chart/Chart.yaml b/nextcloud-aio-helm-chart/Chart.yaml index b5013fd3..9cc097e8 100755 --- a/nextcloud-aio-helm-chart/Chart.yaml +++ b/nextcloud-aio-helm-chart/Chart.yaml @@ -1,6 +1,6 @@ name: nextcloud-aio-helm-chart description: A generated Helm Chart for Nextcloud AIO from Skippbox Kompose -version: 13.5.0 +version: 13.5.0-1 apiVersion: v2 keywords: - latest From 22c29e078a12d84eaa9733ded8e397f03e1cd779 Mon Sep 17 00:00:00 2001 From: "Simon L." Date: Mon, 17 Aug 2026 14:45:04 +0200 Subject: [PATCH 25/42] Clarify container purpose for Let's Encrypt certificates Updated the readme to clarify the purpose of the container regarding Let's Encrypt certificates. Signed-off-by: Simon L. --- community-containers/caddy/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/community-containers/caddy/readme.md b/community-containers/caddy/readme.md index 538f0833..0f028eb6 100644 --- a/community-containers/caddy/readme.md +++ b/community-containers/caddy/readme.md @@ -9,7 +9,7 @@ This container bundles [caddy](https://caddyserver.com/) and auto-configures it ## Supported community containers -This container configures subdomains for a number of community containers. +This container creates Let's Encrypr certificates for subdomains of `your-nc-domain.com` for a number of community containers. > [!Important] > You need to set the correct DNS records for this to work From c76f1c92d23ec59e35e46e347a4fa2836bc8f237 Mon Sep 17 00:00:00 2001 From: "Simon L." Date: Mon, 17 Aug 2026 14:45:35 +0200 Subject: [PATCH 26/42] Fix typo in readme for Let's Encrypt certificates Signed-off-by: Simon L. --- community-containers/caddy/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/community-containers/caddy/readme.md b/community-containers/caddy/readme.md index 0f028eb6..72638077 100644 --- a/community-containers/caddy/readme.md +++ b/community-containers/caddy/readme.md @@ -9,7 +9,7 @@ This container bundles [caddy](https://caddyserver.com/) and auto-configures it ## Supported community containers -This container creates Let's Encrypr certificates for subdomains of `your-nc-domain.com` for a number of community containers. +This container creates Let's Encrypt certificates for subdomains of `your-nc-domain.com` for a number of community containers. > [!Important] > You need to set the correct DNS records for this to work From a65e2a2e426d0cbcd0251e4a1aca3c41fd2b6163 Mon Sep 17 00:00:00 2001 From: "Simon L." Date: Mon, 17 Aug 2026 14:46:15 +0200 Subject: [PATCH 27/42] Update caution note about default admin user Clarified the requirement for the default 'admin' user in the Caddy container. Signed-off-by: Simon L. --- community-containers/caddy/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/community-containers/caddy/readme.md b/community-containers/caddy/readme.md index 72638077..a0c756cc 100644 --- a/community-containers/caddy/readme.md +++ b/community-containers/caddy/readme.md @@ -5,7 +5,7 @@ This container bundles [caddy](https://caddyserver.com/) and auto-configures it > [!Caution] > - This container is incompatible with the [npmplus](https://github.com/nextcloud/all-in-one/tree/main/community-containers/npmplus) community container. So make sure that you do not enable both at the same time! > - Make sure that no other service is using port 443/tcp on your host as otherwise the containers will fail to start. You can check this with `sudo netstat -tulpn | grep 443` before installing this container -> - the default `admin` user needs to be present, i.e. it can not be deleted because caddy configuration can be done there. +> - the default `admin` Nextcloud user needs to be present, i.e. it can not be deleted because caddy configuration can be done there. ## Supported community containers From e4dfe3a122d207f5090cb3e32563cd256b101920 Mon Sep 17 00:00:00 2001 From: "Simon L." Date: Mon, 17 Aug 2026 14:48:11 +0200 Subject: [PATCH 28/42] Update geoblocking instructions in readme.md Clarified instructions for logging in and locating the allowed-countries.txt file in Nextcloud. Signed-off-by: Simon L. --- community-containers/caddy/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/community-containers/caddy/readme.md b/community-containers/caddy/readme.md index a0c756cc..60154579 100644 --- a/community-containers/caddy/readme.md +++ b/community-containers/caddy/readme.md @@ -36,7 +36,7 @@ This container creates Let's Encrypt certificates for subdomains of `your-nc-dom ## Geoblocking - - After the container was started the first time, log in as default `admin` user. You should see a new `nextcloud-aio-caddy` folder and inside there an `allowed-countries.txt` file + - After the container was started the first time, log in in Nextcloud as default `admin` user. You should see a new `nextcloud-aio-caddy` folder in the files app and inside there an `allowed-countries.txt` file - In there you can adjust the allowed country codes for caddy by adding them to the first line, e.g. `IT FR` would allow access from italy and france. - Additionally, in order to activate this config, you need to get an account at https://dev.maxmind.com/geoip/geolite2-free-geolocation-data - download the `GeoLite2-Country.mmdb` from there and upload it with this exact name into the `nextcloud-aio-caddy` folder. From 61a2d94a4b5d56a9e5ae6e4f68fafe9b1641b90e Mon Sep 17 00:00:00 2001 From: "Simon L." Date: Mon, 17 Aug 2026 15:19:34 +0200 Subject: [PATCH 29/42] Revise testing verification statement in PR template Updated the pull request template to clarify testing procedures. Signed-off-by: Simon L. --- .github/pull_request_template.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index 86ff338f..99e1b795 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -7,7 +7,7 @@ - Resolves: # ## Summary -- [ ] The PR was tested and verified that it works locally +- [ ] The PR was tested and verified that it works locally or will be tested after merge on a dedicated test instance - [ ] [Sign-off message](https://github.com/src-d/guide/blob/master/developer-community/fix-DCO.md) is added to all commits - [ ] Tests (playwright if possible) are included - [ ] Screenshots before/after for front-end changes From a2b21e80b0e8ee1d4951c47112b3c28761ae43d4 Mon Sep 17 00:00:00 2001 From: "Simon L." Date: Mon, 17 Aug 2026 15:23:37 +0200 Subject: [PATCH 30/42] send outdated notifications only to admin users Signed-off-by: Simon L. --- php/src/Cron/OutdatedNotification.php | 2 +- readme.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/php/src/Cron/OutdatedNotification.php b/php/src/Cron/OutdatedNotification.php index 628f0924..50480a06 100644 --- a/php/src/Cron/OutdatedNotification.php +++ b/php/src/Cron/OutdatedNotification.php @@ -21,6 +21,6 @@ $nextcloudContainer = $containerDefinitionFetcher->GetContainerById($id); $isNextcloudImageOutdated = $dockerActionManager->isNextcloudImageOutdated(); if ($isNextcloudImageOutdated === true) { - $dockerActionManager->sendNotification($nextcloudContainer, 'AIO is outdated!', 'Please open the AIO interface or ask an administrator to update it. If you do not want to do it manually each time, you can enable the daily backup feature from the AIO interface which automatically updates all containers.', '/notify-all.sh'); + $dockerActionManager->sendNotification($nextcloudContainer, 'AIO is outdated!', 'Please open the AIO interface to update it. If you do not want to do it manually each time, you can enable the daily backup feature from the AIO interface which automatically updates all containers.'); } diff --git a/readme.md b/readme.md index 7de9a802..6322b923 100644 --- a/readme.md +++ b/readme.md @@ -1314,7 +1314,7 @@ What are the requirements? This project values stability over new features. That means that when a new major Nextcloud update gets introduced, we will wait at least until the first patch release, e.g. `24.0.1` is out before upgrading to it. Also we will wait with the upgrade until all important apps are compatible with the new major version. Minor or patch releases for Nextcloud and all dependencies as well as all containers will be updated to new versions as soon as possible but we try to give all updates first a good test round before pushing them. That means that it can take around 2 weeks before new updates reach the `latest` channel. If you want to help testing, you can switch to the `beta` channel by following [this documentation](#how-to-switch-the-channel) which will also give you the updates earlier. ### How often are update notifications sent? -AIO ships its own update notifications implementation. It checks if container updates are available. If so, it sends a notification with the title `Container updates available!` on saturdays to Nextcloud users that are part of the `admin` group. If the Nextcloud container image should be older than 90 days (~3 months) and thus badly outdated, AIO sends a notification to all Nextcloud users with the title `AIO is outdated!`. Thus admins should make sure to update the container images at least once every 3 months in order to make sure that the instance gets all security bugfixes as soon as possible. +AIO ships its own update notifications implementation. It checks if container updates are available. If so, it sends a notification with the title `Container updates available!` on saturdays to Nextcloud users that are part of the `admin` group. If the Nextcloud container image should be older than 90 days (~3 months) and thus badly outdated, AIO sends a notification to Nextcloud users that are part of the `admin` group with the title `AIO is outdated!` every day. Thus admins should make sure to update the container images at least once every 3 months in order to make sure that the instance gets all security bugfixes as soon as possible. ### Huge docker logs If you should run into issues with huge docker logs, you can adjust the log size by following https://docs.docker.com/config/containers/logging/local/#usage. You can additionally reduce the verbosity of the included AIO containers by setting `AIO_LOG_LEVEL=error` on the mastercontainer. By default, AIO keeps the existing component-specific log defaults, so this should usually not be needed. From 8affaea53e9e737c9e35cce89d3f4cb168d80b1f Mon Sep 17 00:00:00 2001 From: "Simon L." Date: Mon, 17 Aug 2026 15:28:06 +0200 Subject: [PATCH 31/42] Revise testing verification checklist in PR template Updated pull request template to clarify testing verification process. Signed-off-by: Simon L. --- .github/pull_request_template.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index 99e1b795..462cc7da 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -7,7 +7,8 @@ - Resolves: # ## Summary -- [ ] The PR was tested and verified that it works locally or will be tested after merge on a dedicated test instance +- [ ] The PR was tested and verified that it works locally +- [ ] Or will be tested after merge on a dedicated test instance (available for maintainers) - [ ] [Sign-off message](https://github.com/src-d/guide/blob/master/developer-community/fix-DCO.md) is added to all commits - [ ] Tests (playwright if possible) are included - [ ] Screenshots before/after for front-end changes From f20ced3189ad448c7642933c18ea1dd8205a5438 Mon Sep 17 00:00:00 2001 From: "Ruben D." <63711687+winterrific@users.noreply.github.com> Date: Mon, 17 Aug 2026 20:24:11 +0200 Subject: [PATCH 32/42] Update community-containers/stalwart/stalwart.json Co-authored-by: Simon L. Signed-off-by: Ruben D. <63711687+winterrific@users.noreply.github.com> --- community-containers/stalwart/stalwart.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/community-containers/stalwart/stalwart.json b/community-containers/stalwart/stalwart.json index 7d448d3c..41c77a60 100644 --- a/community-containers/stalwart/stalwart.json +++ b/community-containers/stalwart/stalwart.json @@ -5,7 +5,7 @@ "display_name": "Stalwart", "documentation": "https://github.com/nextcloud/all-in-one/tree/main/community-containers/stalwart", "image": "ghcr.io/winterrific/aio-stalwart", - "image_tag": "v3", + "image_tag": "v0", "internal_port": "10003", "restart": "unless-stopped", "ports": [ From b9f24247d3d73249e4f8cef94f0a6bef6504c646 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 18 Aug 2026 04:07:14 +0000 Subject: [PATCH 33/42] build(deps): bump nextcloud/nextcloud-appapi-harp in /Containers/harp Bumps nextcloud/nextcloud-appapi-harp from v0.4.3 to v0.4.4. --- updated-dependencies: - dependency-name: nextcloud/nextcloud-appapi-harp dependency-version: v0.4.4 dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- Containers/harp/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Containers/harp/Dockerfile b/Containers/harp/Dockerfile index 0a931846..a7440527 100644 --- a/Containers/harp/Dockerfile +++ b/Containers/harp/Dockerfile @@ -1,5 +1,5 @@ # syntax=docker/dockerfile:latest -FROM ghcr.io/nextcloud/nextcloud-appapi-harp:v0.4.3 +FROM ghcr.io/nextcloud/nextcloud-appapi-harp:v0.4.4 # USER root is probably used From 6555561d9ccd6fb2fb09f1374ba684b44b2f4f31 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 18 Aug 2026 04:07:19 +0000 Subject: [PATCH 34/42] build(deps): bump golang in /Containers/imaginary Bumps golang from 1.26.5-alpine3.24 to 1.26.6-alpine3.24. --- updated-dependencies: - dependency-name: golang dependency-version: 1.26.6-alpine3.24 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- Containers/imaginary/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Containers/imaginary/Dockerfile b/Containers/imaginary/Dockerfile index e3672eb2..2d69bcdb 100644 --- a/Containers/imaginary/Dockerfile +++ b/Containers/imaginary/Dockerfile @@ -1,5 +1,5 @@ # syntax=docker/dockerfile:latest -FROM golang:1.26.5-alpine3.24 AS go +FROM golang:1.26.6-alpine3.24 AS go ENV IMAGINARY_HASH=6a274b488759a896aff02f52afee6e50b5e3a3ee From 4ebc235f4f8f28ff33c771791adbc26152274e1d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 18 Aug 2026 04:08:11 +0000 Subject: [PATCH 35/42] build(deps): bump golang in /Containers/watchtower Bumps golang from 1.26.5-alpine3.24 to 1.26.6-alpine3.24. --- updated-dependencies: - dependency-name: golang dependency-version: 1.26.6-alpine3.24 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- Containers/watchtower/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Containers/watchtower/Dockerfile b/Containers/watchtower/Dockerfile index 875c1da9..ccb05e44 100644 --- a/Containers/watchtower/Dockerfile +++ b/Containers/watchtower/Dockerfile @@ -1,5 +1,5 @@ # syntax=docker/dockerfile:latest -FROM golang:1.26.5-alpine3.24 AS go +FROM golang:1.26.6-alpine3.24 AS go ENV WATCHTOWER_COMMIT_HASH=dcc6e4acd3bd798c46b21bb4e70870f2dca6675d From 07cba2dafa8d74a6353a2f5f3d5b806da85d6ed3 Mon Sep 17 00:00:00 2001 From: "Simon L." Date: Tue, 18 Aug 2026 09:55:01 +0200 Subject: [PATCH 36/42] Update AIO version from 13.5.0 to 13.6.0 Signed-off-by: Simon L. --- php/templates/includes/aio-version.twig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/php/templates/includes/aio-version.twig b/php/templates/includes/aio-version.twig index d224e690..fc9c00c1 100644 --- a/php/templates/includes/aio-version.twig +++ b/php/templates/includes/aio-version.twig @@ -1 +1 @@ -13.5.0 +13.6.0 From 4d5bd5d4acbb94333aec8e1c4432b343feb768ae Mon Sep 17 00:00:00 2001 From: "Simon L." Date: Tue, 18 Aug 2026 10:09:30 +0200 Subject: [PATCH 37/42] Revert "build(deps): bump collabora/code from 26.04.2.1.1 to 26.04.3.1.1 in /Containers/collabora" --- Containers/collabora/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Containers/collabora/Dockerfile b/Containers/collabora/Dockerfile index eb6c759a..5409360b 100644 --- a/Containers/collabora/Dockerfile +++ b/Containers/collabora/Dockerfile @@ -1,6 +1,6 @@ # syntax=docker/dockerfile:latest # From a file located probably somewhere here: https://github.com/CollaboraOnline/online/blob/master/docker/from-packages/Dockerfile -FROM collabora/code:26.04.3.1.1 +FROM collabora/code:26.04.2.1.1 USER root ARG DEBIAN_FRONTEND=noninteractive From a470801e9860d25189b396b11f018d7856464f52 Mon Sep 17 00:00:00 2001 From: "Simon L." Date: Tue, 18 Aug 2026 13:57:45 +0200 Subject: [PATCH 38/42] do not strip the HP_SHARED_KEY from manual-install and helm-chart Signed-off-by: Simon L. --- manual-install/latest.yml | 2 ++ manual-install/sample.conf | 1 + manual-install/update-yaml.sh | 1 - .../templates/nextcloud-aio-harp-deployment.yaml | 2 ++ .../templates/nextcloud-aio-nextcloud-deployment.yaml | 2 ++ nextcloud-aio-helm-chart/values.yaml | 1 + 6 files changed, 8 insertions(+), 1 deletion(-) diff --git a/manual-install/latest.yml b/manual-install/latest.yml index 12b59ace..bb8f2943 100644 --- a/manual-install/latest.yml +++ b/manual-install/latest.yml @@ -198,6 +198,7 @@ services: - WHITEBOARD_SECRET - WHITEBOARD_ENABLED - HARP_ENABLED + - HP_SHARED_KEY stop_grace_period: 600s restart: unless-stopped shm_size: 134217728 @@ -523,6 +524,7 @@ services: start_interval: 5s retries: 9 environment: + - HP_SHARED_KEY - NC_INSTANCE_URL=https://${NC_DOMAIN} - HP_FRP_DISABLE_TLS=true - TZ=${TIMEZONE} diff --git a/manual-install/sample.conf b/manual-install/sample.conf index 5efd84fa..85d0b775 100644 --- a/manual-install/sample.conf +++ b/manual-install/sample.conf @@ -1,6 +1,7 @@ DATABASE_PASSWORD= # TODO! This needs to be a unique and good password! EUROOFFICE_SECRET= # TODO! This needs to be a unique and good password! FULLTEXTSEARCH_PASSWORD= # TODO! This needs to be a unique and good password! +HP_SHARED_KEY= # TODO! This needs to be a unique and good password! IMAGINARY_SECRET= # TODO! This needs to be a unique and good password! NC_DOMAIN=yourdomain.com # TODO! Needs to be changed to the domain that you want to use for Nextcloud. NEXTCLOUD_PASSWORD= # TODO! This is the password of the initially created Nextcloud admin with username "admin". diff --git a/manual-install/update-yaml.sh b/manual-install/update-yaml.sh index 88e5b3ab..cbf36668 100644 --- a/manual-install/update-yaml.sh +++ b/manual-install/update-yaml.sh @@ -45,7 +45,6 @@ sed -i 's|- ip_binding: |- |' containers.yml sed -i '/AIO_TOKEN/d' containers.yml sed -i '/AIO_URL/d' containers.yml sed -i '/DOCKER_SOCKET_PROXY_ENABLED/d' containers.yml -sed -i '/HP_SHARED_KEY/d' containers.yml sed -i '/ADDITIONAL_TRUSTED_PROXY/d' containers.yml sed -i '/TURN_DOMAIN/d' containers.yml sed -i '/NC_AIO_VERSION/d' containers.yml diff --git a/nextcloud-aio-helm-chart/templates/nextcloud-aio-harp-deployment.yaml b/nextcloud-aio-helm-chart/templates/nextcloud-aio-harp-deployment.yaml index 67f80a1b..0563e53e 100755 --- a/nextcloud-aio-helm-chart/templates/nextcloud-aio-harp-deployment.yaml +++ b/nextcloud-aio-helm-chart/templates/nextcloud-aio-harp-deployment.yaml @@ -39,6 +39,8 @@ spec: value: "{{ .Values.HARP_K8S_HOST_ALIASES }}" - name: HP_FRP_DISABLE_TLS value: "true" + - name: HP_SHARED_KEY + value: "{{ .Values.HP_SHARED_KEY }}" - name: NC_INSTANCE_URL value: https://{{ .Values.NC_DOMAIN }} - name: TZ diff --git a/nextcloud-aio-helm-chart/templates/nextcloud-aio-nextcloud-deployment.yaml b/nextcloud-aio-helm-chart/templates/nextcloud-aio-nextcloud-deployment.yaml index 5576a7e0..dcfd5e85 100755 --- a/nextcloud-aio-helm-chart/templates/nextcloud-aio-nextcloud-deployment.yaml +++ b/nextcloud-aio-helm-chart/templates/nextcloud-aio-nextcloud-deployment.yaml @@ -128,6 +128,8 @@ spec: value: elastic - name: HARP_ENABLED value: "{{ .Values.HARP_ENABLED }}" + - name: HP_SHARED_KEY + value: "{{ .Values.HP_SHARED_KEY }}" - name: IMAGINARY_ENABLED value: "{{ .Values.IMAGINARY_ENABLED }}" - name: IMAGINARY_HOST diff --git a/nextcloud-aio-helm-chart/values.yaml b/nextcloud-aio-helm-chart/values.yaml index 43ff8c56..0a61dd92 100755 --- a/nextcloud-aio-helm-chart/values.yaml +++ b/nextcloud-aio-helm-chart/values.yaml @@ -1,6 +1,7 @@ DATABASE_PASSWORD: # TODO! This needs to be a unique and good password! EUROOFFICE_SECRET: # TODO! This needs to be a unique and good password! FULLTEXTSEARCH_PASSWORD: # TODO! This needs to be a unique and good password! +HP_SHARED_KEY: # TODO! This needs to be a unique and good password! IMAGINARY_SECRET: # TODO! This needs to be a unique and good password! NC_DOMAIN: yourdomain.com # TODO! Needs to be changed to the domain that you want to use for Nextcloud. NEXTCLOUD_PASSWORD: # TODO! This is the password of the initially created Nextcloud admin with username admin. From 69826d53070aa5868d7156729730c9539cd599a8 Mon Sep 17 00:00:00 2001 From: "Simon L." Date: Tue, 18 Aug 2026 13:59:22 +0200 Subject: [PATCH 39/42] update helm-chart to `v13.5.2` Signed-off-by: Simon L. --- nextcloud-aio-helm-chart/Chart.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nextcloud-aio-helm-chart/Chart.yaml b/nextcloud-aio-helm-chart/Chart.yaml index 9cc097e8..478b49e6 100755 --- a/nextcloud-aio-helm-chart/Chart.yaml +++ b/nextcloud-aio-helm-chart/Chart.yaml @@ -1,6 +1,6 @@ name: nextcloud-aio-helm-chart description: A generated Helm Chart for Nextcloud AIO from Skippbox Kompose -version: 13.5.0-1 +version: 13.5.2 apiVersion: v2 keywords: - latest From 5fe6ba953738ac6d59b077ad627eb7991840d3b6 Mon Sep 17 00:00:00 2001 From: "Simon L." Date: Tue, 18 Aug 2026 15:32:47 +0200 Subject: [PATCH 40/42] helm: add a notice for HP_SHARED_KEY Signed-off-by: Simon L. --- nextcloud-aio-helm-chart/update-helm.sh | 1 + nextcloud-aio-helm-chart/values.yaml | 1 + 2 files changed, 2 insertions(+) diff --git a/nextcloud-aio-helm-chart/update-helm.sh b/nextcloud-aio-helm-chart/update-helm.sh index c760b63e..33275e1d 100755 --- a/nextcloud-aio-helm-chart/update-helm.sh +++ b/nextcloud-aio-helm-chart/update-helm.sh @@ -475,6 +475,7 @@ MAIL_DOMAIN: # (not set by default): Set a different domain for the emai TALK_MAX_STREAM_BITRATE: "1048576" # This allows to adjust the max stream bitrate of the talk hpb TALK_MAX_SCREEN_BITRATE: "2097152" # This allows to adjust the max stream bitrate of the talk hpb HARP_K8S_NAMESPACE: nextcloud-exapps # The Kubernetes namespace that HaRP deploys ExApps (AppAPI apps) into. The namespace must already exist and the HaRP service account must be allowed to manage resources in it. +# HP_SHARED_KEY: # This allows to set the shared key for HaRP which is getting set at the very top of this values.yaml file. HARP_K8S_STORAGE_CLASS: # The storage class that HaRP uses for ExApp persistent volume claims. Leave empty to use the cluster's default storage class. HARP_K8S_DEFAULT_STORAGE_SIZE: 10Gi # The default size of the persistent volume claims that HaRP creates for ExApps. HARP_K8S_HOST_ALIASES: # Optional. Additional host aliases that HaRP sets on the ExApp pods so that they can resolve the configured hostnames. Use a comma-separated list of hostname:ip pairs, e.g. 'nextcloud.example.com:10.0.0.5,collabora.example.com:10.0.0.6'. Leave empty to not set any host aliases. diff --git a/nextcloud-aio-helm-chart/values.yaml b/nextcloud-aio-helm-chart/values.yaml index 0a61dd92..693fc0cf 100755 --- a/nextcloud-aio-helm-chart/values.yaml +++ b/nextcloud-aio-helm-chart/values.yaml @@ -82,6 +82,7 @@ MAIL_DOMAIN: # (not set by default): Set a different domain for the emai TALK_MAX_STREAM_BITRATE: "1048576" # This allows to adjust the max stream bitrate of the talk hpb TALK_MAX_SCREEN_BITRATE: "2097152" # This allows to adjust the max stream bitrate of the talk hpb HARP_K8S_NAMESPACE: nextcloud-exapps # The Kubernetes namespace that HaRP deploys ExApps (AppAPI apps) into. The namespace must already exist and the HaRP service account must be allowed to manage resources in it. +# HP_SHARED_KEY: # This allows to set the shared key for HaRP which is getting set at the very top of this values.yaml file. HARP_K8S_STORAGE_CLASS: # The storage class that HaRP uses for ExApp persistent volume claims. Leave empty to use the cluster's default storage class. HARP_K8S_DEFAULT_STORAGE_SIZE: 10Gi # The default size of the persistent volume claims that HaRP creates for ExApps. HARP_K8S_HOST_ALIASES: # Optional. Additional host aliases that HaRP sets on the ExApp pods so that they can resolve the configured hostnames. Use a comma-separated list of hostname:ip pairs, e.g. 'nextcloud.example.com:10.0.0.5,collabora.example.com:10.0.0.6'. Leave empty to not set any host aliases. From 79a31ba378367864cdd0a57ec0dd03f7429263fb Mon Sep 17 00:00:00 2001 From: Zoey Date: Tue, 18 Aug 2026 22:48:22 +0200 Subject: [PATCH 41/42] update apache websocket config to match 2.4.47+ (released in 2021) Signed-off-by: Zoey --- reverse-proxy.md | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/reverse-proxy.md b/reverse-proxy.md index 21e6615d..ccafc834 100644 --- a/reverse-proxy.md +++ b/reverse-proxy.md @@ -214,7 +214,6 @@ Add this as a new Apache site config: ServerName - # Reverse proxy based on https://httpd.apache.org/docs/current/mod/mod_proxy_wstunnel.html RewriteEngine On ProxyPreserveHost On RequestHeader set X-Real-IP %{REMOTE_ADDR}s @@ -223,13 +222,8 @@ Add this as a new Apache site config: AllowEncodedSlashes NoDecode # Adjust the two lines below to match APACHE_PORT and APACHE_IP_BINDING. See https://github.com/nextcloud/all-in-one/blob/main/reverse-proxy.md#adapting-the-sample-web-server-configurations-below - ProxyPass / http://localhost:11000/ nocanon + ProxyPass / http://localhost:11000/ nocanon upgrade=websocket ProxyPassReverse / http://localhost:11000/ - - RewriteCond %{HTTP:Upgrade} websocket [NC] - RewriteCond %{HTTP:Connection} upgrade [NC] - RewriteCond %{THE_REQUEST} "^[a-zA-Z]+ /(.*) HTTP/\d+(\.\d+)?$" - RewriteRule .? "ws://localhost:11000/%1" [P,L,UnsafeAllow3F] # Adjust to match APACHE_PORT and APACHE_IP_BINDING. See https://github.com/nextcloud/all-in-one/blob/main/reverse-proxy.md#adapting-the-sample-web-server-configurations-below # Enable h2, h2c and http1.1 Protocols h2 h2c http/1.1 @@ -270,7 +264,17 @@ Add this as a new Apache site config: ⚠️ **Please note:** Look into [this](#adapting-the-sample-web-server-configurations-below) to adapt the above example configuration. To make the config work you can run the following command: -`sudo a2enmod rewrite proxy proxy_http proxy_wstunnel ssl headers http2` +`sudo a2enmod rewrite proxy proxy_http ssl headers http2` + +The `upgrade=websocket` parameter requires Apache 2.4.47 or later. On older versions, replace it with the following block, which needs `proxy_wstunnel` enabled additionally: + +``` + RewriteEngine On + RewriteCond %{HTTP:Upgrade} websocket [NC] + RewriteCond %{HTTP:Connection} upgrade [NC] + RewriteCond %{THE_REQUEST} "^[a-zA-Z]+ /(.*) HTTP/\d+(\.\d+)?$" + RewriteRule .? "ws://localhost:11000/%1" [P,L,NE,UnsafeAllow3F] # Adjust to match APACHE_PORT and APACHE_IP_BINDING. See https://github.com/nextcloud/all-in-one/blob/main/reverse-proxy.md#adapting-the-sample-web-server-configurations-below +``` From 96720914bd1d65cc741727d0a85df36e44919300 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 19 Aug 2026 12:03:51 +0000 Subject: [PATCH 42/42] build(deps): bump astral-sh/setup-uv in /.github/workflows Bumps [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv) from 9.0.0 to 10.0.0. - [Release notes](https://github.com/astral-sh/setup-uv/releases) - [Commits](https://github.com/astral-sh/setup-uv/compare/c771a70e6277c0a99b617c7a806ffedaca235ff9...ae62891fec2bb8e7d6c99fc78c9fec3a63790f8d) --- updated-dependencies: - dependency-name: astral-sh/setup-uv dependency-version: 10.0.0 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/lint-yaml.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/lint-yaml.yml b/.github/workflows/lint-yaml.yml index 7881d542..50c5a2e5 100644 --- a/.github/workflows/lint-yaml.yml +++ b/.github/workflows/lint-yaml.yml @@ -36,7 +36,7 @@ jobs: line-length: warning - name: Install the latest version of uv - uses: astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9 # v9.0.0 + uses: astral-sh/setup-uv@ae62891fec2bb8e7d6c99fc78c9fec3a63790f8d # v10.0.0 - name: Check GitHub actions run: uvx zizmor --min-severity medium .github/workflows/*.yml