Compare commits

...

143 Commits

Author SHA1 Message Date
Simon L.
3c06312de0 Merge pull request #6639 from nextcloud/aio-helm-update
Helm Chart updates
2025-07-10 10:54:48 +02:00
Simon L.
0fdd8556ef Merge pull request #6627 from nextcloud/dependabot/docker/Containers/collabora/collabora/code-25.04.3.2.1
build(deps): bump collabora/code from 25.04.3.1.1 to 25.04.3.2.1 in /Containers/collabora
2025-07-10 10:54:12 +02:00
Simon L.
362836ccfb Merge pull request #6618 from nextcloud/aio-dependency-update
PHP dependency updates
2025-07-10 10:53:58 +02:00
Simon L.
ab71124102 Merge pull request #6616 from nextcloud/dependabot/docker/Containers/nextcloud/php-8.3.23-fpm-alpine3.21
build(deps): bump php from 8.3.22-fpm-alpine3.21 to 8.3.23-fpm-alpine3.21 in /Containers/nextcloud
2025-07-10 10:53:42 +02:00
Simon L.
710dae163b Merge pull request #6615 from nextcloud/dependabot/docker/Containers/mastercontainer/docker-28.3.1-cli
build(deps): bump docker from 28.3.0-cli to 28.3.1-cli in /Containers/mastercontainer
2025-07-10 10:53:28 +02:00
Simon L.
540e7ec8c5 Merge pull request #6614 from nextcloud/dependabot/docker/Containers/mastercontainer/php-8.4.10-fpm-alpine3.21
build(deps): bump php from 8.4.8-fpm-alpine3.21 to 8.4.10-fpm-alpine3.21 in /Containers/mastercontainer
2025-07-10 10:53:09 +02:00
Simon L.
00348c2ee1 update OO
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-07-10 10:51:28 +02:00
Simon L.
22d27028d1 fix detail
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-07-10 10:51:10 +02:00
szaimen
1e868d4e54 Helm Chart updates
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-07-10 08:49:09 +00:00
Simon L.
c371ad583c Merge pull request #6638 from nextcloud/enh/noid/add-mastercontainer-check
mastercontainer: add mountpoint check for `/var/www/docker-aio/php/containers.json`
2025-07-10 10:42:13 +02:00
Simon L.
a328f56fd0 mastercontainer: add mountpoint check for /var/www/docker-aio/php/containers.json
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-07-10 10:39:43 +02:00
Simon L.
1c41122d39 Bug-report-template: add link to existing feature requests
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-07-09 16:11:28 +02:00
szaimen
7961dc2fc5 php dependency updates
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-07-08 12:03:32 +00:00
Simon L.
61ed785c72 fix detail
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-07-08 12:31:03 +02:00
Simon L.
e07a27990a update config.yml and bug-report template
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-07-08 12:28:44 +02:00
Simon L.
c288949b43 readme: add more explicit note that AIO is looking for contributors
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-07-08 12:23:15 +02:00
dependabot[bot]
8d59472c38 build(deps): bump collabora/code in /Containers/collabora
Bumps collabora/code from 25.04.3.1.1 to 25.04.3.2.1.

---
updated-dependencies:
- dependency-name: collabora/code
  dependency-version: 25.04.3.2.1
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-07 05:16:09 +00:00
dependabot[bot]
d0df45bf52 build(deps): bump php in /Containers/nextcloud
Bumps php from 8.3.22-fpm-alpine3.21 to 8.3.23-fpm-alpine3.21.

---
updated-dependencies:
- dependency-name: php
  dependency-version: 8.3.23-fpm-alpine3.21
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-04 04:43:06 +00:00
dependabot[bot]
b593f0388e build(deps): bump docker in /Containers/mastercontainer
Bumps docker from 28.3.0-cli to 28.3.1-cli.

---
updated-dependencies:
- dependency-name: docker
  dependency-version: 28.3.1-cli
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-04 04:42:45 +00:00
dependabot[bot]
4e25a56edc build(deps): bump php in /Containers/mastercontainer
Bumps php from 8.4.8-fpm-alpine3.21 to 8.4.10-fpm-alpine3.21.

---
updated-dependencies:
- dependency-name: php
  dependency-version: 8.4.10-fpm-alpine3.21
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-04 04:42:43 +00:00
Simon L.
362cad79db add comment with link
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-07-03 11:48:22 +02:00
Simon L.
983e523bde make the check for backup dir and datadir fail proof
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-07-03 11:44:50 +02:00
Simon L.
bf4cf0ad27 increase to 11.3.0
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-07-03 10:28:47 +02:00
Simon L.
2aec1be167 Merge pull request #6609 from nextcloud/enh/6607/check-if-children
instance-restore: make sure that the configured borg restore location is not a children of or equal to NEXTCLOUD_DATADIR
2025-07-03 10:16:19 +02:00
Simon L.
3e9ce2be05 instance-restore: make sure that the configured borg restore location is not a children of or equal to NEXTCLOUD_DATADIR
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-07-03 10:00:59 +02:00
Simon L.
17382f1f1f Merge pull request #6608 from nextcloud/dependabot/docker/Containers/docker-socket-proxy/haproxy-3.2.2-alpine
build(deps): bump haproxy from 3.2.1-alpine to 3.2.2-alpine in /Containers/docker-socket-proxy
2025-07-03 07:41:17 +02:00
dependabot[bot]
07dc4de9ff build(deps): bump haproxy in /Containers/docker-socket-proxy
Bumps haproxy from 3.2.1-alpine to 3.2.2-alpine.

---
updated-dependencies:
- dependency-name: haproxy
  dependency-version: 3.2.2-alpine
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-03 04:43:58 +00:00
Simon L.
665d157240 Merge pull request #6605 from nextcloud/dependabot/docker/Containers/watchtower/nicholas-fedor/watchtower-1.11.5
build(deps): bump nicholas-fedor/watchtower from 1.11.3 to 1.11.5 in /Containers/watchtower
2025-07-02 10:54:19 +02:00
Simon L.
e4b400e605 Merge pull request #6604 from nextcloud/dependabot/docker/Containers/talk/nats-2.11.6-scratch
build(deps): bump nats from 2.11.5-scratch to 2.11.6-scratch in /Containers/talk
2025-07-02 08:08:38 +02:00
dependabot[bot]
306818dc10 build(deps): bump nicholas-fedor/watchtower in /Containers/watchtower
Bumps [nicholas-fedor/watchtower](https://github.com/nicholas-fedor/watchtower) from 1.11.3 to 1.11.5.
- [Release notes](https://github.com/nicholas-fedor/watchtower/releases)
- [Changelog](https://github.com/nicholas-fedor/watchtower/blob/main/goreleaser.yml)
- [Commits](https://github.com/nicholas-fedor/watchtower/compare/v1.11.3...v1.11.5)

---
updated-dependencies:
- dependency-name: nicholas-fedor/watchtower
  dependency-version: 1.11.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-02 04:28:08 +00:00
dependabot[bot]
b561c59b93 build(deps): bump nats in /Containers/talk
Bumps nats from 2.11.5-scratch to 2.11.6-scratch.

---
updated-dependencies:
- dependency-name: nats
  dependency-version: 2.11.6-scratch
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-02 04:27:41 +00:00
Olicorne
df13ca077c readme: improve the How to stop/start/update containers or trigger the daily backup from a script externally? section (#6592)
Signed-off-by: thiswillbeyourgithub <26625900+thiswillbeyourgithub@users.noreply.github.com>
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-07-01 18:52:44 +02:00
Simon L.
1a43bfdc95 Merge pull request #6601 from nextcloud/enh/6564/add-label-to-all-containers
CreateContainers: add `"com.centurylinklabs.watchtower.enable": "false"` to all managed containers
2025-07-01 18:02:42 +02:00
Simon L.
9967aea70c CreateContainers: add "com.centurylinklabs.watchtower.enable": "false" to all managed containers
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-07-01 17:58:27 +02:00
Simon L.
d20812b0e8 add comment
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-07-01 17:43:36 +02:00
Simon L.
6b82682384 Merge pull request #6600 from nextcloud/enh/6589/add-hostname
CreateContainer: always add a Hostname to each container
2025-07-01 17:29:56 +02:00
Simon L.
c8382117ce Merge pull request #6599 from nextcloud/feat/talk-skip-verify
feat(talk): add SKIP_CERT_VERIFY env
2025-07-01 17:27:50 +02:00
Anupam Kumar
1b3e519cd7 feat(talk): add SKIP_CERT_VERIFY env
This environment variable when set to "true" will allow usage
of self-signed certificates.

Signed-off-by: Anupam Kumar <kyteinsky@gmail.com>
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-07-01 17:26:23 +02:00
Simon L.
01f13cc01a Merge pull request #6523 from nextcloud/enh/noid/remove-translate
libretranslate: add `(deprecated)` to its display name
2025-07-01 17:20:11 +02:00
Jean-Yves
aec692208e libretranslate: add (deprecated) to its display name
Signed-off-by: Jean-Yves <7360784+docjyJ@users.noreply.github.com>
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-07-01 17:19:15 +02:00
Simon L.
fcc74e2105 DockerActionManager: always add a Hostname to each container
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-07-01 15:01:10 +02:00
Simon L.
3719a89e0e Merge pull request #6598 from nextcloud/aio-helm-update
Helm Chart updates
2025-07-01 13:53:44 +02:00
szaimen
88541ffe26 Helm Chart updates
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-07-01 11:53:05 +00:00
Simon L.
98706bdba1 Merge pull request #6522 from nextcloud/enh/6505/add-cm-cc
add container-management cc
2025-07-01 11:40:40 +02:00
Simon L.
5da3535dac Merge pull request #6584 from apparle/fix-signal-handling
Fix signal handling for mastercontainer
2025-07-01 11:37:15 +02:00
Simon L.
655c9e3f72 Merge pull request #6590 from nextcloud/aio-dependency-update
PHP dependency updates
2025-07-01 11:35:38 +02:00
Simon L.
9788aa2b03 Merge pull request #6588 from nextcloud/dependabot/docker/Containers/talk/nats-2.11.5-scratch
build(deps): bump nats from 2.11.4-scratch to 2.11.5-scratch in /Containers/talk
2025-07-01 11:35:21 +02:00
Simon L.
7e23f0736b Merge pull request #6597 from nextcloud/revert-6587-dependabot/docker/Containers/onlyoffice/onlyoffice/documentserver-9.0.2.1
Revert "build(deps): bump onlyoffice/documentserver from 8.3.3.1 to 9.0.2.1 in /Containers/onlyoffice"
2025-07-01 11:35:02 +02:00
Simon L.
5d1bebfd0b Revert "build(deps): bump onlyoffice/documentserver from 8.3.3.1 to 9.0.2.1 in /Containers/onlyoffice" 2025-07-01 11:34:38 +02:00
Simon L.
dd52074adb Merge pull request #6587 from nextcloud/dependabot/docker/Containers/onlyoffice/onlyoffice/documentserver-9.0.2.1
build(deps): bump onlyoffice/documentserver from 8.3.3.1 to 9.0.2.1 in /Containers/onlyoffice
2025-07-01 11:34:06 +02:00
Simon L.
5d3a0a65d8 Merge pull request #6583 from nextcloud/dependabot/docker/Containers/mastercontainer/docker-28.3.0-cli
build(deps): bump docker from 28.2.2-cli to 28.3.0-cli in /Containers/mastercontainer
2025-07-01 11:33:50 +02:00
Simon L.
4784494dab Merge pull request #6591 from prokopschield/patch-1
rp-docs: fix typo
2025-07-01 11:01:31 +02:00
Prokop Schield
cca0ce9e72 fix: typo
Signed-off-by: Prokop Schield <76836484+prokopschield@users.noreply.github.com>
2025-06-29 12:58:14 +02:00
szaimen
d520f106c3 php dependency updates
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-06-28 12:02:55 +00:00
dependabot[bot]
1c3b257107 build(deps): bump nats in /Containers/talk
Bumps nats from 2.11.4-scratch to 2.11.5-scratch.

---
updated-dependencies:
- dependency-name: nats
  dependency-version: 2.11.5-scratch
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-27 04:41:28 +00:00
dependabot[bot]
58d79307a1 build(deps): bump onlyoffice/documentserver in /Containers/onlyoffice
Bumps onlyoffice/documentserver from 8.3.3.1 to 9.0.2.1.

---
updated-dependencies:
- dependency-name: onlyoffice/documentserver
  dependency-version: 9.0.2.1
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-27 04:41:24 +00:00
Simon L.
ce1208b26e add container-managment cc
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-06-26 16:35:26 +02:00
Simon L.
d922017777 Merge pull request #6585 from nextcloud/alexanderdd-patch-1
readme: add "do not install Docker as snap"
2025-06-26 14:53:46 +02:00
Alexander Müller
ddbeca9170 readme: add "do not install Docker as snap"
Signed-off-by: Alexander Müller <28591861+alexanderdd@users.noreply.github.com>
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-06-26 14:51:20 +02:00
Apoorv Parle
e28d0516f5 Use exec for supervisord replace process and propagate signals
Signed-off-by: Apoorv Parle <19315187+apparle@users.noreply.github.com>
2025-06-26 00:54:11 -07:00
dependabot[bot]
914d9bfd7f build(deps): bump docker in /Containers/mastercontainer
Bumps docker from 28.2.2-cli to 28.3.0-cli.

---
updated-dependencies:
- dependency-name: docker
  dependency-version: 28.3.0-cli
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-26 04:38:18 +00:00
Simon L.
a0e4201955 increase to 11.2.1
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-06-24 14:37:52 +02:00
Simon L.
9351614972 Merge pull request #6574 from apparle/improve-start-command
Make daily-backup.sh more robust by checking for uninitialized state
2025-06-24 14:36:27 +02:00
Simon L.
2d46aaf1bc Merge pull request #6580 from nextcloud/dependabot/docker/Containers/whiteboard/nextcloud-releases/whiteboard-v1.1.2
build(deps): bump nextcloud-releases/whiteboard from v1.1.1 to v1.1.2 in /Containers/whiteboard
2025-06-24 14:35:15 +02:00
dependabot[bot]
698732254b build(deps): bump nextcloud-releases/whiteboard
Bumps nextcloud-releases/whiteboard from v1.1.1 to v1.1.2.

---
updated-dependencies:
- dependency-name: nextcloud-releases/whiteboard
  dependency-version: v1.1.2
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-24 12:32:53 +00:00
Apoorv Parle
108dcf6c48 Update Containers/mastercontainer/daily-backup.sh based on review comments
Co-authored-by: Simon L. <szaimen@e.mail.de>
Signed-off-by: Apoorv Parle <19315187+apparle@users.noreply.github.com>
2025-06-24 01:24:26 -07:00
Simon L.
21b9a7cda8 Merge pull request #6518 from nextcloud/enh/noid/mention-docker-ipv6-support
ipv6-docs: mention that `"com.docker.network.enable_ipv6":"true"` ena…
2025-06-23 18:15:39 +02:00
Simon L.
2366cda31c add additional hint that the network can be created manually with ipv6 support
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-06-23 16:18:19 +02:00
Simon L.
9f9a002ba7 increase to 11.2.0
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-06-23 13:58:14 +02:00
Simon L.
3c729d0746 Merge pull request #6575 from nextcloud/dependabot/docker/Containers/whiteboard/nextcloud-releases/whiteboard-v1.1.1
build(deps): bump nextcloud-releases/whiteboard from v1.0.5 to v1.1.1 in /Containers/whiteboard
2025-06-23 13:09:28 +02:00
dependabot[bot]
3b93da5ff5 build(deps): bump nextcloud-releases/whiteboard
Bumps nextcloud-releases/whiteboard from v1.0.5 to v1.1.1.

---
updated-dependencies:
- dependency-name: nextcloud-releases/whiteboard
  dependency-version: v1.1.1
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-23 11:08:51 +00:00
Simon L.
e5d7b7cd7e Merge pull request #6571 from G-Pereira/patch-1
readme: fix typo in backup migration section
2025-06-22 12:11:59 +02:00
Apoorv Parle
00b2465379 Add check in daily-backup.sh for uninitialized state
Signed-off-by: Apoorv Parle <19315187+apparle@users.noreply.github.com>
2025-06-22 02:17:25 -07:00
Gonçalo Pereira
ec654ecd58 Typo in readme on backup migration section
Signed-off-by: Gonçalo Pereira <goncalo_pereira@outlook.pt>
2025-06-21 00:59:34 +01:00
Simon L.
a9de130a2c Merge pull request #6542 from nextcloud/dependabot/docker/Containers/talk-recording/python-3.13.5-alpine3.21
build(deps): bump python from 3.13.4-alpine3.21 to 3.13.5-alpine3.21 in /Containers/talk-recording
2025-06-20 10:21:08 +02:00
Simon L.
f13ed5b637 Merge pull request #6535 from nextcloud/enh/noid/move-button-to-new-line
app: move the button to a new line
2025-06-20 10:20:17 +02:00
Apoorv Parle
2552c24c6f Merge pull request #5568 from apparle/enable_local_testability
mastercontainer: enable local testability
2025-06-20 10:17:45 +02:00
Simon L.
676fa6ccbf Merge pull request #6533 from apparle/podman-compatibility
watchtower: change to a well-maintained repo and add podman compatibility
2025-06-20 10:16:03 +02:00
Simon L.
92f1421b7e Merge pull request #6551 from nextcloud/enh/noid/add-onlyoffice-logic
entrypoint.sh: add additional logic for ONLYOFFICE_HOST
2025-06-20 10:15:27 +02:00
Simon L.
31b55a9aef Merge pull request #6566 from nextcloud/fix/nextcloud-container-stuck-terminating
fix: nextcloud container sometimes becoming stuck terminating
2025-06-20 10:10:06 +02:00
Simon L.
05b8319c29 Merge pull request #6569 from nextcloud/dependabot/docker/Containers/collabora/collabora/code-25.04.3.1.1
build(deps): bump collabora/code from 25.04.2.2.1 to 25.04.3.1.1 in /Containers/collabora
2025-06-20 10:08:56 +02:00
dependabot[bot]
b2ce65472e build(deps): bump collabora/code in /Containers/collabora
Bumps collabora/code from 25.04.2.2.1 to 25.04.3.1.1.

---
updated-dependencies:
- dependency-name: collabora/code
  dependency-version: 25.04.3.1.1
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-20 04:42:51 +00:00
Richard Steinmetz
2f8b349262 fix: nextcloud container sometimes becoming stuck terminating
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-06-19 14:48:45 +02:00
Simon L.
f8ed7e03d2 Merge pull request #6562 from nextcloud/aio-helm-update
Helm Chart updates
2025-06-19 10:34:06 +02:00
szaimen
7141a7dbb2 Helm Chart updates
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-06-19 08:30:33 +00:00
Simon L.
a7f58e0413 Merge pull request #6550 from frederikb96/main
feat(helm): allow custom data storage class for Nextcloud data PVC
2025-06-19 10:18:17 +02:00
Simon L.
d50f6a375f add suggestions
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-06-19 10:15:57 +02:00
Frederik Berg
19793b3753 feat(helm): allow custom data storage class
Signed-off-by: Frederik Berg <fberg@posteo.de>
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-06-19 10:15:56 +02:00
Simon L.
4344148cdd entrypoint.sh: add additional logic for ONLYOFFICE_HOST
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-06-16 14:21:05 +02:00
Simon L.
f0bb29bf8a Merge pull request #6545 from nextcloud/dependabot/github_actions/dot-github/workflows/shivammathur/setup-php-2.34.1
build(deps): bump shivammathur/setup-php from 2.34.0 to 2.34.1 in /.github/workflows
2025-06-13 17:30:06 +02:00
Apoorv Parle
eb533eef28 Use watchtower image directly instead of building it
Signed-off-by: Apoorv Parle <19315187+apparle@users.noreply.github.com>
2025-06-13 05:35:10 -07:00
dependabot[bot]
83d4902804 build(deps): bump shivammathur/setup-php in /.github/workflows
Bumps [shivammathur/setup-php](https://github.com/shivammathur/setup-php) from 2.34.0 to 2.34.1.
- [Release notes](https://github.com/shivammathur/setup-php/releases)
- [Commits](27853eb8b4...0f7f1d08e3)

---
updated-dependencies:
- dependency-name: shivammathur/setup-php
  dependency-version: 2.34.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-13 12:29:52 +00:00
dependabot[bot]
c174ee3a9a build(deps): bump python in /Containers/talk-recording
Bumps python from 3.13.4-alpine3.21 to 3.13.5-alpine3.21.

---
updated-dependencies:
- dependency-name: python
  dependency-version: 3.13.5-alpine3.21
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-13 04:56:44 +00:00
Simon L.
3957a03b2d app: move the button to a new line
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-06-12 14:23:35 +02:00
Simon L.
e0916df031 Merge pull request #6517 from nextcloud/enh/6408/re-enable-the-update-app
nextcloud: re-enable the updatenotification app
2025-06-12 11:39:09 +02:00
Simon L.
a84cae708f Merge pull request #6534 from nextcloud/nextcloud-container-update
Nextcloud dependency update
2025-06-12 11:37:35 +02:00
szaimen
02a7f909a7 nextcloud-update automated change
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-06-12 09:36:36 +00:00
Simon L.
11accd3129 Merge pull request #6532 from nextcloud/dependabot/docker/Containers/docker-socket-proxy/haproxy-3.2.1-alpine
build(deps): bump haproxy from 3.2.0-alpine to 3.2.1-alpine in /Containers/docker-socket-proxy
2025-06-12 09:48:13 +02:00
Apoorv Parle
ee23d43ca7 Update watchtower to a well-maintained fork and add podman support
Signed-off-by: Apoorv Parle <19315187+apparle@users.noreply.github.com>
2025-06-11 22:48:52 -07:00
dependabot[bot]
6b2ed113cd build(deps): bump haproxy in /Containers/docker-socket-proxy
Bumps haproxy from 3.2.0-alpine to 3.2.1-alpine.

---
updated-dependencies:
- dependency-name: haproxy
  dependency-version: 3.2.1-alpine
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-12 04:21:45 +00:00
Simon L.
13b645dc1d nextcloud: fix APPSTORE_URL default
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-06-11 15:33:41 +02:00
Simon L.
0d4081ab13 DockerController: also fix warning in the web interface
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-06-11 15:13:02 +02:00
Simon L.
b3f931f2cf aio-interface: fix the padding-bottom
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-06-11 15:09:38 +02:00
Simon L.
9807d314f3 increase to v11.1.0
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-06-11 14:49:01 +02:00
Simon L.
c4d5f89e00 Merge pull request #6496 from QuentinLemCode/update-traefik-doc-http3
rp-docs: add Traefik v3
2025-06-11 09:57:32 +02:00
Quentin
29cc92d714 Add Traefik 3 documentation
Signed-off-by: Quentin <quentinlemcode@gmail.com>
2025-06-11 09:54:11 +02:00
Quentin
293fe559f4 Revert "Update reverse-proxy.md"
This reverts commit 226afe6b82b35f6b9b6ad7775857ef3761eafc57.

Signed-off-by: Quentin <quentinlemcode@gmail.com>
2025-06-11 09:54:11 +02:00
Quentin Lemeasle
f2d9fb8d9d Update reverse-proxy.md
Signed-off-by: Quentin Lemeasle <quentinlemcode@gmail.com>
Signed-off-by: Quentin <quentinlemcode@gmail.com>
2025-06-11 09:54:11 +02:00
Simon L.
061885c8e1 Merge pull request #6524 from gggeek/gg/issue-6413-improved
DockerController: avoid php warning when id not in query string in GetLogs Route
2025-06-11 09:52:30 +02:00
gggeek
1c5cc164c0 DockerController: avoid php warning when id not in query string in GetLogs Route
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-06-11 09:47:01 +02:00
Simon L.
00c0c9863b Merge pull request #6525 from nextcloud/automated/noid/psalm-baseline-update
[Automated] Update psalm-baseline.xml
2025-06-11 08:35:04 +02:00
nextcloud-command
0a075b4b22 Update psalm baseline
Signed-off-by: GitHub <noreply@github.com>
2025-06-11 04:15:35 +00:00
Simon L.
5bbfbed128 nextcloud: re-enable the updatenotification app
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-06-10 16:03:34 +02:00
Simon L.
2152d3544a Merge pull request #6521 from nextcloud/dependabot/github_actions/dot-github/workflows/shivammathur/setup-php-2.34.0
build(deps): bump shivammathur/setup-php from 2.33.0 to 2.34.0 in /.github/workflows
2025-06-10 14:35:23 +02:00
Simon L.
4c43931bb0 Merge pull request #6520 from nextcloud/dependabot/github_actions/dot-github/workflows/softprops/turnstyle-2.4.0
build(deps): bump softprops/turnstyle from 2.3.2 to 2.4.0 in /.github/workflows
2025-06-10 14:34:58 +02:00
Simon L.
d240b961ba Merge pull request #6519 from nextcloud/aio-helm-update
Helm Chart updates
2025-06-10 14:34:40 +02:00
dependabot[bot]
d6a27a9542 build(deps): bump shivammathur/setup-php in /.github/workflows
Bumps [shivammathur/setup-php](https://github.com/shivammathur/setup-php) from 2.33.0 to 2.34.0.
- [Release notes](https://github.com/shivammathur/setup-php/releases)
- [Commits](cf4cade272...27853eb8b4)

---
updated-dependencies:
- dependency-name: shivammathur/setup-php
  dependency-version: 2.34.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-10 12:16:36 +00:00
dependabot[bot]
533862a607 build(deps): bump softprops/turnstyle in /.github/workflows
Bumps [softprops/turnstyle](https://github.com/softprops/turnstyle) from 2.3.2 to 2.4.0.
- [Release notes](https://github.com/softprops/turnstyle/releases)
- [Changelog](https://github.com/softprops/turnstyle/blob/master/CHANGELOG.md)
- [Commits](f9f8ef3f63...807f6009e7)

---
updated-dependencies:
- dependency-name: softprops/turnstyle
  dependency-version: 2.4.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-10 12:16:31 +00:00
szaimen
bd43dbe63c Helm Chart updates
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-06-10 12:13:48 +00:00
Simon L.
46a012140c ipv6-docs: mention that "com.docker.network.enable_ipv6":"true" enabled ipv6 by default for all new docker networks
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-06-10 14:05:50 +02:00
Simon L.
5c30a6472f Merge pull request #6513 from nextcloud/dependabot/docker/Containers/mastercontainer/php-8.4.8-fpm-alpine3.21
build(deps): bump php from 8.4.7-fpm-alpine3.21 to 8.4.8-fpm-alpine3.21 in /Containers/mastercontainer
2025-06-10 09:48:45 +02:00
Simon L.
f0ee35bbda Merge pull request #6512 from nextcloud/dependabot/docker/Containers/nextcloud/php-8.3.22-fpm-alpine3.21
build(deps): bump php from 8.3.21-fpm-alpine3.21 to 8.3.22-fpm-alpine3.21 in /Containers/nextcloud
2025-06-10 09:48:33 +02:00
Simon L.
bef58fbd45 Merge pull request #6508 from nextcloud/dependabot/docker/Containers/watchtower/golang-1.24.4-alpine3.21
build(deps): bump golang from 1.24.3-alpine3.21 to 1.24.4-alpine3.21 in /Containers/watchtower
2025-06-10 09:48:21 +02:00
Simon L.
ef19bb6187 Merge pull request #6507 from nextcloud/dependabot/docker/Containers/imaginary/golang-1.24.4-alpine3.21
build(deps): bump golang from 1.24.3-alpine3.21 to 1.24.4-alpine3.21 in /Containers/imaginary
2025-06-10 09:48:09 +02:00
Simon L.
1bc4c7c8b1 Merge pull request #6506 from nextcloud/dependabot/docker/Containers/talk-recording/python-3.13.4-alpine3.21
build(deps): bump python from 3.13.3-alpine3.21 to 3.13.4-alpine3.21 in /Containers/talk-recording
2025-06-10 09:47:56 +02:00
Simon L.
10f13860c3 Merge pull request #6500 from nextcloud/enh/noid/disable-talk-recording
aio-interface: disable talk-recording correctly
2025-06-10 09:47:44 +02:00
Simon L.
32c09041a1 Merge pull request #6499 from nextcloud/enh/noid/add-bottom-padding
aio-interface: add bottom padding to the main container
2025-06-10 09:47:28 +02:00
Simon L.
eec1f30031 Merge pull request #6490 from nextcloud/dependabot/docker/Containers/mastercontainer/docker-28.2.2-cli
build(deps): bump docker from 28.2.1-cli to 28.2.2-cli in /Containers/mastercontainer
2025-06-10 09:47:05 +02:00
Simon L.
a8c633231b Merge pull request #6485 from nextcloud/dependabot/docker/Containers/collabora/collabora/code-25.04.2.2.1
build(deps): bump collabora/code from 25.04.2.1.1 to 25.04.2.2.1 in /Containers/collabora
2025-06-10 09:46:52 +02:00
Simon L.
6c4c4f1f56 Merge pull request #6482 from ZhaoGY-N/bugfix/appstoreurl_check_fail
change the url used in appstore check from $APPSTORE_URL to $APPSTORE…
2025-06-10 09:46:37 +02:00
Simon L.
54c17176eb Merge pull request #6474 from nextcloud/aio-dependency-update
PHP dependency updates
2025-06-10 09:46:06 +02:00
dependabot[bot]
38b7732d5c build(deps): bump php in /Containers/mastercontainer
Bumps php from 8.4.7-fpm-alpine3.21 to 8.4.8-fpm-alpine3.21.

---
updated-dependencies:
- dependency-name: php
  dependency-version: 8.4.8-fpm-alpine3.21
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-09 05:20:02 +00:00
dependabot[bot]
233d31750c build(deps): bump php in /Containers/nextcloud
Bumps php from 8.3.21-fpm-alpine3.21 to 8.3.22-fpm-alpine3.21.

---
updated-dependencies:
- dependency-name: php
  dependency-version: 8.3.22-fpm-alpine3.21
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-09 05:15:48 +00:00
dependabot[bot]
fd0c347c16 build(deps): bump golang in /Containers/watchtower
Bumps golang from 1.24.3-alpine3.21 to 1.24.4-alpine3.21.

---
updated-dependencies:
- dependency-name: golang
  dependency-version: 1.24.4-alpine3.21
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-06 04:21:45 +00:00
dependabot[bot]
fe561976e9 build(deps): bump golang in /Containers/imaginary
Bumps golang from 1.24.3-alpine3.21 to 1.24.4-alpine3.21.

---
updated-dependencies:
- dependency-name: golang
  dependency-version: 1.24.4-alpine3.21
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-06 04:20:47 +00:00
dependabot[bot]
1ab64d158d build(deps): bump python in /Containers/talk-recording
Bumps python from 3.13.3-alpine3.21 to 3.13.4-alpine3.21.

---
updated-dependencies:
- dependency-name: python
  dependency-version: 3.13.4-alpine3.21
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-05 05:11:31 +00:00
Simon L.
b30ef900e1 aio-interface: disable talk-recording correctly
Signed-off-by: Simon L. <szaimen@e.mail.de>

Revert "aio-interface: disable talk-recording correctly"

This reverts commit e9711aae78db91359aa6d6bfaf87f60a4453287c.

Update containers.twig
2025-06-04 11:06:26 +02:00
Simon L.
e4d11d1295 aio-interface: add bottom padding to the main container
Signed-off-by: Simon L. <szaimen@e.mail.de>
2025-06-03 16:44:18 +02:00
szaimen
c2ffe0cb4a php dependency updates
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-06-03 12:03:22 +00:00
Zhao Guangyu
f71506a1c9 Update Containers/nextcloud/entrypoint.sh
Add comment for the apps.json

Co-authored-by: Simon L. <szaimen@e.mail.de>
Signed-off-by: Zhao Guangyu <62810902+ZhaoGY-N@users.noreply.github.com>
2025-06-02 15:55:13 +08:00
dependabot[bot]
f71b4a96ce build(deps): bump docker in /Containers/mastercontainer
Bumps docker from 28.2.1-cli to 28.2.2-cli.

---
updated-dependencies:
- dependency-name: docker
  dependency-version: 28.2.2-cli
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-02 05:20:10 +00:00
dependabot[bot]
ae0d0aece3 build(deps): bump collabora/code in /Containers/collabora
Bumps collabora/code from 25.04.2.1.1 to 25.04.2.2.1.

---
updated-dependencies:
- dependency-name: collabora/code
  dependency-version: 25.04.2.2.1
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-02 05:17:08 +00:00
Zhao Guangyu
8be30f3cc1 change the url used in appstore check from $APPSTORE_URL to $APPSTORE_URL/apps.json 2025-06-02 04:06:37 +08:00
68 changed files with 377 additions and 232 deletions

View File

@@ -6,9 +6,10 @@ labels: 0. Needs triage
<!---
- Before submitting a bug report, please read through the documentation available at https://github.com/nextcloud/all-in-one#faq
- If you use Cloudflare Tunnel or Cloudflare Proxy, see https://github.com/nextcloud/all-in-one#notes-on-cloudflare-proxytunnel for known issues/limitations and workarounds.
- For issues with Collabora or Talk, make sure to follow https://github.com/nextcloud/all-in-one/discussions/1358. It may already resolve your issue and makes it easier to help you.
- Additional documentation is available here: https://github.com/nextcloud/all-in-one/discussions/categories/wiki
- You should also read through existing questions and their answer here: https://github.com/nextcloud/all-in-one/discussions/categories/questions
- Additional threads can be found here: https://help.nextcloud.com/tag/aio
- Existing feature requests are listed here: https://github.com/nextcloud/all-in-one/discussions/categories/ideas
--->
<!--- Please fill out the whole template below -->

View File

@@ -3,15 +3,12 @@ contact_links:
- name: 📘 Documentation on Nextcloud AIO
url: https://github.com/nextcloud/all-in-one#faq
about: Please read the docs first before submitting any report or request!
- name: ⛑️ General questions and support
- name: ⛑️ Questions and support
url: https://help.nextcloud.com/tag/aio
about: For general questions, support and help
about: For questions, support and help
- name: 💡 Suggest a new feature or discuss one
url: https://github.com/nextcloud/all-in-one/discussions/categories/ideas
about: For new feature requests and discussion of existing ones
- name: ❓ Questions about Nextcloud AIO
url: https://github.com/nextcloud/all-in-one/discussions/categories/questions
about: For questions specifically about AIO
- name: 💼 Nextcloud Enterprise
url: https://portal.nextcloud.com/
about: If you are a Nextcloud Enterprise customer, or need Professional support, so it can be resolved directly by our dedicated engineers more quickly

View File

@@ -11,7 +11,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: shivammathur/setup-php@cf4cade2721270509d5b1c766ab3549210a39a2a # v2
- uses: shivammathur/setup-php@0f7f1d08e3e32076e51cae65eb0b0c871405b16e # v2
with:
php-version: 8.4
extensions: apcu

View File

@@ -16,7 +16,7 @@ jobs:
uses: actions/checkout@v4
- name: Turnstyle
uses: softprops/turnstyle@f9f8ef3f634144b126a09ea5b3bfe51ddebc700f # v2
uses: softprops/turnstyle@807f6009e7cee5c2c9faa41ccef03a8bb24b06ab # v2
with:
continue-after-seconds: 180
env:

View File

@@ -36,7 +36,7 @@ jobs:
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@cf4cade2721270509d5b1c766ab3549210a39a2a # v2
uses: shivammathur/setup-php@0f7f1d08e3e32076e51cae65eb0b0c871405b16e # v2
with:
php-version: ${{ matrix.php-versions }}
coverage: none

View File

@@ -18,7 +18,7 @@ jobs:
steps:
- uses: actions/checkout@v4
- name: Set up php
uses: shivammathur/setup-php@cf4cade2721270509d5b1c766ab3549210a39a2a # v2
uses: shivammathur/setup-php@0f7f1d08e3e32076e51cae65eb0b0c871405b16e # v2
with:
php-version: 8.4
extensions: apcu

View File

@@ -13,7 +13,7 @@ jobs:
- uses: actions/checkout@v4
- name: Set up php
uses: shivammathur/setup-php@cf4cade2721270509d5b1c766ab3549210a39a2a # v2
uses: shivammathur/setup-php@0f7f1d08e3e32076e51cae65eb0b0c871405b16e # v2
with:
php-version: 8.4
extensions: apcu

View File

@@ -29,7 +29,7 @@ jobs:
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
- name: Set up php
uses: shivammathur/setup-php@cf4cade2721270509d5b1c766ab3549210a39a2a # v2
uses: shivammathur/setup-php@0f7f1d08e3e32076e51cae65eb0b0c871405b16e # v2
with:
php-version: 8.4
extensions: apcu

View File

@@ -27,7 +27,7 @@ jobs:
uses: actions/checkout@v4
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@cf4cade2721270509d5b1c766ab3549210a39a2a # v2
uses: shivammathur/setup-php@0f7f1d08e3e32076e51cae65eb0b0c871405b16e # v2
with:
php-version: 8.4
extensions: apcu

View File

@@ -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:25.04.2.1.1
FROM collabora/code:25.04.3.2.1
USER root
ARG DEBIAN_FRONTEND=noninteractive

View File

@@ -1,5 +1,5 @@
# syntax=docker/dockerfile:latest
FROM haproxy:3.2.0-alpine
FROM haproxy:3.2.2-alpine
# hadolint ignore=DL3002
USER root

View File

@@ -1,5 +1,5 @@
# syntax=docker/dockerfile:latest
FROM golang:1.24.3-alpine3.21 AS go
FROM golang:1.24.4-alpine3.21 AS go
ENV IMAGINARY_HASH=1d4e251cfcd58ea66f8361f8721d7b8cc85002a3

View File

@@ -1,12 +1,15 @@
# syntax=docker/dockerfile:latest
# Docker CLI is a requirement
FROM docker:28.2.1-cli AS docker
FROM docker:28.3.1-cli AS docker
# Caddy is a requirement
FROM caddy:2.10.0-alpine AS caddy
# From https://github.com/docker-library/php/blob/master/8.4/alpine3.21/fpm/Dockerfile
FROM php:8.4.7-fpm-alpine3.21
FROM php:8.4.10-fpm-alpine3.21
ARG AIO_GIT_URL="https://github.com/nextcloud-releases/all-in-one.git"
ARG AIO_GIT_BRANCH="main"
EXPOSE 80
EXPOSE 8080
@@ -64,7 +67,7 @@ RUN set -ex; \
wget https://getcomposer.org/installer -O - | php -- --install-dir=/usr/local/bin --filename=composer; \
chmod +x /usr/local/bin/composer; \
cd /var/www/docker-aio; \
git clone https://github.com/nextcloud-releases/all-in-one.git --depth 1 .; \
git clone "$AIO_GIT_URL" --depth 1 --single-branch --branch "$AIO_GIT_BRANCH" .; \
find ./ -maxdepth 1 -mindepth 1 -not -path ./php -not -path ./community-containers -exec rm -r {} \; ; \
rm -r ./php/tests; \
chown www-data:www-data -R /var/www/docker-aio; \

View File

@@ -2,6 +2,13 @@
echo "Daily backup script has started"
# Check if initial configuration has been done, otherwise this script should do nothing.
CONFIG_FILE=/mnt/docker-aio-config/data/configuration.json
if ! [ -f "$CONFIG_FILE" ] || ! grep -q "wasStartButtonClicked.*1" "$CONFIG_FILE"; then
echo "Initial configuration via AIO interface not done yet. Exiting..."
exit 0
fi
# Daily backup and backup check cannot be run at the same time
if [ "$DAILY_BACKUP" = 1 ] && [ "$CHECK_BACKUP" = 1 ]; then
echo "Daily backup and backup check cannot be run at the same time. Exiting..."

View File

@@ -43,6 +43,11 @@ elif ! mountpoint -q "/mnt/docker-aio-config"; then
echo "Please make sure to mount the nextcloud_aio_mastercontainer docker volume into /mnt/docker-aio-config inside the container!"
echo "If you are on TrueNas SCALE, see https://github.com/nextcloud/all-in-one#can-i-run-aio-on-truenas-scale"
exit 1
elif mountpoint -q /var/www/docker-aio/php/containers.json; then
print_red "/var/www/docker-aio/php/containers.json is a mountpoint. Cannot proceed!"
echo "This is a not-supported customization of the mastercontainer!"
echo "Please remove this bind-mount from the mastercontainer."
exit 1
elif ! sudo -u www-data test -r /var/run/docker.sock; then
echo "Trying to fix docker.sock permissions internally..."
DOCKER_GROUP=$(stat -c '%G' /var/run/docker.sock)
@@ -366,4 +371,4 @@ caddy fmt --overwrite /Caddyfile
chmod 777 /root
# Start supervisord
/usr/bin/supervisord -c /supervisord.conf
exec /usr/bin/supervisord -c /supervisord.conf

View File

@@ -1,5 +1,5 @@
# syntax=docker/dockerfile:latest
FROM php:8.3.21-fpm-alpine3.21
FROM php:8.3.23-fpm-alpine3.21
ENV PHP_MEMORY_LIMIT=512M
ENV PHP_UPLOAD_LIMIT=16G
@@ -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=31.0.5
ENV NEXTCLOUD_VERSION=31.0.6
ENV AIO_TOKEN=123456
ENV AIO_URL=localhost
# AIO settings end # Do not remove or change this line!
@@ -256,7 +256,6 @@ RUN set -ex; \
chmod 777 -R /usr/local/etc/php/conf.d && \
chmod 777 -R /usr/local/etc/php-fpm.d && \
chmod -R 777 /tmp; \
rm -rf /usr/src/nextcloud/apps/updatenotification; \
\
mkdir -p /nc-updater; \
chmod -R 777 /nc-updater

View File

@@ -144,13 +144,14 @@ if ! [ -f "$NEXTCLOUD_DATA_DIR/skip.update" ]; then
# Check connection to appstore start # Do not remove or change this line!
while true; do
echo -e "Checking connection to appstore"
APPSTORE_URL="https://apps.nextcloud.com/"
APPSTORE_URL="https://apps.nextcloud.com/api/v1"
if grep -q appstoreurl /var/www/html/config/config.php; then
set -x
APPSTORE_URL="$(grep appstoreurl /var/www/html/config/config.php | grep -oP 'https://.*v[0-9]+')"
set +x
fi
CURL_STATUS="$(curl -LI "$APPSTORE_URL" -o /dev/null -w '%{http_code}\n' -s)"
# Default appstoreurl parameter in config.php defaults to 'https://apps.nextcloud.com/api/v1' so we check for the apps.json file stored in there
CURL_STATUS="$(curl -LI "$APPSTORE_URL"/apps.json -o /dev/null -w '%{http_code}\n' -s)"
if [[ "$CURL_STATUS" = "200" ]]
then
echo "Appstore is reachable"
@@ -192,14 +193,6 @@ if ! [ -f "$NEXTCLOUD_DATA_DIR/skip.update" ]; then
php /var/www/html/occ app:update --all
run_upgrade_if_needed_due_to_app_update
# Fix removing the updatenotification for old instances
UPDATENOTIFICATION_STATUS="$(php /var/www/html/occ config:app:get updatenotification enabled)"
if [ -d "/var/www/html/apps/updatenotification" ]; then
php /var/www/html/occ app:disable updatenotification
elif [ "$UPDATENOTIFICATION_STATUS" != "no" ] && [ -n "$UPDATENOTIFICATION_STATUS" ]; then
php /var/www/html/occ config:app:set updatenotification enabled --value="no"
fi
fi
echo "Initializing nextcloud $image_version ..."
@@ -276,6 +269,10 @@ DATADIR_PERMISSION_CONF
# unset admin password
unset ADMIN_PASSWORD
# Enable the updatenotification app but disable its UI and server update notifications
php /var/www/html/occ config:system:set updatechecker --type=bool --value=false
php /var/www/html/occ config:app:set updatenotification notify_groups --value="[]"
# AIO update to latest start # Do not remove or change this line!
if [ "$INSTALL_LATEST_MAJOR" = yes ]; then
php /var/www/html/occ config:system:set updatedirectory --value="/nc-updater"
@@ -306,8 +303,7 @@ DATADIR_PERMISSION_CONF
# shellcheck disable=SC2016
installed_version="$(php -r 'require "/var/www/html/version.php"; echo implode(".", $OC_Version);')"
fi
php /var/www/html/occ app:disable updatenotification
rm -rf /var/www/html/apps/updatenotification
php /var/www/html/occ config:system:set updatechecker --type=bool --value=true
php /var/www/html/occ app:enable nextcloud-aio --force
php /var/www/html/occ db:add-missing-columns
php /var/www/html/occ db:add-missing-primary-keys
@@ -353,8 +349,6 @@ DATADIR_PERMISSION_CONF
php /var/www/html/occ config:system:set activity_expire_days --value="30" --type=integer
php /var/www/html/occ config:system:set simpleSignUpLink.shown --type=bool --value=false
php /var/www/html/occ config:system:set share_folder --value="/Shared"
# Not needed anymore with the removal of the updatenotification app:
# php /var/www/html/occ config:app:set updatenotification notify_groups --value="[]"
# Install some apps by default
if [ -n "$STARTUP_APPS" ]; then
@@ -433,6 +427,11 @@ DATADIR_PERMISSION_CONF
run_upgrade_if_needed_due_to_app_update
# Enable the updatenotification app but disable its UI and server update notifications
php /var/www/html/occ config:system:set updatechecker --type=bool --value=false
php /var/www/html/occ app:enable updatenotification
php /var/www/html/occ config:app:set updatenotification notify_groups --value="[]"
# Apply optimization
echo "Doing some optimizations..."
if [ "$NEXTCLOUD_SKIP_DATABASE_OPTIMIZATION" != yes ]; then
@@ -677,7 +676,12 @@ fi
# OnlyOffice
if [ "$ONLYOFFICE_ENABLED" = 'yes' ]; then
while ! nc -z "$ONLYOFFICE_HOST" 80; do
if echo "$ONLYOFFICE_HOST" | grep -q "nextcloud-.*-onlyoffice"; then
ONLYOFFICE_PORT=80
else
ONLYOFFICE_PORT=443
fi
while ! nc -z "$ONLYOFFICE_HOST" "$ONLYOFFICE_PORT"; do
echo "waiting for OnlyOffice to become available..."
sleep 5
done
@@ -691,7 +695,11 @@ if [ "$ONLYOFFICE_ENABLED" = 'yes' ]; then
php /var/www/html/occ config:system:set onlyoffice jwt_secret --value="$ONLYOFFICE_SECRET"
php /var/www/html/occ config:app:set onlyoffice jwt_secret --value="$ONLYOFFICE_SECRET"
php /var/www/html/occ config:system:set onlyoffice jwt_header --value="AuthorizationJwt"
php /var/www/html/occ config:app:set onlyoffice DocumentServerUrl --value="https://$NC_DOMAIN/onlyoffice"
if echo "$ONLYOFFICE_HOST" | grep -q "nextcloud-.*-onlyoffice"; then
ONLYOFFICE_HOST="$NC_DOMAIN/onlyoffice"
export ONLYOFFICE_HOST
fi
php /var/www/html/occ config:app:set onlyoffice DocumentServerUrl --value="https://$ONLYOFFICE_HOST"
else
if [ "$REMOVE_DISABLED_APPS" = yes ] && [ -d "/var/www/html/custom_apps/onlyoffice" ] && [ -n "$ONLYOFFICE_SECRET" ] && [ "$(php /var/www/html/occ config:system:get onlyoffice jwt_secret)" = "$ONLYOFFICE_SECRET" ]; then
php /var/www/html/occ app:remove onlyoffice

View File

@@ -26,4 +26,11 @@ else
fi
fi
sleep inf
signal_handler() {
exit 0
}
trap signal_handler SIGINT SIGTERM
sleep inf &
wait $!

View File

@@ -1,6 +1,6 @@
# syntax=docker/dockerfile:latest
# From https://github.com/ONLYOFFICE/Docker-DocumentServer/blob/master/Dockerfile
FROM onlyoffice/documentserver:8.3.3.1
FROM onlyoffice/documentserver:9.0.3.1
# USER root is probably used

View File

@@ -1,5 +1,5 @@
# syntax=docker/dockerfile:latest
FROM python:3.13.3-alpine3.21
FROM python:3.13.5-alpine3.21
COPY --chmod=775 start.sh /start.sh
COPY --chmod=775 healthcheck.sh /healthcheck.sh

View File

@@ -1,5 +1,5 @@
# syntax=docker/dockerfile:latest
FROM nats:2.11.4-scratch AS nats
FROM nats:2.11.6-scratch AS nats
FROM eturnal/eturnal:1.12.1 AS eturnal
FROM strukturag/nextcloud-spreed-signaling:2.0.3 AS signaling
FROM alpine:3.21.3 AS janus
@@ -37,6 +37,7 @@ RUN set -ex; \
FROM alpine:3.21.3
ENV ETURNAL_ETC_DIR="/conf"
ENV SKIP_CERT_VERIFY=false
COPY --from=janus --chmod=777 --chown=1000:1000 /usr/local /usr/local
COPY --from=eturnal --chmod=777 --chown=1000:1000 /opt/eturnal /opt/eturnal
COPY --from=nats --chmod=777 --chown=1000:1000 /nats-server /usr/local/bin/nats-server

View File

@@ -95,6 +95,7 @@ backends = backend-1
allowall = false
timeout = 10
connectionsperhost = 8
skipverify = ${SKIP_CERT_VERIFY}
[backend-1]
url = https://${NC_DOMAIN}

View File

@@ -1,11 +1,5 @@
# syntax=docker/dockerfile:latest
FROM golang:1.24.3-alpine3.21 AS go
RUN set -ex; \
apk upgrade --no-cache -a; \
apk add --no-cache \
build-base; \
go install github.com/containrrr/watchtower@76f9cea516593fabb8ca91ff13de55caa6aa0a8b;
FROM ghcr.io/nicholas-fedor/watchtower:1.11.5 AS watchtower
FROM alpine:3.21.3
@@ -13,7 +7,7 @@ RUN set -ex; \
apk upgrade --no-cache -a; \
apk add --no-cache bash ca-certificates tzdata
COPY --from=go /go/bin/watchtower /watchtower
COPY --from=watchtower /watchtower /watchtower
COPY --chmod=775 start.sh /start.sh

View File

@@ -9,6 +9,13 @@ elif ! test -r /var/run/docker.sock; then
exit 1
fi
if [ -f /run/.containerenv ]; then
# If running under podman disable memory_swappiness setting in watchtower.
# It is a necessary workaround until https://github.com/containers/podman/issues/23824 gets fixed.
echo "Running under Podman. Setting WATCHTOWER_DISABLE_MEMORY_SWAPPINESS to 1."
export WATCHTOWER_DISABLE_MEMORY_SWAPPINESS=1
fi
if [ -n "$CONTAINER_TO_UPDATE" ]; then
exec /watchtower --cleanup --debug --run-once "$CONTAINER_TO_UPDATE"
else

View File

@@ -1,6 +1,6 @@
# syntax=docker/dockerfile:latest
# Probably from this file: https://github.com/nextcloud/whiteboard/blob/main/Dockerfile
FROM ghcr.io/nextcloud-releases/whiteboard:v1.0.5
FROM ghcr.io/nextcloud-releases/whiteboard:v1.1.2
USER root
RUN set -ex; \

View File

@@ -20,13 +20,4 @@
<admin>OCA\AllInOne\Settings\Admin</admin>
</settings>
<!-- not implemented yet - but might be useful:
<background-jobs>
<job>OCA\AllInOne\Notification\BackgroundJob</job>
</background-jobs>
<commands>
<command>OCA\UpdateNotification\Command\Check</command>
</commands>
-->
</info>

View File

@@ -10,7 +10,7 @@ declare(strict_types=1);
*/
/** @var array $_ */ ?>
<div id="allinone" class="section">
<h2><?php p($l->t('Nextcloud All-in-One'));?></h2>
<h2><?php p($l->t('Nextcloud All-in-One'));?></h2><br/>
<a href="<?php p($_['AIOLoginUrl']);?>" class="button" target="_blank">Open Nextcloud AIO Interface ↗</a><br><br>
<p><a href="https://github.com/nextcloud/all-in-one#how-to-easily-log-in-to-the-aio-interface">Click here for more infos on this feature (e.g. also on how to change the link in the button)</a></p>
</div>

View File

@@ -11,7 +11,7 @@ This container bundles caddy and auto-configures it for you. It also covers [vau
- If you want to use this with [nocodb](https://github.com/nextcloud/all-in-one/tree/main/community-containers/nocodb), make sure that you point `tables.your-nc-domain.com` to your server using a cname record so that caddy can get a certificate automatically for nocodb.
- If you want to use this with [jellyseerr](https://github.com/nextcloud/all-in-one/tree/main/community-containers/jellyseerr), make sure that you point `requests.your-nc-domain.com` to your server using a cname record so that caddy can get a certificate automatically for jellyseerr.
- After the container was started the first time, you should see a new `nextcloud-aio-caddy` folder and inside there an `allowed-countries.txt` file when you open the files app with the default `admin` user. 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. Private ip-ranges are always allowed. Additionally, in order to activate this config, you need to get an account at https://dev.maxmind.com/geoip/geolite2-free-geolocation-data and download the `GeoLite2-Country.mmdb` and upload it with this exact name into the `nextcloud-aio-caddy` folder. Afterwards restart all containers from the AIO interface and your new config should be active!
- You can add your own Caddy configurations in `/data/caddy-imports/` inside the Caddy container (`sudo docker exec -it nextcloud-aio-caddy bash`). These will be imported on container startup.
- You can add your own Caddy configurations in `/data/caddy-imports/` inside the Caddy container (`sudo docker exec -it nextcloud-aio-caddy bash`). These will be imported on container startup. **Please note:** If you do not have CLI access to the server, you can now run docker commands via a web session by using this community container: https://github.com/nextcloud/all-in-one/tree/main/community-containers/container-management
- See https://github.com/nextcloud/all-in-one/tree/main/community-containers#community-containers how to add it to the AIO stack
### Repository

View File

@@ -0,0 +1,41 @@
{
"aio_services_v1": [
{
"container_name": "nextcloud-aio-container-management",
"display_name": "Container Management",
"documentation": "https://github.com/nextcloud/all-in-one/tree/main/community-containers/container-management",
"image": "ghcr.io/szaimen/aio-container-management",
"image_tag": "v1",
"internal_port": "5804",
"restart": "unless-stopped",
"ports": [
{
"ip_binding": "",
"port_number": "5804",
"protocol": "tcp"
}
],
"volumes": [
{
"source": "%WATCHTOWER_DOCKER_SOCKET_PATH%",
"destination": "/var/run/docker.sock",
"writeable": false
}
],
"environment": [
"TZ=%TIMEZONE%",
"SECURE_CONNECTION=1",
"WEB_AUTHENTICATION=1",
"USER_ID=0",
"GROUP_ID=0",
"WEB_AUTHENTICATION_USERNAME=container-management",
"WEB_AUTHENTICATION_PASSWORD=%CONTAINER_MANAGEMENT_PASSWORD%",
"WEB_LISTENING_PORT=5804"
],
"secrets": [
"CONTAINER_MANAGEMENT_PASSWORD"
],
"ui_secret": "CONTAINER_MANAGEMENT_PASSWORD"
}
]
}

View File

@@ -0,0 +1,15 @@
## Container-Management
This container allows to manage insides of other containers via a GUI inside a Web session by allowing to run docker commands from inside this container.
### Notes
- After adding and starting the container, you need to visit `https://ip.address.of.this.server:5804` in order to log in with the user `container-management` and the password that you can see next to the container in the AIO interface. (The web page uses a self-signed certificate, so you need to accept the warning).
- Then, you should see a terminal. There you can use any docker command. ⚠️ Be very carefully while doing that as can break your instance!
- There are also some pre-made scripts that make configuring some of the community containers easier. For example scripts for [LLDAP](https://github.com/nextcloud/all-in-one/tree/main/community-containers/lldap) and [Facerecognition](https://github.com/nextcloud/all-in-one/tree/main/community-containers/facerecognition).
- ⚠️ After you are done doing your operations, remove the container for better security again from the stack: https://github.com/nextcloud/all-in-one/tree/main/community-containers#how-to-remove-containers-from-aios-stack
- 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/szaimen/aio-container-management
### Maintainer
https://github.com/szaimen

View File

@@ -4,7 +4,8 @@ This container bundles the external model of facerecognition and auto-configures
### Notes
- This container needs imaginary in order to analyze modern file format images. Make sure to enable imaginary in the AIO interface before adding this container.
- The image analysis is currently set to fixed value of `1G`. See [this](https://github.com/search?q=repo%3Anextcloud%2Fall-in-one+1G+path%3A%2F%5Ecommunity-containers%5C%2Ffacerecognition%5C%2F%2F&type=code)
- Facerecognition is by default disabled for all users, if you want to enable facerecognition for all users, you can run the following before adding this container:
- Facerecognition is by default disabled for all users. If you want to enable facerecognition for all users, you can run the following commands before adding this container:<br>
**Please note:** If you do not have CLI access to the server, you can now run docker commands via a web session by using this community container: https://github.com/nextcloud/all-in-one/tree/main/community-containers/container-management. This script below can be run from inside the container-management container via `bash /facerecognition.sh`.
```bash
# Go into the container
sudo docker exec --user www-data -it nextcloud-aio-nextcloud bash
@@ -22,7 +23,8 @@ This container bundles the external model of facerecognition and auto-configures
# Exit the container shell
exit
```
- If facerecognition shall analyze shared files & folders (`sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ config:app:set facerecognition handle_shared_files --value true`), groupfolders (`sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ config:app:set facerecognition handle_group_files --value true`) and/or external storages (`sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ config:app:set facerecognition handle_external_files --value true`) in Nextcloud, you need to enable support for it manually first by running the mentioned commands before adding this container. See https://github.com/matiasdelellis/facerecognition/wiki/Settings#hidden-settings for further notes on each of these settings.
- If facerecognition shall analyze shared files & folders (`sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ config:app:set facerecognition handle_shared_files --value true`), groupfolders (`sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ config:app:set facerecognition handle_group_files --value true`) and/or external storages (`sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ config:app:set facerecognition handle_external_files --value true`) in Nextcloud, you need to enable support for it manually first by running the mentioned commands before adding this container. See https://github.com/matiasdelellis/facerecognition/wiki/Settings#hidden-settings for further notes on each of these settings.<br>
**Please note:** If you do not have CLI access to the server, you can now run docker commands via a web session by using this community container: https://github.com/nextcloud/all-in-one/tree/main/community-containers/container-management
- See https://github.com/nextcloud/all-in-one/tree/main/community-containers#community-containers how to add it to the AIO stack
### Repository

View File

@@ -4,7 +4,7 @@ This container bundles fail2ban and auto-configures it for you in order to block
### Notes
- If you get an error like `"ip6tables v1.8.9 (legacy): can't initialize ip6tables table filter': Table does not exist (do you need to insmod?)"`, you need to enable ip6tables on your host via `sudo modprobe ip6table_filter`.
- If you get an error like `stderr: 'iptables: No chain/target/match by that name.'` and `stderr: 'ip6tables: No chain/target/match by that name.'`, you need to follow https://github.com/szaimen/aio-fail2ban/issues/9#issuecomment-2026898790 in order to resolve this.
- You can unban ip addresses like so for example: `docker exec -it nextcloud-aio-fail2ban fail2ban-client set nextcloud unbanip 203.113.167.162`.
- You can unban ip addresses like so for example: `docker exec -it nextcloud-aio-fail2ban fail2ban-client set nextcloud unbanip 203.113.167.162`. **Please note:** If you do not have CLI access to the server, you can now run docker commands via a web session by using this community container: https://github.com/nextcloud/all-in-one/tree/main/community-containers/container-management
- See https://github.com/nextcloud/all-in-one/tree/main/community-containers#community-containers how to add it to the AIO stack
### Repository

View File

@@ -2,7 +2,7 @@
"aio_services_v1": [
{
"container_name": "nextcloud-aio-libretranslate",
"display_name": "LibreTranslate",
"display_name": "LibreTranslate (deprecated)",
"documentation": "https://github.com/nextcloud/all-in-one/tree/main/community-containers/libretranslate",
"image": "ghcr.io/szaimen/aio-libretranslate",
"image_tag": "v1",

View File

@@ -23,7 +23,8 @@ First, you need to retrieve the LLDAP admin password, this will be used later on
sudo docker inspect nextcloud-aio-lldap | grep LLDAP_LDAP_USER_PASS
```
Now go into the Nextcloud container:
Now go into the Nextcloud container:<br>
**Please note:** If you do not have CLI access to the server, you can now run docker commands via a web session by using this community container: https://github.com/nextcloud/all-in-one/tree/main/community-containers/container-management. This script below can be run from inside the container-management container via `bash /lldap.sh`.
```bash
sudo docker exec --user www-data -it nextcloud-aio-nextcloud bash
```

View File

@@ -8,7 +8,7 @@ This container contains a fork of the Nginx Proxy Manager, which is a WebUI for
- After the container was started the first time, please check the logs for errors. Then you can open NPMplus on `https://<ip>:81` and change the password.
- The default password is `iArhP1j7p1P6TA92FA2FMbbUGYqwcYzxC4AVEe12Wbi94FY9gNN62aKyF1shrvG4NycjjX9KfmDQiwkLZH1ZDR9xMjiG2QmoHXi` and the default email is `admin@example.org`
- If you want to use NPMplus behind a domain and outside localhost just create a new proxy host inside the NPMplus which proxies to `https`, `127.0.0.1` and port `81` - all other settings should be the same as for the AIO host.
- If you want to set env options from this [compose.yaml](https://github.com/ZoeyVid/NPMplus/blob/develop/compose.yaml), please set them inside the `.env` file which you can find in the `nextcloud_aio_npmplus` volume
- If you want to set env options from this [compose.yaml](https://github.com/ZoeyVid/NPMplus/blob/develop/compose.yaml), please set them inside the `.env` file which you can find in the `nextcloud_aio_npmplus` volume **Please note:** If you do not have CLI access to the server, you can now run docker commands via a web session by using this community container: https://github.com/nextcloud/all-in-one/tree/main/community-containers/container-management
- The data (certs, configs, etc.) of NPMplus will be automatically included in AIOs backup solution!
- **Important:** you always need to enable https for your hosts, since `DISABLE_HTTP` is set to true by default
- See https://github.com/nextcloud/all-in-one/tree/main/community-containers#community-containers how to add it to the AIO stack

View File

@@ -17,4 +17,4 @@ Yes, see [this list](https://github.com/nextcloud/all-in-one/issues/5251) for al
## How to remove containers from AIOs stack?
You can remove containers now via the web interface.
After removing the containers, there might be some data left on your server that you might want to remove. You can get rid of the data by first running `sudo docker rm nextcloud-aio-container1`, (adjust `container1` accordingly) per community-container that you removed. Then run `sudo docker image prune -a` in order to remove all images that are not used anymore. As last step you can get rid of persistent data of these containers that is stored in volumes. You can check if there is some by running `sudo docker volume ls` and look for any volume that matches the ones that you removed. If so, you can remove them with `sudo docker volume rm nextcloud_aio_volume-id` (of course you need to adjust the `volume-id`).
After removing the containers, there might be some data left on your server that you might want to remove. You can get rid of the data by first running `sudo docker rm nextcloud-aio-container1`, (adjust `container1` accordingly) per community-container that you removed. Then run `sudo docker image prune -a` in order to remove all images that are not used anymore. As last step you can get rid of persistent data of these containers that is stored in volumes. You can check if there is some by running `sudo docker volume ls` and look for any volume that matches the ones that you removed. If so, you can remove them with `sudo docker volume rm nextcloud_aio_volume-id` (of course you need to adjust the `volume-id`). **Please note:** If you do not have CLI access to the server, you can now run docker commands via a web session by using this community container: https://github.com/nextcloud/all-in-one/tree/main/community-containers/container-management

View File

@@ -47,3 +47,13 @@ This is documented here: https://github.com/nextcloud-releases/all-in-one/tree/m
## How to connect to the database?
Simply run `sudo docker exec -it nextcloud-aio-database psql -U oc_nextcloud nextcloud_database` and you should be in.
## How to locally build and test changes to mastercontainer?
1. Push changes to your own git fork and branch.
1. Use below commands to build mastercontainer image for a custom git url and branch:
```
cd Containers/mastercontainer
docker buildx build -t ghcr.io/nextcloud-releases/all-in-one:latest --build-arg AIO_GIT_URL="https://github.com/my-fork-repo/all-in-one.git" --build-arg AIO_GIT_BRANCH="my-feature-branch" --load .
```
1. Start a container with above built image.
1. Since the hash of a locally built image doesn't match the latest release mastercontainer, it prompts for a mandatory update. To temporarily bypass the update suffix `?bypass_mastercontainer_update` to the URL. Eg: `https://localhost:8080/containers?bypass_mastercontainer_update`

View File

@@ -4,19 +4,23 @@
First of all upgrade your docker installation to v27.0.1 or higher.
1. Then edit `/etc/docker/daemon.json` (or `~/.config/docker/daemon.json` in case of docker-rootless), add the below json:
```json
{
"default-network-opts": {"bridge":{"com.docker.network.enable_ipv6":"true"}}
}
```
> [!WARNING]
> This will enable ipv6 for all new docker networks by default! You can alternatively create the `nextcloud-aio` network with ipv6 support by hand manually via docker network create or via compose.yaml.
Save the file.
```json
{
"default-network-opts": {"bridge":{"com.docker.network.enable_ipv6":"true"}}
}
```
And save the file.
2. Reload the Docker configuration file.
```console
sudo systemctl restart docker
```
```console
sudo systemctl restart docker
```
3. Make sure that ipv6 is enabled for the internal `nextcloud-aio` network by running `sudo docker network inspect nextcloud-aio | grep EnableIPv6`. On a new instance, this command should return that it did not find a network with this name. Then you can run `sudo docker network create nextcloud-aio` in order to create the network with ipv6-support. However if it finds the network and its value `EnableIPv6` is set to false, make sure to follow https://github.com/nextcloud/all-in-one/discussions/4989 in order to recreate the network and enable ipv6 for it.
## Docker Desktop (Windows and macOS)
@@ -25,9 +29,12 @@ Then, on Windows and macOS which use Docker Desktop, you need to go into the set
1. You need to now adjust this json file:
```
"default-network-opts": {"bridge":{"com.docker.network.enable_ipv6":"true"}}
```
> [!WARNING]
> This will enable ipv6 for all new docker networks by default! You can alternatively create the `nextcloud-aio` network with ipv6 support by hand manually via docker network create or via compose.yaml.
```json
"default-network-opts": {"bridge":{"com.docker.network.enable_ipv6":"true"}}
```
2. Add these values to the json and make sure to keep the other currently values and that you don't see `Unexpected token in JSON at position ...` before attempting to restart by clicking on `Apply & restart`.
3. Make sure that ipv6 is enabled for the internal `nextcloud-aio` network by running `sudo docker network inspect nextcloud-aio | grep EnableIPv6`. On a new instance, this command should return that it did not find a network with this name. Then you can run `sudo docker network create nextcloud-aio` in order to create the network with ipv6-support. However if it finds the network and its value `EnableIPv6` is set to false, make sure to follow https://github.com/nextcloud/all-in-one/discussions/4989 in order to recreate the network and enable ipv6 for it.

View File

@@ -1,6 +1,6 @@
name: nextcloud-aio-helm-chart
description: A generated Helm Chart for Nextcloud AIO from Skippbox Kompose
version: 10.15.0
version: 11.3.0
apiVersion: v2
keywords:
- latest

View File

@@ -61,7 +61,7 @@ spec:
value: "{{ .Values.TIMEZONE }}"
- name: WHITEBOARD_HOST
value: nextcloud-aio-whiteboard
image: ghcr.io/nextcloud-releases/aio-apache:20250526_095855
image: ghcr.io/nextcloud-releases/aio-apache:20250710_082355
readinessProbe:
exec:
command:

View File

@@ -36,7 +36,7 @@ spec:
{{- end }}
initContainers:
- name: init-subpath
image: ghcr.io/nextcloud-releases/aio-alpine:20250526_095855
image: ghcr.io/nextcloud-releases/aio-alpine:20250710_082355
command:
- mkdir
- "-p"
@@ -59,7 +59,7 @@ spec:
value: "{{ .Values.NEXTCLOUD_UPLOAD_LIMIT }}"
- name: TZ
value: "{{ .Values.TIMEZONE }}"
image: ghcr.io/nextcloud-releases/aio-clamav:20250526_095855
image: ghcr.io/nextcloud-releases/aio-clamav:20250710_082355
readinessProbe:
exec:
command:

View File

@@ -35,7 +35,7 @@ spec:
value: --o:ssl.enable=false --o:ssl.termination=true --o:mount_jail_tree=false --o:logging.level=warning --o:home_mode.enable=true --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:20250526_095855
image: ghcr.io/nextcloud-releases/aio-collabora:20250710_082355
readinessProbe:
exec:
command:

View File

@@ -35,7 +35,7 @@ spec:
{{- end }}
initContainers:
- name: init-subpath
image: ghcr.io/nextcloud-releases/aio-alpine:20250526_095855
image: ghcr.io/nextcloud-releases/aio-alpine:20250710_082355
command:
- mkdir
- "-p"
@@ -64,7 +64,7 @@ spec:
value: nextcloud
- name: TZ
value: "{{ .Values.TIMEZONE }}"
image: ghcr.io/nextcloud-releases/aio-postgresql:20250526_095855
image: ghcr.io/nextcloud-releases/aio-postgresql:20250710_082355
readinessProbe:
exec:
command:

View File

@@ -24,7 +24,7 @@ spec:
spec:
initContainers:
- name: init-volumes
image: ghcr.io/nextcloud-releases/aio-alpine:20250526_095855
image: ghcr.io/nextcloud-releases/aio-alpine:20250710_082355
command:
- chmod
- "777"
@@ -54,7 +54,7 @@ spec:
value: basic
- name: xpack.security.enabled
value: "false"
image: ghcr.io/nextcloud-releases/aio-fulltextsearch:20250526_095855
image: ghcr.io/nextcloud-releases/aio-fulltextsearch:20250710_082355
readinessProbe:
exec:
command:

View File

@@ -38,7 +38,7 @@ spec:
value: "{{ .Values.IMAGINARY_SECRET }}"
- name: TZ
value: "{{ .Values.TIMEZONE }}"
image: ghcr.io/nextcloud-releases/aio-imaginary:20250526_095855
image: ghcr.io/nextcloud-releases/aio-imaginary:20250710_082355
readinessProbe:
exec:
command:

View File

@@ -6,7 +6,9 @@ metadata:
name: nextcloud-aio-nextcloud-data
namespace: "{{ .Values.NAMESPACE }}"
spec:
{{- if .Values.STORAGE_CLASS }}
{{- if .Values.STORAGE_CLASS_DATA }}
storageClassName: {{ .Values.STORAGE_CLASS_DATA }}
{{- else if .Values.STORAGE_CLASS }}
storageClassName: {{ .Values.STORAGE_CLASS }}
{{- end }}
accessModes:

View File

@@ -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:20250526_095855
image: ghcr.io/nextcloud-releases/aio-alpine:20250710_082355
command:
- chmod
- "777"
@@ -182,7 +182,7 @@ spec:
value: "{{ .Values.WHITEBOARD_ENABLED }}"
- name: WHITEBOARD_SECRET
value: "{{ .Values.WHITEBOARD_SECRET }}"
image: ghcr.io/nextcloud-releases/aio-nextcloud:20250526_095855
image: ghcr.io/nextcloud-releases/aio-nextcloud:20250710_082355
{{- if eq (.Values.RPSS_ENABLED | default "no") "yes" }} # AIO-config - do not change this comment!
securityContext:
# The items below only work in container context

View File

@@ -55,7 +55,7 @@ spec:
value: "{{ .Values.REDIS_PASSWORD }}"
- name: TZ
value: "{{ .Values.TIMEZONE }}"
image: ghcr.io/nextcloud-releases/aio-notify-push:20250526_095855
image: ghcr.io/nextcloud-releases/aio-notify-push:20250710_082355
readinessProbe:
exec:
command:

View File

@@ -24,7 +24,7 @@ spec:
spec:
initContainers:
- name: init-volumes
image: ghcr.io/nextcloud-releases/aio-alpine:20250526_095855
image: ghcr.io/nextcloud-releases/aio-alpine:20250710_082355
command:
- chmod
- "777"
@@ -42,7 +42,7 @@ spec:
value: "{{ .Values.ONLYOFFICE_SECRET }}"
- name: TZ
value: "{{ .Values.TIMEZONE }}"
image: ghcr.io/nextcloud-releases/aio-onlyoffice:20250526_095855
image: ghcr.io/nextcloud-releases/aio-onlyoffice:20250710_082355
readinessProbe:
exec:
command:

View File

@@ -39,7 +39,7 @@ spec:
value: "{{ .Values.REDIS_PASSWORD }}"
- name: TZ
value: "{{ .Values.TIMEZONE }}"
image: ghcr.io/nextcloud-releases/aio-redis:20250526_095855
image: ghcr.io/nextcloud-releases/aio-redis:20250710_082355
readinessProbe:
exec:
command:

View File

@@ -52,7 +52,7 @@ spec:
value: "{{ .Values.TURN_SECRET }}"
- name: TZ
value: "{{ .Values.TIMEZONE }}"
image: ghcr.io/nextcloud-releases/aio-talk:20250526_095855
image: ghcr.io/nextcloud-releases/aio-talk:20250710_082355
readinessProbe:
exec:
command:

View File

@@ -44,7 +44,7 @@ spec:
value: "{{ .Values.RECORDING_SECRET }}"
- name: TZ
value: "{{ .Values.TIMEZONE }}"
image: ghcr.io/nextcloud-releases/aio-talk-recording:20250526_095855
image: ghcr.io/nextcloud-releases/aio-talk-recording:20250710_082355
readinessProbe:
exec:
command:

View File

@@ -48,7 +48,7 @@ spec:
value: redis
- name: TZ
value: "{{ .Values.TIMEZONE }}"
image: ghcr.io/nextcloud-releases/aio-whiteboard:20250526_095855
image: ghcr.io/nextcloud-releases/aio-whiteboard:20250710_082355
readinessProbe:
exec:
command:

View File

@@ -222,6 +222,10 @@ find ./ -name '*persistentvolumeclaim.yaml' -exec sed -i "/accessModes:/i\ \ sto
# shellcheck disable=SC1083
find ./ -name '*persistentvolumeclaim.yaml' -exec sed -i "/accessModes:/i\ \ {{- end }}" \{} \;
# shellcheck disable=SC1083
find ./ -name 'nextcloud-aio-nextcloud-data-persistentvolumeclaim.yaml' -exec sed -i "/{{- if .Values.STORAGE_CLASS }}/i\ {{- if .Values.STORAGE_CLASS_DATA }}\n storageClassName: {{ .Values.STORAGE_CLASS_DATA }}" \{} \;
# shellcheck disable=SC1083
find ./ -name 'nextcloud-aio-nextcloud-data-persistentvolumeclaim.yaml' -exec sed -i "s/{{- if .Values.STORAGE_CLASS }}/{{- else if .Values.STORAGE_CLASS }}/" \{} \;
# shellcheck disable=SC1083
find ./ -name '*deployment.yaml' -exec sed -i "/restartPolicy:/d" \{} \;
# shellcheck disable=SC1083
find ./ -name '*apache*' -exec sed -i "s|$APACHE_PORT|{{ .Values.APACHE_PORT }}|" \{} \;
@@ -406,7 +410,8 @@ sed -i 's|17179869184|"17179869184"|' /tmp/sample.conf
# shellcheck disable=SC2129
echo "" >> /tmp/sample.conf
# shellcheck disable=SC2129
echo 'STORAGE_CLASS: # By setting this, you can adjust the storage class for your volumes' >> /tmp/sample.conf
echo 'STORAGE_CLASS: # By setting this, you can adjust the storage class for your volumes. This should be a fast storage like SSD backed storage!' >> /tmp/sample.conf
echo 'STORAGE_CLASS_DATA: # Allows to set a dedicated storage class for the Nextcloud data volume. This can be a bit slower storage than the one above. ⚠️ Warning: only set this for new installations, not existing ones!' >> /tmp/sample.conf
for variable in "${VOLUME_VARIABLE[@]}"; do
echo "$variable: 1Gi # You can change the size of the $(echo "$variable" | sed 's|_STORAGE_SIZE||;s|_|-|g' | tr '[:upper:]' '[:lower:]') volume that default to 1Gi with this value" >> /tmp/sample.conf
done

View File

@@ -38,7 +38,8 @@ REMOVE_DISABLED_APPS: yes # Setting this to no keep Nextcloud apps that a
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.
STORAGE_CLASS: # By setting this, you can adjust the storage class for your volumes
STORAGE_CLASS: # By setting this, you can adjust the storage class for your volumes. This should be a fast storage like SSD backed storage!
STORAGE_CLASS_DATA: # Allows to set a dedicated storage class for the Nextcloud data volume. This can be a bit slower storage than the one above. ⚠️ Warning: only set this for new installations, not existing ones!
APACHE_STORAGE_SIZE: 1Gi # You can change the size of the apache volume that default to 1Gi with this value
CLAMAV_STORAGE_SIZE: 1Gi # You can change the size of the clamav volume that default to 1Gi with this value
DATABASE_STORAGE_SIZE: 1Gi # You can change the size of the database volume that default to 1Gi with this value

131
php/composer.lock generated
View File

@@ -557,16 +557,16 @@
},
{
"name": "php-di/php-di",
"version": "7.0.10",
"version": "7.0.11",
"source": {
"type": "git",
"url": "https://github.com/PHP-DI/PHP-DI.git",
"reference": "0d1ed64126577e9a095b3204dcaee58cf76432c2"
"reference": "32f111a6d214564520a57831d397263e8946c1d2"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/PHP-DI/PHP-DI/zipball/0d1ed64126577e9a095b3204dcaee58cf76432c2",
"reference": "0d1ed64126577e9a095b3204dcaee58cf76432c2",
"url": "https://api.github.com/repos/PHP-DI/PHP-DI/zipball/32f111a6d214564520a57831d397263e8946c1d2",
"reference": "32f111a6d214564520a57831d397263e8946c1d2",
"shasum": ""
},
"require": {
@@ -614,7 +614,7 @@
],
"support": {
"issues": "https://github.com/PHP-DI/PHP-DI/issues",
"source": "https://github.com/PHP-DI/PHP-DI/tree/7.0.10"
"source": "https://github.com/PHP-DI/PHP-DI/tree/7.0.11"
},
"funding": [
{
@@ -626,7 +626,7 @@
"type": "tidelift"
}
],
"time": "2025-04-22T08:53:15+00:00"
"time": "2025-06-03T07:45:57+00:00"
},
{
"name": "php-di/slim-bridge",
@@ -2521,79 +2521,6 @@
],
"time": "2024-08-03T19:31:26+00:00"
},
{
"name": "composer/package-versions-deprecated",
"version": "1.11.99.5",
"source": {
"type": "git",
"url": "https://github.com/composer/package-versions-deprecated.git",
"reference": "b4f54f74ef3453349c24a845d22392cd31e65f1d"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/composer/package-versions-deprecated/zipball/b4f54f74ef3453349c24a845d22392cd31e65f1d",
"reference": "b4f54f74ef3453349c24a845d22392cd31e65f1d",
"shasum": ""
},
"require": {
"composer-plugin-api": "^1.1.0 || ^2.0",
"php": "^7 || ^8"
},
"replace": {
"ocramius/package-versions": "1.11.99"
},
"require-dev": {
"composer/composer": "^1.9.3 || ^2.0@dev",
"ext-zip": "^1.13",
"phpunit/phpunit": "^6.5 || ^7"
},
"type": "composer-plugin",
"extra": {
"class": "PackageVersions\\Installer",
"branch-alias": {
"dev-master": "1.x-dev"
}
},
"autoload": {
"psr-4": {
"PackageVersions\\": "src/PackageVersions"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Marco Pivetta",
"email": "ocramius@gmail.com"
},
{
"name": "Jordi Boggiano",
"email": "j.boggiano@seld.be"
}
],
"description": "Composer plugin that provides efficient querying for installed package versions (no runtime IO)",
"support": {
"issues": "https://github.com/composer/package-versions-deprecated/issues",
"source": "https://github.com/composer/package-versions-deprecated/tree/1.11.99.5"
},
"funding": [
{
"url": "https://packagist.com",
"type": "custom"
},
{
"url": "https://github.com/composer",
"type": "github"
},
{
"url": "https://tidelift.com/funding/github/packagist/composer/composer",
"type": "tidelift"
}
],
"time": "2022-01-17T14:14:24+00:00"
},
{
"name": "composer/pcre",
"version": "3.3.2",
@@ -3403,16 +3330,16 @@
},
{
"name": "nikic/php-parser",
"version": "v5.4.0",
"version": "v5.5.0",
"source": {
"type": "git",
"url": "https://github.com/nikic/PHP-Parser.git",
"reference": "447a020a1f875a434d62f2a401f53b82a396e494"
"reference": "ae59794362fe85e051a58ad36b289443f57be7a9"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/447a020a1f875a434d62f2a401f53b82a396e494",
"reference": "447a020a1f875a434d62f2a401f53b82a396e494",
"url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/ae59794362fe85e051a58ad36b289443f57be7a9",
"reference": "ae59794362fe85e051a58ad36b289443f57be7a9",
"shasum": ""
},
"require": {
@@ -3455,9 +3382,9 @@
],
"support": {
"issues": "https://github.com/nikic/PHP-Parser/issues",
"source": "https://github.com/nikic/PHP-Parser/tree/v5.4.0"
"source": "https://github.com/nikic/PHP-Parser/tree/v5.5.0"
},
"time": "2024-12-30T11:07:19+00:00"
"time": "2025-05-31T08:24:38+00:00"
},
{
"name": "phpdocumentor/reflection-common",
@@ -3894,16 +3821,16 @@
"source": {
"type": "git",
"url": "https://github.com/sserbin/twig-linter.git",
"reference": "c4cb0d08c8290d8fed541eb027bd85dba90a5914"
"reference": "932c7f1dcc79cd54aa011804d42aa7bbb14a970f"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/sserbin/twig-linter/zipball/c4cb0d08c8290d8fed541eb027bd85dba90a5914",
"reference": "c4cb0d08c8290d8fed541eb027bd85dba90a5914",
"url": "https://api.github.com/repos/sserbin/twig-linter/zipball/932c7f1dcc79cd54aa011804d42aa7bbb14a970f",
"reference": "932c7f1dcc79cd54aa011804d42aa7bbb14a970f",
"shasum": ""
},
"require": {
"composer/package-versions-deprecated": "1.11.99.5",
"composer-runtime-api": "^2.0",
"php": "^7.4|^8.0",
"symfony/console": "^5.4 || ^6.1",
"symfony/finder": "^5.4 || ^6.1",
@@ -3942,22 +3869,22 @@
],
"support": {
"issues": "https://github.com/sserbin/twig-linter/issues",
"source": "https://github.com/sserbin/twig-linter/tree/3.1.1"
"source": "https://github.com/sserbin/twig-linter/tree/3.1.2"
},
"time": "2024-09-09T16:51:23+00:00"
"time": "2025-06-03T06:31:48+00:00"
},
{
"name": "symfony/console",
"version": "v6.4.22",
"version": "v6.4.23",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
"reference": "7d29659bc3c9d8e9a34e2c3414ef9e9e003e6cf3"
"reference": "9056771b8eca08d026cd3280deeec3cfd99c4d93"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/console/zipball/7d29659bc3c9d8e9a34e2c3414ef9e9e003e6cf3",
"reference": "7d29659bc3c9d8e9a34e2c3414ef9e9e003e6cf3",
"url": "https://api.github.com/repos/symfony/console/zipball/9056771b8eca08d026cd3280deeec3cfd99c4d93",
"reference": "9056771b8eca08d026cd3280deeec3cfd99c4d93",
"shasum": ""
},
"require": {
@@ -4022,7 +3949,7 @@
"terminal"
],
"support": {
"source": "https://github.com/symfony/console/tree/v6.4.22"
"source": "https://github.com/symfony/console/tree/v6.4.23"
},
"funding": [
{
@@ -4038,7 +3965,7 @@
"type": "tidelift"
}
],
"time": "2025-05-07T07:05:04+00:00"
"time": "2025-06-27T19:37:22+00:00"
},
{
"name": "symfony/filesystem",
@@ -4577,16 +4504,16 @@
},
{
"name": "vimeo/psalm",
"version": "6.11.0",
"version": "6.12.1",
"source": {
"type": "git",
"url": "https://github.com/vimeo/psalm.git",
"reference": "4ed53b7ccebc09ef60ec4c9e464bf8a01bfd35b0"
"reference": "e71404b0465be25cf7f8a631b298c01c5ddd864f"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/vimeo/psalm/zipball/4ed53b7ccebc09ef60ec4c9e464bf8a01bfd35b0",
"reference": "4ed53b7ccebc09ef60ec4c9e464bf8a01bfd35b0",
"url": "https://api.github.com/repos/vimeo/psalm/zipball/e71404b0465be25cf7f8a631b298c01c5ddd864f",
"reference": "e71404b0465be25cf7f8a631b298c01c5ddd864f",
"shasum": ""
},
"require": {
@@ -4691,7 +4618,7 @@
"issues": "https://github.com/vimeo/psalm/issues",
"source": "https://github.com/vimeo/psalm"
},
"time": "2025-05-12T11:30:26+00:00"
"time": "2025-07-04T09:56:28+00:00"
},
{
"name": "wapmorgan/php-deprecation-detector",

View File

@@ -47,7 +47,7 @@
},
"display_name": {
"type": "string",
"pattern": "^[A-Za-z 0-9-]+$"
"pattern": "^[()A-Za-z 0-9-]+$"
},
"environment": {
"type": "array",

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<files psalm-version="6.11.0@4ed53b7ccebc09ef60ec4c9e464bf8a01bfd35b0">
<files psalm-version="6.12.0@cf420941d061a57050b6c468ef2c778faf40aee2">
<file src="src/ContainerDefinitionFetcher.php">
<PossiblyFalseArgument>
<code><![CDATA[file_get_contents($path)]]></code>

View File

@@ -82,6 +82,11 @@ $app->get('/containers', function (Request $request, Response $response, array $
$dockerController = $container->get(\AIO\Controller\DockerController::class);
$dockerActionManger->ConnectMasterContainerToNetwork();
$dockerController->StartDomaincheckContainer();
// Check if bypass_mastercontainer_update is provided on the URL, a special developer mode to bypass a mastercontainer update and use local image.
$params = $request->getQueryParams();
$bypass_mastercontainer_update = isset($params['bypass_mastercontainer_update']);
return $view->render($response, 'containers.twig', [
'domain' => $configurationManager->GetDomain(),
'apache_port' => $configurationManager->GetApachePort(),
@@ -91,7 +96,7 @@ $app->get('/containers', function (Request $request, Response $response, array $
'nextcloud_password' => $configurationManager->GetAndGenerateSecret('NEXTCLOUD_PASSWORD'),
'containers' => (new \AIO\ContainerDefinitionFetcher($container->get(\AIO\Data\ConfigurationManager::class), $container))->FetchDefinition(),
'borgbackup_password' => $configurationManager->GetAndGenerateSecret('BORGBACKUP_PASSWORD'),
'is_mastercontainer_update_available' => $dockerActionManger->IsMastercontainerUpdateAvailable(),
'is_mastercontainer_update_available' => ( $bypass_mastercontainer_update ? false : $dockerActionManger->IsMastercontainerUpdateAvailable() ),
'has_backup_run_once' => $configurationManager->hasBackupRunOnce(),
'is_backup_container_running' => $dockerActionManger->isBackupContainerRunning(),
'backup_exit_code' => $dockerActionManger->GetBackupcontainerExitCode(),

View File

@@ -349,6 +349,7 @@ main {
word-break: break-word;
max-width: calc(var(--max-width) + calc(var(--main-padding) * 2));
margin: 0 auto;
padding-bottom: var(--main-padding);
}
.logo {

View File

@@ -62,7 +62,11 @@ readonly class DockerController {
public function GetLogs(Request $request, Response $response, array $args) : Response
{
$id = $request->getQueryParams()['id'];
$requestParams = $request->getQueryParams();
$id = '';
if (isset($requestParams['id']) && is_string($requestParams['id'])) {
$id = $requestParams['id'];
}
if (str_starts_with($id, 'nextcloud-aio-')) {
$logs = $this->dockerActionManager->GetLogs($id);
} else {

View File

@@ -484,8 +484,15 @@ class ConfigurationManager
}
if (!$isValidPath) {
throw new InvalidSettingConfigurationException("The path must start with '/', and must not end with '/'!");
throw new InvalidSettingConfigurationException("The path must start with '/', and must not end with '/'! Another option is to use the docker volume name 'nextcloud_aio_backupdir'.");
}
// Prevent backup to be contained in Nextcloud Datadir as this will delete the backup archive upon restore
// See https://github.com/nextcloud/all-in-one/issues/6607
if (str_starts_with($location . '/', rtrim($this->GetNextcloudDatadirMount(), '/') . '/')) {
throw new InvalidSettingConfigurationException("The path must not be a children of or equal to NEXTCLOUD_DATADIR, which is currently set to " . $this->GetNextcloudDatadirMount());
}
} else {
$this->ValidateBorgRemoteRepo($repo);
}

View File

@@ -584,6 +584,12 @@ readonly class DockerActionManager {
$requestBody['HostConfig']['Mounts'] = $mounts;
}
// All AIO-managed containers should not be updated externally via watchtower but gracefully by AIO's backup and update feature.
$requestBody['Labels'] = ["com.centurylinklabs.watchtower.enable" => "false", "org.label-schema.vendor" => "Nextcloud"];
// Containers should have a fixed host name. See https://github.com/nextcloud/all-in-one/discussions/6589
$requestBody['Hostname'] = $container->GetIdentifier();
$url = $this->BuildApiUrl('containers/create?name=' . $container->GetIdentifier());
try {
$this->guzzleClient->request(

View File

@@ -17,7 +17,7 @@
<div class="container">
<main>
<h1>Nextcloud AIO v11.0.0</h1>
<h1>Nextcloud AIO v11.3.0</h1>
{# Add 2nd tab warning #}
<script type="text/javascript" src="second-tab-warning.js"></script>
@@ -25,6 +25,9 @@
{# timezone-prefill #}
<script type="text/javascript" src="timezone.js"></script>
{# js for optional containers and additional containers forms #}
<script type="text/javascript" src="containers-form-submit.js?v4"></script>
{% set hasBackupLocation = borg_backup_host_location or borg_remote_repo %}
{% set isAnyRunning = false %}
{% set isAnyRestarting = false %}
@@ -607,9 +610,6 @@
{% endif %}
{% endif %}
<script type="text/javascript" src="containers-form-submit.js?v4"></script>
{% if isApacheStarting == true or is_backup_container_running == true or isWatchtowerRunning == true or is_daily_backup_running == true %}
<script type="text/javascript" src="automatic_reload.js"></script>
{% else %}

View File

@@ -98,7 +98,6 @@
>
<label for="talk-recording">Nextcloud Talk Recording-server (needs Nextcloud Talk being enabled and ~1GB additional RAM and ~2 additional vCPUs, currently <a target="_blank" href="https://github.com/nextcloud/nextcloud-talk-recording/issues/17">only works on x86_64</a>)</label>
</p>
{% if is_onlyoffice_enabled == true %}
<p>
<input
type="checkbox"
@@ -113,7 +112,6 @@
>
<label for="onlyoffice">OnlyOffice</label>
</p>
{% endif %}
<p>
<input
type="checkbox"

View File

@@ -1,7 +1,7 @@
<html>
<head>
<title>AIO</title>
<link rel="stylesheet" href="/style.css?v4" media="all" />
<link rel="stylesheet" href="/style.css?v5" media="all" />
<link rel="icon" href="/img/favicon.png">
<script type="text/javascript" src="forms.js"></script>
<script type="text/javascript" src="toggle-dark-mode.js"></script>

View File

@@ -1,4 +1,8 @@
# Nextcloud All-in-One
> [!NOTE]
> Nextcloud AIO is actively looking for contributors. See [the forum post](https://help.nextcloud.com/t/nextcloud-aio-is-looking-for-contributors/205234).
The official Nextcloud installation method. Nextcloud AIO provides easy deployment and maintenance with most features included in this one Nextcloud instance.
Included are:
@@ -81,6 +85,9 @@ Included are:
| ![image](https://github.com/user-attachments/assets/6ef5d7b5-86f2-402c-bc6c-b633af2ca7dd) | ![image](https://github.com/user-attachments/assets/939d0fdf-436f-433d-82d3-27548263a040) |
## How to use this?
>[!WARNING]
> You should first make sure that you are not using docker installed via snap. You can check this by running `sudo docker info | grep "Docker Root Dir" | grep "/var/snap/docker/"`. If the output should contain the mentioned string `/var/snap/docker/`, you should first uninstall docker snap via `sudo snap remove docker` and then follow the instructions below. ⚠️ Attention: only run the command if this is a clean new docker installation and you are not running any service already using this.
> [!NOTE]
> The following instructions are meant for installations without a web server or reverse proxy (like Apache, Nginx, Caddy, Cloudflare Tunnel and else) already being in place. If you want to run AIO behind a web server or reverse proxy (like Apache, Nginx, Caddy, Cloudflare Tunnel and else), see the [reverse proxy documentation](https://github.com/nextcloud/all-in-one/blob/main/reverse-proxy.md). Also, the instructions below are especially meant for Linux. For macOS see [this](#how-to-run-aio-on-macos), for Windows see [this](#how-to-run-aio-on-windows) and for Synology see [this](#how-to-run-aio-on-synology-dsm).
@@ -567,16 +574,16 @@ On older TrueNAS SCALE releases with Kubernetes environment, there are two ways
Another but untested way is to install Portainer on your TrueNAS SCALE from here https://truecharts.org/charts/stable/portainer/installation-notes and add the Helm-chart repository https://nextcloud.github.io/all-in-one/ into Portainer by following https://docs.portainer.io/user/kubernetes/helm. More docs on AIOs Helm Chart are available here: https://github.com/nextcloud/all-in-one/tree/main/nextcloud-aio-helm-chart#nextcloud-aio-helm-chart.
### How to run `occ` commands?
Simply run the following: `sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ your-command`. Of course `your-command` needs to be exchanged with the command that you want to run.
Simply run the following: `sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ your-command`. Of course `your-command` needs to be exchanged with the command that you want to run. **Please note:** If you do not have CLI access to the server, you can now run docker commands via a web session by using this community container: https://github.com/nextcloud/all-in-one/tree/main/community-containers/container-management
### How to resolve `Security & setup warnings displays the "missing default phone region" after initial install`?
Simply run the following command: `sudo docker exec --user www-data nextcloud-aio-nextcloud php occ config:system:set default_phone_region --value="yourvalue"`. Of course you need to modify `yourvalue` based on your location. Examples are `DE`, `US` and `GB`. See this list for more codes: https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2#Officially_assigned_code_elements
Simply run the following command: `sudo docker exec --user www-data nextcloud-aio-nextcloud php occ config:system:set default_phone_region --value="yourvalue"`. Of course you need to modify `yourvalue` based on your location. Examples are `DE`, `US` and `GB`. See this list for more codes: https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2#Officially_assigned_code_elements **Please note:** If you do not have CLI access to the server, you can now run docker commands via a web session by using this community container: https://github.com/nextcloud/all-in-one/tree/main/community-containers/container-management
### How to run multiple AIO instances on one server?
See [multiple-instances.md](./multiple-instances.md) for some documentation on this.
### Bruteforce protection FAQ
Nextcloud features a built-in bruteforce protection which may get triggered and will block an ip-address or disable a user. You can unblock an ip-address by running `sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ security:bruteforce:reset <ip-address>` and enable a disabled user by running `sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ user:enable <name of user>`. See https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/occ_command.html#security for further information.
Nextcloud features a built-in bruteforce protection which may get triggered and will block an ip-address or disable a user. You can unblock an ip-address by running `sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ security:bruteforce:reset <ip-address>` and enable a disabled user by running `sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ user:enable <name of user>`. See https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/occ_command.html#security for further information. **Please note:** If you do not have CLI access to the server, you can now run docker commands via a web session by using this community container: https://github.com/nextcloud/all-in-one/tree/main/community-containers/container-management
### How to switch the channel?
You can switch to a different channel like e.g. the beta channel or from the beta channel back to the latest channel by stopping the mastercontainer, removing it (no data will be lost) and recreating the container using the same command that you used initially to create the mastercontainer. You simply need to change the last line `ghcr.io/nextcloud-releases/all-in-one:latest` to `ghcr.io/nextcloud-releases/all-in-one:beta` and vice versa.
@@ -658,10 +665,10 @@ Since Podman is not 100% compatible with the Docker API, Podman is not supported
### Access/Edit Nextcloud files/folders manually
The files and folders that you add to Nextcloud are by default stored in the following docker directory: `nextcloud_aio_nextcloud:/mnt/ncdata/` (usually `/var/lib/docker/volumes/nextcloud_aio_nextcloud_data/_data/` on linux host systems). If needed, you can modify/add/delete files/folders there but **ATTENTION**: be very careful when doing so because you might corrupt your AIO installation! Best is to create a backup using the built-in backup solution before editing/changing files/folders in there because you will then be able to restore your instance to the backed up state.
After you are done modifying/adding/deleting files/folders, don't forget to apply the correct permissions by running: `sudo docker exec nextcloud-aio-nextcloud chown -R 33:0 /mnt/ncdata/` and `sudo docker exec nextcloud-aio-nextcloud chmod -R 750 /mnt/ncdata/` and rescan the files with `sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ files:scan --all`.
After you are done modifying/adding/deleting files/folders, don't forget to apply the correct permissions by running: `sudo docker exec nextcloud-aio-nextcloud chown -R 33:0 /mnt/ncdata/` and `sudo docker exec nextcloud-aio-nextcloud chmod -R 750 /mnt/ncdata/` and rescan the files with `sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ files:scan --all`. **Please note:** If you do not have CLI access to the server, you can now run docker commands via a web session by using this community container: https://github.com/nextcloud/all-in-one/tree/main/community-containers/container-management
### How to edit Nextclouds config.php file with a texteditor?
You can edit Nextclouds config.php file directly from the host with your favorite text editor. E.g. like this: `sudo docker run -it --rm --volume nextcloud_aio_nextcloud:/var/www/html:rw alpine sh -c "apk add --no-cache nano && nano /var/www/html/config/config.php"`. Make sure to not break the file though which might corrupt your Nextcloud instance otherwise. In best case, create a backup using the built-in backup solution before editing the file.
You can edit Nextclouds config.php file directly from the host with your favorite text editor. E.g. like this: `sudo docker run -it --rm --volume nextcloud_aio_nextcloud:/var/www/html:rw alpine sh -c "apk add --no-cache nano && nano /var/www/html/config/config.php"`. Make sure to not break the file though which might corrupt your Nextcloud instance otherwise. In best case, create a backup using the built-in backup solution before editing the file. **Please note:** If you do not have CLI access to the server, you can now run docker commands via a web session by using this community container: https://github.com/nextcloud/all-in-one/tree/main/community-containers/container-management
### How to change default files by creating a custom skeleton directory?
All users see a set of [default files and folders](https://docs.nextcloud.com/server/latest/admin_manual/configuration_files/default_files_configuration.html) as dictated by Nextcloud's configuration. To change these default files and folders a custom skeleton directory must first be created; this can be accomplished by copying your skeleton files `sudo docker cp --follow-link /path/to/nextcloud/skeleton/ nextcloud-aio-nextcloud:/mnt/ncdata/skeleton/`, applying the correct permissions with `sudo docker exec nextcloud-aio-nextcloud chown -R 33:0 /mnt/ncdata/skeleton/` and `sudo docker exec nextcloud-aio-nextcloud chmod -R 750 /mnt/ncdata/skeleton/` and setting the skeleton directory option with `sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ config:system:set skeletondirectory --value="/mnt/ncdata/skeleton"`. Further information is available in the Nextcloud documentation on [configuration parameters for the skeleton directory](https://docs.nextcloud.com/server/stable/admin_manual/configuration_server/config_sample_php_parameters.html#skeletondirectory).
@@ -801,7 +808,7 @@ If you have the borg backup feature enabled, you can copy it over to the new hos
1. Note the path where the backups are stored and the encryption password
1. Navigate to the backup folder
1. Create archive of the backup so it's easier to copy: `tar -czvf borg.tar.gz borg`
1. Copy the archive over to the new host: `cp borg.tar.gz user@new.host:/mnt`. Make sure to replace `user` with your actual user and `new.host` with the IP or domain of the actual host. You can also use another way to copy the archive.
1. Copy the archive over to the new host: `scp borg.tar.gz user@new.host:/mnt`. Make sure to replace `user` with your actual user and `new.host` with the IP or domain of the actual host. You can also use another way to copy the archive.
1. Switch to the new host
1. Go to the folder you put the backup archive and extract it with `tar -xf borg.tar.gz`
1. Follow the installation guide to create a new aio instance, but do not start the containers yet (the `docker run` or `docker compose up -d` command)
@@ -1030,11 +1037,13 @@ After doing a restore via the AIO interface, you might run into problems due to
You can do so by running the `/daily-backup.sh` script that is stored in the mastercontainer. It accepts the following environment variables:
- `AUTOMATIC_UPDATES` if set to `1`, it will automatically stop the containers, update them and start them including the mastercontainer. If the mastercontainer gets updated, this script's execution will stop as soon as the mastercontainer gets stopped. You can then wait until it is started again and run the script with this flag again in order to update all containers correctly afterwards.
- `DAILY_BACKUP` if set to `1`, it will automatically stop the containers and create a backup. If you want to start them again afterwards, you may have a look at the `START_CONTAINERS` option.
- `START_CONTAINERS` if set to `1`, it will automatically start the containers without updating them.
- `STOP_CONTAINERS` if set to `1`, it will automatically stop the containers.
- `CHECK_BACKUP` if set to `1`, it will start the backup check. This is not allowed to be enabled at the same time like `DAILY_BACKUP`. Please be aware that this option is non-blocking which means that the backup check is not done when the process is finished since it only start the borgbackup container with the correct configuration.
- `STOP_CONTAINERS` if set to `1`, it will automatically stop the containers at the start of the script. Implied by `DAILY_BACKUP=1`.
- `START_CONTAINERS` if set to `1`, it will automatically start the containers at the end of the script, without updating them. Implied by `DAILY_BACKUP=1`.
- `CHECK_BACKUP` if set to `1`, it will start the integrity check of all borg backups made by AIO. Note that the backup check is non blocking so containers can be kept running while the check lasts. That means you can't pass `DAILY_BACKUP=1` at the same time. The output of the check can be found in the logs of the container `nextcloud-aio-borgbackup`.
One example for this would be `sudo docker exec -it --env DAILY_BACKUP=1 nextcloud-aio-mastercontainer /daily-backup.sh`, which you can run via a cronjob or put it in a script.
One example to do a backup would be `sudo docker exec -it --env DAILY_BACKUP=1 nextcloud-aio-mastercontainer /daily-backup.sh`, which you can run via a cronjob or put it in a script.
Likewise to do a backup check would be `sudo docker exec --env DAILY_BACKUP=0 --env CHECK_BACKUP=1 --env STOP_CONTAINERS=0 nextcloud-aio-mastercontainer /daily-backup.sh`.
> [!NOTE]
> None of the option returns error codes. So you need to check for the correct result yourself.
@@ -1057,7 +1066,7 @@ Netdata allows you to monitor your server using a GUI. You can install it by fol
If you want to use the user_sql app, the easiest way is to create an additional database container and add it to the docker network `nextcloud-aio`. Then the Nextcloud container should be able to talk to the database container using its name.
### phpMyAdmin, Adminer or pgAdmin
It is possible to install any of these to get a GUI for your AIO database. The pgAdmin container is recommended. You can get some docs on it here: https://www.pgadmin.org/docs/pgadmin4/latest/container_deployment.html. For the container to connect to the aio-database, you need to connect the container to the docker network `nextcloud-aio` and use `nextcloud-aio-database` as database host, `oc_nextcloud` as database username and the password that you get when running `sudo docker exec nextcloud-aio-nextcloud grep dbpassword config/config.php` as the password. Apart from that there is now a way for the community to add containers: https://github.com/nextcloud/all-in-one/discussions/3061#discussioncomment-7307045
It is possible to install any of these to get a GUI for your AIO database. The pgAdmin container is recommended. You can get some docs on it here: https://www.pgadmin.org/docs/pgadmin4/latest/container_deployment.html. For the container to connect to the aio-database, you need to connect the container to the docker network `nextcloud-aio` and use `nextcloud-aio-database` as database host, `oc_nextcloud` as database username and the password that you get when running `sudo docker exec nextcloud-aio-nextcloud grep dbpassword config/config.php` as the password. Apart from that there is now a way for the community to add containers: https://github.com/nextcloud/all-in-one/discussions/3061#discussioncomment-7307045 **Please note:** If you do not have CLI access to the server, you can now run docker commands via a web session by using this community container: https://github.com/nextcloud/all-in-one/tree/main/community-containers/container-management
### Mail server
You can configure one yourself by using either of these four recommended projects: [Docker Mailserver](https://github.com/docker-mailserver/docker-mailserver/#docker-mailserver), [Mailu](https://github.com/Mailu/Mailu), [Maddy Mail Server](https://github.com/foxcpp/maddy#maddy-mail-server), [Mailcow](https://github.com/mailcow/mailcow-dockerized#mailcow-dockerized-------) or [Stalwart](https://stalw.art/). There is now a community container which allows to easily add Stalwart Mail server to AIO: https://github.com/nextcloud/all-in-one/tree/main/community-containers/stalwart

View File

@@ -273,7 +273,7 @@ Although it does not seem like it is the case but from AIO perspective a Cloudfl
⚠️ **Please note:** look into [this](#adapting-the-sample-web-server-configurations-below) to adapt the above example configuration.
1. Now continue with [point 2](#2-use-this-startup-command) but add `--env SKIP_DOMAIN_VALIDATION=true` to the docker run command - which will disable the domain validation (because it is known that the domain validation will not work behind a Cloudflare Tunnel).
**Advice:** Make sure to [disable Cloudflares Rocket Loader feature](https://help.nextcloud.com/t/login-page-not-working-solved/149417/8) as otherwise Nextcloud's login prompt will not be shown.
**Advice:** Make sure to [disable Cloudflare's Rocket Loader feature](https://help.nextcloud.com/t/login-page-not-working-solved/149417/8) as otherwise Nextcloud's login prompt will not be shown.
</details>
@@ -745,6 +745,89 @@ The examples below define the dynamic configuration in YAML files. If you rather
</details>
### Traefik 3
<details>
<summary>click here to expand</summary>
**Disclaimer:** it might be possible that the config below is not working 100% correctly, yet. Improvements to it are very welcome!
Traefik's building blocks (router, service, middlewares) need to be defined using dynamic configuration similar to [this](https://doc.traefik.io/traefik/providers/file/#configuration-examples) official Traefik configuration example. Using **docker labels _won't work_** because of the nature of the project.
The examples below define the dynamic configuration in YAML files. If you rather prefer TOML, use a YAML to TOML converter.
1. In Traefik's static configuration define a [file provider](https://doc.traefik.io/traefik/providers/file/) for dynamic providers:
```yml
# STATIC CONFIGURATION
entryPoints:
https:
address: ":443" # Create an entrypoint called "https" that uses port 443
# If you want to enable HTTP/3 support, uncomment the line below
# http3: {}
certificatesResolvers:
# Define "letsencrypt" certificate resolver
letsencrypt:
acme:
storage: /letsencrypt/acme.json # Defines the path where certificates should be stored
email: <your-email-address> # Where LE sends notification about certificates expiring
tlschallenge: true
providers:
file:
directory: "/path/to/dynamic/conf" # Adjust the path according your needs.
watch: true
```
2. Declare the router, service and middlewares for Nextcloud in `/path/to/dynamic/conf/nextcloud.yml`:
```yml
http:
routers:
nextcloud:
rule: "Host(`<your-nc-domain>`)"
entrypoints:
- "https"
service: nextcloud
middlewares:
- nextcloud-chain
tls:
certresolver: "letsencrypt"
services:
nextcloud:
loadBalancer:
servers:
- url: "http://localhost:11000" # 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
middlewares:
nextcloud-secure-headers:
headers:
hostsProxyHeaders:
- "X-Forwarded-Host"
referrerPolicy: "same-origin"
https-redirect:
redirectscheme:
scheme: https
nextcloud-chain:
chain:
middlewares:
# - ... (e.g. rate limiting middleware)
- https-redirect
- nextcloud-secure-headers
```
---
⚠️ **Please note:** look into [this](#adapting-the-sample-web-server-configurations-below) to adapt the above example configuration.
</details>
### IIS with ARR and URL Rewrite
<details>