Compare commits

..

191 Commits

Author SHA1 Message Date
Simon L.
b00ae3ec1c Merge pull request #5004 from nextcloud/dependabot/docker/Containers/collabora/collabora/code-24.04.5.2.1
build(deps): bump collabora/code from 24.04.5.1.1 to 24.04.5.2.1 in /Containers/collabora
2024-07-18 15:15:50 +02:00
Simon L.
6d785c4848 Merge pull request #5003 from nextcloud/dependabot/docker/Containers/talk/nats-2.10.18-scratch
build(deps): bump nats from 2.10.17-scratch to 2.10.18-scratch in /Containers/talk
2024-07-18 15:15:29 +02:00
dependabot[bot]
4caf23ad28 build(deps): bump collabora/code in /Containers/collabora
Bumps collabora/code from 24.04.5.1.1 to 24.04.5.2.1.

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-18 13:11:54 +00:00
dependabot[bot]
0a2b5b6ace build(deps): bump nats in /Containers/talk
Bumps nats from 2.10.17-scratch to 2.10.18-scratch.

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-18 13:08:50 +00:00
Simon L.
44fbda535b increase to 9.3.0
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-07-18 14:53:17 +02:00
Simon L.
f47edcabe3 Merge pull request #5001 from nextcloud/nextcloud-container-update
Nextcloud dependency update
2024-07-18 14:51:13 +02:00
Simon L.
352bbd5e7f Merge pull request #5002 from nextcloud/aio-dependency-update
PHP dependency updates
2024-07-18 14:50:55 +02:00
szaimen
c0798bc5b3 php dependency updates
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-07-18 12:12:59 +00:00
szaimen
37f4340ca6 nextcloud-update automated change
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-07-18 12:10:47 +00:00
Simon L.
ccdb9bd1f3 update oo
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-07-18 09:35:45 +02:00
Simon L.
a7fcf67d5f Merge pull request #4990 from nextcloud/dependabot/docker/Containers/clamav/clamav/clamav-1.3.1-60
build(deps): bump clamav/clamav from 1.3.1-59 to 1.3.1-60 in /Containers/clamav
2024-07-18 09:34:31 +02:00
Simon L.
a562857ba5 Merge pull request #4981 from nextcloud/enh/noid/allow-lock-vaultwarden-interface
caddy community-container: allow to disable the vaultwarden admin interface
2024-07-18 09:34:13 +02:00
Simon L.
09c9cd839c Merge pull request #4980 from nextcloud/dependabot/docker/Containers/docker-socket-proxy/haproxy-3.0.3-alpine
build(deps): bump haproxy from 3.0.2-alpine to 3.0.3-alpine in /Containers/docker-socket-proxy
2024-07-18 09:34:03 +02:00
Simon L.
8e5deb0ebb Merge pull request #4979 from nextcloud/dependabot/docker/Containers/fulltextsearch/elasticsearch-8.14.3
build(deps): bump elasticsearch from 8.14.2 to 8.14.3 in /Containers/fulltextsearch
2024-07-18 09:33:45 +02:00
Simon L.
a5953d9fcb Merge pull request #4977 from nextcloud/imaginary-container-update
Imaginary update
2024-07-18 09:33:25 +02:00
Simon L.
ba10373ccc Merge pull request #4973 from nextcloud/fix/remove-unused-go-binaries
fix: remove unused go binaries from redis and postgresql images
2024-07-18 09:33:10 +02:00
Simon L.
4d3b712cfa Merge pull request #5000 from nextcloud/aio-helm-update
Helm Chart updates
2024-07-18 08:49:13 +02:00
szaimen
352e086b39 Helm Chart updates
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-07-18 06:40:09 +00:00
Simon L.
4842acc3eb Merge pull request #4978 from nextcloud/aio-yaml-update
Yaml updates
2024-07-18 08:33:58 +02:00
Simon L.
92a711fdef Merge pull request #4996 from nextcloud/enh/noid/remove-latest-tag
update-helm: adjust workflow for new tags syntax
2024-07-17 18:24:08 +02:00
Simon L.
f1da5f9269 Update update-helm.sh
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-07-17 17:21:54 +02:00
Simon L.
460e9725d8 updat-helm: adjust workflow for new tags syntax
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-07-17 16:38:51 +02:00
Simon L.
8ab9c734b4 update link to docker engine
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-07-17 15:33:43 +02:00
Simon L.
bd7b4fc2ae update detail
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-07-17 15:23:33 +02:00
szaimen
773c2d4325 Yaml updates
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-07-16 12:05:33 +00:00
szaimen
9d9b9dd561 imaginary-update automated change
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-07-16 12:04:41 +00:00
Simon L.
8e79c93b69 Merge pull request #4988 from nextcloud/enh/noid/allow-disable-creation-of-namespace
helm: allow to disable creation of namespace
2024-07-16 11:59:55 +02:00
dependabot[bot]
b4b5f70ecd build(deps): bump clamav/clamav in /Containers/clamav
Bumps clamav/clamav from 1.3.1-59 to 1.3.1-60.

---
updated-dependencies:
- dependency-name: clamav/clamav
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-15 13:01:59 +00:00
Simon L.
65c2ecfd5d helm: allow to disable creation of namespace
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-07-15 14:07:36 +02:00
Simon L
e1b5ba884f Merge pull request #4976 from nextcloud/enh/4887/update-ipv6-docs
update the ipv6 documentation
2024-07-15 14:03:48 +02:00
Simon L.
aaf748b547 update link to network recreation docs
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-07-15 13:50:04 +02:00
Simon L.
1f04defd75 also remove IPV6_NETWORK
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-07-15 11:47:44 +02:00
Simon L.
0600a89a88 address review
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-07-15 11:46:27 +02:00
Simon L.
4eadbc93b7 caddy community-container: allow to disable the vaultwarden admin interface
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-07-12 16:53:57 +02:00
dependabot[bot]
cd4dbca6b5 build(deps): bump haproxy in /Containers/docker-socket-proxy
Bumps haproxy from 3.0.2-alpine to 3.0.3-alpine.

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-12 12:42:24 +00:00
Zoey
b3161695e6 Update docker-ipv6-support.md
Signed-off-by: Zoey <zoey@z0ey.de>
2024-07-12 14:38:38 +02:00
Zoey
338e0868f5 Update compose.yaml
Signed-off-by: Zoey <zoey@z0ey.de>
2024-07-12 14:37:17 +02:00
dependabot[bot]
3b6464852d build(deps): bump elasticsearch in /Containers/fulltextsearch
Bumps elasticsearch from 8.14.2 to 8.14.3.

---
updated-dependencies:
- dependency-name: elasticsearch
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-12 12:10:13 +00:00
Simon L.
46c7fed2be update the ipv6 documentation
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-07-12 11:34:00 +02:00
Simon L.
e60dd31a35 make it rm -f
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-07-12 10:36:14 +02:00
Simon L.
22fbd73d92 add link to httpd
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-07-12 10:31:30 +02:00
Simon L.
b8c1d78371 update links to upstream docker files
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-07-12 10:24:56 +02:00
Richard Steinmetz
8027a7e5ec fix: remove unused go binaries from redis and postgresql images
Both binaries gosu and su-exec are not used in our entrypoints.

Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2024-07-11 18:22:39 +02:00
Simon L.
ef1e7c28f6 fix it
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-07-11 17:28:25 +02:00
Simon L.
f90971ef9d another attempt
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-07-11 17:24:59 +02:00
Simon L.
efca35b0e9 try to fix it
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-07-11 17:07:14 +02:00
Simon L.
f72ab28a41 fix clamav
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-07-11 15:54:25 +02:00
Simon L
504ae2d617 Merge pull request #4971 from nextcloud/ernolf/imaginary-fix
get rid of "some font thing failed" error messages
2024-07-11 15:23:19 +02:00
Simon L.
b2d373cd7f increase to v9.2.0
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-07-11 15:07:39 +02:00
Simon L
fdc5e87a01 Merge pull request #4960 from nextcloud/enh/4918/fix-clamav
clamav - adjust max filesize conditionally
2024-07-11 15:05:44 +02:00
ernolf
002c9a8fc2 get rid of "some font thing failed" error messages
Signed-off-by: ernolf <raphael.gradenwitz@googlemail.com>
2024-07-11 15:00:33 +02:00
Simon L
d304c791ff Merge pull request #4912 from nextcloud/no-listen
Implement internal mode
2024-07-11 14:58:29 +02:00
Simon L.
789c9abcd2 fix SC
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-07-11 14:30:56 +02:00
Simon L.
c69aa56349 revert changes to reverse-proxy.md
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-07-11 14:27:27 +02:00
Simon L.
3cdb855df3 set apache_ip_binding to internal for caddy community container and remove legacy code
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-07-11 14:26:08 +02:00
Simon L.
66dc0bc7d6 clamav - adjust max filesize conditionally
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-07-11 14:07:32 +02:00
Simon L.
6463df73e6 Revert "keep /root/.bashrc"
This reverts commit ed1de79e9b.
2024-07-10 18:01:54 +02:00
Simon L.
ed1de79e9b keep /root/.bashrc
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-07-10 17:59:56 +02:00
Simon L
01fbe3dbc9 Merge pull request #4964 from nextcloud/enh/noid/fix-allowlist
nextcloud: fix APPS_ALLOWLIST
2024-07-10 17:45:06 +02:00
Simon L.
03cb72116e nextcloud: fix APPS_ALLOWLIST
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-07-10 16:24:35 +02:00
Simon L
3348849792 Merge pull request #4959 from nextcloud/dependabot/docker/Containers/collabora/collabora/code-24.04.5.1.1
build(deps): bump collabora/code from 24.04.4.2.1 to 24.04.5.1.1 in /Containers/collabora
2024-07-09 15:48:02 +02:00
Simon L
5e12c266df Merge pull request #4958 from nextcloud/dependabot/docker/Containers/fulltextsearch/elasticsearch-8.14.2
build(deps): bump elasticsearch from 8.14.1 to 8.14.2 in /Containers/fulltextsearch
2024-07-09 15:47:50 +02:00
Jean-Yves
c8d461a061 Update reverse-proxy.md
add sample for @INTERNAL

Signed-off-by: Jean-Yves <7360784+docjyJ@users.noreply.github.com>
2024-07-09 15:06:58 +02:00
dependabot[bot]
017e1ee23d build(deps): bump collabora/code in /Containers/collabora
Bumps collabora/code from 24.04.4.2.1 to 24.04.5.1.1.

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-09 12:46:14 +00:00
dependabot[bot]
95a1ed0bba build(deps): bump elasticsearch in /Containers/fulltextsearch
Bumps elasticsearch from 8.14.1 to 8.14.2.

---
updated-dependencies:
- dependency-name: elasticsearch
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-09 12:43:59 +00:00
Simon L
3a691aa9a2 Merge pull request #4957 from LinuxSpielKind/patch-1
Update reverse-proxy.md
2024-07-09 14:32:49 +02:00
David
5e320a7b88 Update reverse-proxy.md
Users running AIO on Ubuntu Jammy may face blocked web socket traffic trough Apache, since rewrites with "?" are deemed unsafe. A error like this can be found in the error logs: "[rewrite:error] [pid396674] [client 192.168.xxx.yyy:57444] AH: Unsafe URL with %3f URL rewritten without UnsafeAllow3F"
The rewrite rule UnsafeAllow3F is fixing this issue.
Infos on that flag can be found here: https://httpd.apache.org/docs/current/rewrite/flags.html#flag_unsafe_allow_3f


Signed-off-by: David <142408439+LinuxSpielKind@users.noreply.github.com>
2024-07-09 12:29:54 +02:00
Simon L
bf29c8578a Merge pull request #4939 from kurt-mcrae/patch-1
Correct wording in containers.twig
2024-07-09 12:08:30 +02:00
Simon L
abe97c87c1 Merge pull request #4924 from nextcloud/dependabot/docker/Containers/talk/strukturag/nextcloud-spreed-signaling-1.3.2
build(deps): bump strukturag/nextcloud-spreed-signaling from 1.3.1 to 1.3.2 in /Containers/talk
2024-07-09 12:07:11 +02:00
Simon L
f1dc400e81 Merge pull request #4926 from nextcloud/dependabot/docker/Containers/mastercontainer/docker-27.0.3-cli
build(deps): bump docker from 27.0.2-cli to 27.0.3-cli in /Containers/mastercontainer
2024-07-09 12:06:47 +02:00
dependabot[bot]
f29e66c1b4 build(deps): bump docker in /Containers/mastercontainer
Bumps docker from 27.0.2-cli to 27.0.3-cli.

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-09 10:05:47 +00:00
Simon L
74f84bac78 Merge pull request #4933 from nextcloud/dependabot/docker/Containers/imaginary/golang-1.22.5-alpine3.20
build(deps): bump golang from 1.22.4-alpine3.20 to 1.22.5-alpine3.20 in /Containers/imaginary
2024-07-09 12:05:46 +02:00
Simon L
7548790041 Merge pull request #4934 from nextcloud/dependabot/docker/Containers/apache/httpd-2.4.61-alpine3.20
build(deps): bump httpd from 2.4.59-alpine3.20 to 2.4.61-alpine3.20 in /Containers/apache
2024-07-09 12:05:36 +02:00
Simon L
66bbe0dbb8 Merge pull request #4952 from nextcloud/dependabot/docker/Containers/clamav/clamav/clamav-1.3.1-59
build(deps): bump clamav/clamav from 1.3.1-58 to 1.3.1-59 in /Containers/clamav
2024-07-09 12:04:43 +02:00
Simon L
17f19c5d75 Merge pull request #4953 from nextcloud/dependabot/docker/Containers/nextcloud/php-8.2.21-fpm-alpine3.20
build(deps): bump php from 8.2.20-fpm-alpine3.20 to 8.2.21-fpm-alpine3.20 in /Containers/nextcloud
2024-07-09 12:04:30 +02:00
Simon L
5a67944315 Merge pull request #4954 from nextcloud/dependabot/docker/Containers/mastercontainer/php-8.3.9-fpm-alpine3.20
build(deps): bump php from 8.3.8-fpm-alpine3.20 to 8.3.9-fpm-alpine3.20 in /Containers/mastercontainer
2024-07-09 12:04:16 +02:00
dependabot[bot]
d727f11102 build(deps): bump php in /Containers/mastercontainer
Bumps php from 8.3.8-fpm-alpine3.20 to 8.3.9-fpm-alpine3.20.

---
updated-dependencies:
- dependency-name: php
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-08 13:00:39 +00:00
dependabot[bot]
75e5fa84ce build(deps): bump php in /Containers/nextcloud
Bumps php from 8.2.20-fpm-alpine3.20 to 8.2.21-fpm-alpine3.20.

---
updated-dependencies:
- dependency-name: php
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-08 12:40:56 +00:00
dependabot[bot]
52fd04640d build(deps): bump clamav/clamav in /Containers/clamav
Bumps clamav/clamav from 1.3.1-58 to 1.3.1-59.

---
updated-dependencies:
- dependency-name: clamav/clamav
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-08 12:10:29 +00:00
kurt-mcrae
b8bb08cf3b Correct wording in containers.twig
Signed-off-by: kurt-mcrae <83569406+kurt-mcrae@users.noreply.github.com>
2024-07-05 09:23:49 +10:00
dependabot[bot]
6fb4b3479e build(deps): bump httpd in /Containers/apache
Bumps httpd from 2.4.59-alpine3.20 to 2.4.61-alpine3.20.

---
updated-dependencies:
- dependency-name: httpd
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-04 12:25:34 +00:00
dependabot[bot]
a98e89b5c9 build(deps): bump golang in /Containers/imaginary
Bumps golang from 1.22.4-alpine3.20 to 1.22.5-alpine3.20.

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-04 12:15:03 +00:00
dependabot[bot]
83c24156bc build(deps): bump strukturag/nextcloud-spreed-signaling
Bumps strukturag/nextcloud-spreed-signaling from 1.3.1 to 1.3.2.

---
updated-dependencies:
- dependency-name: strukturag/nextcloud-spreed-signaling
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-02 12:06:49 +00:00
Jean-Yves
b3977ed1c8 Update start.sh
Signed-off-by: Jean-Yves <7360784+docjyJ@users.noreply.github.com>
2024-07-01 20:28:35 +02:00
Simon L
52cb90a802 Merge pull request #4919 from nextcloud/dependabot/docker/Containers/clamav/clamav/clamav-1.3.1-58
build(deps): bump clamav/clamav from 1.3.1-57 to 1.3.1-58 in /Containers/clamav
2024-07-01 15:04:18 +02:00
dependabot[bot]
9dfdfbf27b build(deps): bump clamav/clamav in /Containers/clamav
Bumps clamav/clamav from 1.3.1-57 to 1.3.1-58.

---
updated-dependencies:
- dependency-name: clamav/clamav
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-01 12:37:18 +00:00
Simon L
64a30cdc0e Merge pull request #4917 from nextcloud/aio-helm-update
Helm Chart updates
2024-07-01 11:23:47 +02:00
szaimen
f19579a4bc Helm Chart updates
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-07-01 09:21:42 +00:00
Simon L
3c8cb2bdb2 Merge pull request #4905 from nextcloud/dependabot/docker/Containers/talk/nats-2.10.17-scratch
build(deps): bump nats from 2.10.16-scratch to 2.10.17-scratch in /Containers/talk
2024-07-01 09:50:38 +02:00
Simon L
9d4055c86d Merge pull request #4903 from nextcloud/dependabot/docker/Containers/mastercontainer/docker-27.0.2-cli
build(deps): bump docker from 26.1.4-cli to 27.0.2-cli in /Containers/mastercontainer
2024-07-01 09:49:41 +02:00
Jean-Yves
571edd4bb4 Implement internal mode
Signed-off-by: Jean-Yves <7360784+docjyJ@users.noreply.github.com>
2024-06-29 19:23:26 +02:00
dependabot[bot]
05a7b1ebf5 build(deps): bump nats in /Containers/talk
Bumps nats from 2.10.16-scratch to 2.10.17-scratch.

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-28 12:39:25 +00:00
Simon L
b37be48348 Merge pull request #4715 from yannik-b/main
Add documentation not to use @ or : in passwords
2024-06-27 16:52:16 +02:00
dependabot[bot]
8a6b6f4295 build(deps): bump docker in /Containers/mastercontainer
Bumps docker from 26.1.4-cli to 27.0.2-cli.

---
updated-dependencies:
- dependency-name: docker
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-27 12:40:33 +00:00
Simon L.
225442c13c improve formatting
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-06-27 12:22:12 +02:00
Simon L
64bdfb535c Merge pull request #4886 from nextcloud/enh/noid/29.0.3
nextcloud: increase to 29.0.3
2024-06-25 12:42:41 +02:00
Simon L.
97c3afb4bb nextcloud: increase to 29.0.3
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-06-25 12:36:19 +02:00
Simon L
5656f50bd4 Merge pull request #4884 from nextcloud/enh/noid/use-str_contains
domain-validator: use `str_contains` instead of `strpos`
2024-06-24 14:53:04 +02:00
Simon L
d8fe250b04 Merge pull request #4885 from nextcloud/dependabot/docker/Containers/clamav/clamav/clamav-1.3.1-57
build(deps): bump clamav/clamav from 1.3.1-54 to 1.3.1-57 in /Containers/clamav
2024-06-24 14:52:53 +02:00
dependabot[bot]
65a95439c8 build(deps): bump clamav/clamav in /Containers/clamav
Bumps clamav/clamav from 1.3.1-54 to 1.3.1-57.

---
updated-dependencies:
- dependency-name: clamav/clamav
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-24 12:50:54 +00:00
Simon L.
40306c4ed3 domain-validator: use str_contains instead of strpos
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-06-24 14:32:14 +02:00
Simon L.
5dfe0b755a fix another typo
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-06-24 13:50:16 +02:00
Simon L.
b2fb94cd42 fix typo
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-06-24 13:03:25 +02:00
Simon L
9aefde320b Merge pull request #4883 from Surfict/caddy_external_dns_challenges
readme: Add section `Securing the AIO interface from unauthorized ACME challenges`
2024-06-24 13:01:48 +02:00
Surfict
e4b40ae56b Update readme.md
Co-authored-by: Simon L. <szaimen@e.mail.de>
Signed-off-by: Surfict <allexandre@itis.swiss>
2024-06-24 12:55:30 +02:00
surfict
7dde233bff Remove blank line 2024-06-24 12:19:19 +02:00
surfict
6718c18bd2 Add caddy unauthorized ACME challenges problem to README 2024-06-24 11:54:01 +02:00
Simon L
6b62d0a982 Merge pull request #4878 from nextcloud/aio-yaml-update
Yaml updates
2024-06-23 14:30:59 +02:00
szaimen
fba98513a3 Yaml updates
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-23 12:02:37 +00:00
Simon L
497ae0982f Merge pull request #4876 from nextcloud/enh/4874/add-sys-admin-cap
collabora: add SYS_ADMIN cap
2024-06-22 17:59:47 +02:00
Simon L.
21a344624a collabora: add SYS_ADMIN cap
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-06-22 17:57:25 +02:00
Simon L.
e9a31e1bc0 nextcloud: update s3.config.php
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-06-21 15:00:06 +02:00
Simon L
c63adeaa22 Merge pull request #4865 from nextcloud/dependabot/docker/Containers/collabora/collabora/code-24.04.4.2.1
build(deps): bump collabora/code from 24.04.4.1.1 to 24.04.4.2.1 in /Containers/collabora
2024-06-21 14:39:56 +02:00
dependabot[bot]
a5bb6883f7 build(deps): bump collabora/code in /Containers/collabora
Bumps collabora/code from 24.04.4.1.1 to 24.04.4.2.1.

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-21 12:38:53 +00:00
Simon L
8dfc5cb119 Merge pull request #4864 from nextcloud/dependabot/docker/Containers/imaginary/golang-1.22.4-alpine3.20
build(deps): bump golang from 1.22.3-alpine3.20 to 1.22.4-alpine3.20 in /Containers/imaginary
2024-06-21 14:23:02 +02:00
dependabot[bot]
de66654070 build(deps): bump golang in /Containers/imaginary
Bumps golang from 1.22.3-alpine3.20 to 1.22.4-alpine3.20.

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-21 12:20:17 +00:00
Simon L
bb57e70231 Merge pull request #4863 from nextcloud/talk-container-update
talk container update
2024-06-21 14:19:19 +02:00
Simon L
89500769c2 Merge pull request #4862 from nextcloud/imaginary-container-update
Imaginary update
2024-06-21 14:19:02 +02:00
szaimen
4a7dd7f083 talk-update automated change
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-21 12:04:51 +00:00
szaimen
2e07a1d2e3 imaginary-update automated change
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-21 12:04:51 +00:00
Simon L.
caae672466 apache,mastercontainer,nextcloud: remove xfs-user adjustments
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-06-21 13:31:26 +02:00
Simon L.
806b0ace54 dockerfile: use new syntax
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-06-21 13:27:36 +02:00
Simon L.
267b98bd84 fix casing of AS
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-06-21 13:16:55 +02:00
Simon L
a70529173b Merge pull request #4860 from nextcloud/enh/noid/update-haproxy
docker-socket-proxy: update haproxy to v3
2024-06-21 12:32:33 +02:00
Simon L.
8a3669dbb5 docker-socket-proxy: update haproxy to v3
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-06-21 12:32:11 +02:00
Simon L
0158279eca Merge pull request #4857 from nextcloud/alpine-3.20.1
update alpine to v3.20.1
2024-06-21 12:31:31 +02:00
Simon L
8e7a5c8b45 Merge pull request #4859 from nextcloud/enh/4258/update-alpine
imaginary: update alpine to 3.20
2024-06-21 12:25:41 +02:00
Simon L
a5239951fb Merge pull request #4858 from nextcloud/enh/noid/add-redis-db-index
nextcloud: properly add REDIS_DB_INDEX
2024-06-21 12:10:19 +02:00
Simon L
10119e76a9 Merge pull request #4856 from nextcloud/szaimen-patch-1
database-restore: only get the first match
2024-06-21 12:08:26 +02:00
Simon L.
81e1f8e2d6 imaginary: update alpine to 3.20
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-06-21 11:54:48 +02:00
Simon L.
ee34c83ad2 adjust readme
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-06-21 11:21:34 +02:00
Simon L.
17e002e929 nextcloud: properly add REDIS_DB_INDEX
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-06-21 10:52:47 +02:00
Simon L
6bae8cc98a Merge pull request #4854 from nextcloud/aio-dependency-update
PHP dependency updates
2024-06-21 05:24:12 +02:00
Simon L
431083d1ab Merge pull request #4855 from nextcloud/dependabot/github_actions/softprops/turnstyle-2
build(deps): bump softprops/turnstyle from 1 to 2
2024-06-21 04:22:32 +02:00
Zoey
85ede06e7b update alpine to v3.20.1 2024-06-20 23:58:19 +02:00
Simon L
a622fcc894 database-restore: only get the first match
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-06-20 14:18:09 +02:00
dependabot[bot]
d907693a8a build(deps): bump softprops/turnstyle from 1 to 2
Bumps [softprops/turnstyle](https://github.com/softprops/turnstyle) from 1 to 2.
- [Release notes](https://github.com/softprops/turnstyle/releases)
- [Changelog](https://github.com/softprops/turnstyle/blob/master/CHANGELOG.md)
- [Commits](https://github.com/softprops/turnstyle/compare/v1...v2)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-20 12:16:09 +00:00
szaimen
b753fdc669 php dependency updates
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-20 12:02:37 +00:00
Simon L
1b0cace7a8 Merge pull request #4851 from nextcloud/automated/noid/psalm-baseline-update
[Automated] Update psalm-baseline.xml
2024-06-20 09:11:07 +02:00
nextcloud-command
c913434346 Update psalm baseline
Signed-off-by: GitHub <noreply@github.com>
2024-06-20 04:09:41 +00:00
Simon L.
7d31e860a3 update OO
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-06-19 14:50:25 +02:00
Simon L.
2c59fb0db9 fix the .bashrc
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-06-19 12:13:51 +02:00
Simon L
d19e2aa52d Merge pull request #4840 from nextcloud/enh/4793/print-warning
nextcloud: print warning if login as root into container
2024-06-19 11:58:14 +02:00
Simon L
12ec7dca01 local-ai: arm64 support is back
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-06-18 15:17:18 +02:00
Simon L.
9f18597cc8 nextcloud: print warning if logging into root container
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-06-18 10:41:16 +02:00
Simon L.
892f2d875a increase to 9.1.0
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-06-17 14:00:10 +02:00
Jean-Yves
dbbbc76098 community-containers: Add NocoDB (#4835)
Co-authored-by: Simon L. <szaimen@e.mail.de>
Signed-off-by: Jean-Yves <7360784+docjyJ@users.noreply.github.com>
2024-06-17 13:55:43 +02:00
Simon L
d52ffa75d9 Merge pull request #4737 from Doozy134/manual-upgrade-docs
Docs: Update manual-upgrade.md with alternative method
2024-06-17 11:39:13 +02:00
Simon L
1fcb8522ff Merge pull request #4817 from nextcloud/enh/4812/show-timestamps
aio-interface: show timestamps next to log entries
2024-06-17 11:34:46 +02:00
Simon L
7ec1588d61 Merge pull request #4813 from ernolf/main
nextcloud: add igbinary as serializer for increased performance
2024-06-17 11:34:32 +02:00
Simon L
4b97ffdcb7 Merge pull request #4811 from nextcloud/docjyJ-patch-1
Stalwart: Change maintainer
2024-06-17 11:33:39 +02:00
Simon L
dbf0d3e852 Merge pull request #4829 from nextcloud/enh/noid/trust-docker-network
trusted-proxies: trust docker network
2024-06-17 11:33:24 +02:00
Simon L
572f9fa846 Merge pull request #4830 from nextcloud/dependabot/composer/php/slim/slim-4.14.0
Bump slim/slim from 4.13.0 to 4.14.0 in /php
2024-06-17 11:33:05 +02:00
Simon L
f6fbcec000 Merge pull request #4824 from nextcloud/dependabot/docker/Containers/fulltextsearch/elasticsearch-8.14.1
Bump elasticsearch from 8.14.0 to 8.14.1 in /Containers/fulltextsearch
2024-06-17 11:32:47 +02:00
Simon L
728075dfba Merge pull request #4836 from nextcloud/aio-helm-update
Helm Chart updates
2024-06-17 11:02:35 +02:00
szaimen
c5915ab563 Helm Chart updates
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-17 09:00:50 +00:00
dependabot[bot]
d2e09f00c7 Bump slim/slim from 4.13.0 to 4.14.0 in /php
Bumps [slim/slim](https://github.com/slimphp/Slim) from 4.13.0 to 4.14.0.
- [Release notes](https://github.com/slimphp/Slim/releases)
- [Changelog](https://github.com/slimphp/Slim/blob/4.x/CHANGELOG.md)
- [Commits](https://github.com/slimphp/Slim/compare/4.13.0...4.14.0)

---
updated-dependencies:
- dependency-name: slim/slim
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-14 13:00:37 +00:00
Simon L.
cfbb3484ae trusted-proxies: trust docker network
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-06-14 10:04:01 +02:00
dependabot[bot]
92fae7b81b Bump elasticsearch from 8.14.0 to 8.14.1 in /Containers/fulltextsearch
Bumps elasticsearch from 8.14.0 to 8.14.1.

---
updated-dependencies:
- dependency-name: elasticsearch
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-13 12:51:32 +00:00
Simon L.
4b3c953758 adjust update script
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-06-13 10:29:20 +02:00
Jean-Yves
7123a997a9 Move to DockerHub
Signed-off-by: Jean-Yves <7360784+docjyJ@users.noreply.github.com>
2024-06-13 09:46:10 +02:00
Jean-Yves
16489ce23c Change maintainer
Signed-off-by: Jean-Yves <7360784+docjyJ@users.noreply.github.com>
2024-06-12 18:46:43 +02:00
Jean-Yves
8b9777e0d8 Update stalwart.json
Signed-off-by: Jean-Yves <7360784+docjyJ@users.noreply.github.com>
2024-06-12 18:46:43 +02:00
ernolf
d1ed80af33 Add igbinary as serializer for increased performance
- Install igbinary via PECL
- Enable igbinary support for memcached and redis
- Configure PHP to use igbinary for APCu and session serialization
- Update Dockerfile to include igbinary and its configuration

Signed-off-by: ernolf <raphael.gradenwitz@googlemail.com>
2024-06-12 15:16:36 +02:00
Simon L.
2a29d3f8b8 aio-interface: show timestamps next to log entries
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-06-12 12:26:33 +02:00
Simon L.
cbe0a89676 increase to 9.0.1
Signed-off-by: Simon L <szaimen@e.mail.de>
2024-06-11 10:50:29 +02:00
Simon L
3d41d79682 Merge pull request #4807 from nextcloud/enh/4806/improve-appstorage
nextcloud: improve getting values for APPSTORAGE
2024-06-11 10:40:55 +02:00
Simon L
7c97d66579 address review
Signed-off-by: Simon L <szaimen@e.mail.de>

Co-authored-by: Josh <josh.t.richards@gmail.com>
Signed-off-by: Simon L. <szaimen@e.mail.de>
2024-06-11 10:38:38 +02:00
Simon L
978ac21314 Merge pull request #4809 from nextcloud/dependabot/docker/Containers/talk-recording/python-3.12.4-alpine3.19
Bump python from 3.12.3-alpine3.19 to 3.12.4-alpine3.19 in /Containers/talk-recording
2024-06-10 14:50:30 +02:00
dependabot[bot]
7f9e85254e Bump python in /Containers/talk-recording
Bumps python from 3.12.3-alpine3.19 to 3.12.4-alpine3.19.

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-10 12:44:30 +00:00
Simon L
a127687e2b Merge pull request #4808 from nextcloud/aio-yaml-update
Yaml updates
2024-06-10 14:04:43 +02:00
szaimen
084d9a86fe Yaml updates
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-10 12:03:32 +00:00
Simon L
80cf17b5a2 Merge pull request #4789 from nextcloud/enh/noid/fix-getting-ip-address
fix getting ip-address of talk and apache
2024-06-10 10:42:50 +02:00
Simon L.
335026ce76 fix SC
Signed-off-by: Simon L <szaimen@e.mail.de>
2024-06-10 10:38:59 +02:00
Simon L
573fe2c138 Merge pull request #4802 from nextcloud/aio-dependency-update
PHP dependency updates
2024-06-10 10:31:56 +02:00
Simon L
ef6e7d274d Merge pull request #4799 from ArmanTheParman/patch-1
readme: improve grammar
2024-06-10 10:30:44 +02:00
Simon L
ece7d5c90d Merge pull request #4788 from nextcloud/dependabot/docker/Containers/nextcloud/php-8.2.20-fpm-alpine3.19
Bump php from 8.2.19-fpm-alpine3.19 to 8.2.20-fpm-alpine3.19 in /Containers/nextcloud
2024-06-10 10:29:39 +02:00
Simon L
70daecb8a9 Merge pull request #4787 from nextcloud/dependabot/docker/Containers/mastercontainer/php-8.3.8-fpm-alpine3.19
Bump php from 8.3.7-fpm-alpine3.19 to 8.3.8-fpm-alpine3.19 in /Containers/mastercontainer
2024-06-10 10:29:18 +02:00
Simon L
f5897daaa9 Merge pull request #4786 from nextcloud/dependabot/docker/Containers/collabora/collabora/code-24.04.4.1.1
Bump collabora/code from 24.04.3.1.1 to 24.04.4.1.1 in /Containers/collabora
2024-06-10 10:29:06 +02:00
Simon L.
7bdd51554a nextcloud: improve getting values for APPSTORAGE
Signed-off-by: Simon L <szaimen@e.mail.de>
2024-06-10 10:24:30 +02:00
szaimen
20d8976f1a php dependency updates
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-09 12:02:38 +00:00
Arman The Parman
39e0e4e2b2 Update readme.md
Grammar improvements x2

Signed-off-by: Arman The Parman <77603167+ArmanTheParman@users.noreply.github.com>
2024-06-09 12:47:09 +10:00
Simon L.
5b49ec6da2 fix getting ip-address of talk and apache
Signed-off-by: Simon L <szaimen@e.mail.de>
2024-06-07 15:17:27 +02:00
dependabot[bot]
8eca2e3965 Bump php in /Containers/nextcloud
Bumps php from 8.2.19-fpm-alpine3.19 to 8.2.20-fpm-alpine3.19.

---
updated-dependencies:
- dependency-name: php
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-07 12:59:15 +00:00
dependabot[bot]
0fcaab829a Bump php in /Containers/mastercontainer
Bumps php from 8.3.7-fpm-alpine3.19 to 8.3.8-fpm-alpine3.19.

---
updated-dependencies:
- dependency-name: php
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-07 12:51:19 +00:00
dependabot[bot]
8c8f5da875 Bump collabora/code in /Containers/collabora
Bumps collabora/code from 24.04.3.1.1 to 24.04.4.1.1.

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-07 12:13:00 +00:00
Simon L.
87cc69ccd8 facerecognition: remove warning about RAM again
Signed-off-by: Simon L <szaimen@e.mail.de>
2024-06-07 11:14:58 +02:00
Simon L.
b67f3722fc caddy: adjust docs
Signed-off-by: Simon L <szaimen@e.mail.de>
2024-06-07 11:12:49 +02:00
Kasim
e05b0f3061 Fix spelling
Signed-off-by: Kasim <kasim@rafique.co.uk>
2024-05-31 16:00:32 +01:00
Kasim
8602eda17e Update manual-upgrade.md
rephrase parts of original read me
add alternative method

Signed-off-by: Kasim <kasim@rafique.co.uk>
2024-05-30 21:45:41 +01:00
Yannik Buerkle
0d572bce06 add documentation not to use @ or : in passwords 2024-05-25 22:30:26 +02:00
77 changed files with 487 additions and 276 deletions

View File

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

View File

@@ -19,7 +19,7 @@ jobs:
| cut -f1 \
| tail -1
)"
sed -i "s|^ENV IMAGINARY_HASH.*$|ENV IMAGINARY_HASH $imaginary_version|" ./Containers/imaginary/Dockerfile
sed -i "s|^ENV IMAGINARY_HASH.*$|ENV IMAGINARY_HASH=$imaginary_version|" ./Containers/imaginary/Dockerfile
- name: Create Pull Request
uses: peter-evans/create-pull-request@v6

View File

@@ -36,7 +36,7 @@ jobs:
| sort -V \
| tail -1
)"
sed -i "s|pecl install memcached.*\;|pecl install memcached-$memcached_version\;|" ./Containers/nextcloud/Dockerfile
sed -i "s|pecl install memcached.* |pecl install memcached-$memcached_version |" ./Containers/nextcloud/Dockerfile
# Redis
redis_version="$(
@@ -47,7 +47,7 @@ jobs:
| sort -V \
| tail -1
)"
sed -i "s|pecl install redis.*\;|pecl install redis-$redis_version\;|" ./Containers/nextcloud/Dockerfile
sed -i "s|pecl install redis.* |pecl install redis-$redis_version |" ./Containers/nextcloud/Dockerfile
# Imagick
imagick_version="$(
@@ -60,11 +60,22 @@ jobs:
)"
sed -i "s|pecl install imagick.*\;|pecl install imagick-$imagick_version\;|" ./Containers/nextcloud/Dockerfile
# Igbinary
igbinary_version="$(
git ls-remote --tags https://github.com/igbinary/igbinary.git \
| cut -d/ -f3 \
| grep -viE '[a-z]' \
| tr -d '^{}' \
| sort -V \
| tail -1
)"
sed -i "s|pecl install igbinary.*\;|pecl install igbinary-$igbinary_version\;|" ./Containers/nextcloud/Dockerfile
# Nextcloud
NC_MAJOR="$(grep "ENV NEXTCLOUD_VERSION" ./Containers/nextcloud/Dockerfile | grep -oP '[23][0-9]')"
NCVERSION=$(curl -s -m 900 https://download.nextcloud.com/server/releases/ | sed --silent 's/.*href="nextcloud-\([^"]\+\).zip.asc".*/\1/p' | grep "$NC_MAJOR" | sort --version-sort | tail -1)
if [ -n "$NCVERSION" ]; then
sed -i "s|^ENV NEXTCLOUD_VERSION.*|ENV NEXTCLOUD_VERSION $NCVERSION|" ./Containers/nextcloud/Dockerfile
sed -i "s|^ENV NEXTCLOUD_VERSION.*|ENV NEXTCLOUD_VERSION=$NCVERSION|" ./Containers/nextcloud/Dockerfile
fi
- name: Create Pull Request

View File

@@ -21,7 +21,7 @@ jobs:
| grep -E "^v[0-9\.]+$" \
| tail -1
)"
sed -i "s|^ENV RECORDING_VERSION.*$|ENV RECORDING_VERSION $recording_version|" ./Containers/talk-recording/Dockerfile
sed -i "s|^ENV RECORDING_VERSION.*$|ENV RECORDING_VERSION=$recording_version|" ./Containers/talk-recording/Dockerfile
curl -L "https://raw.githubusercontent.com/nextcloud/nextcloud-talk-recording/$recording_version/server.conf.in" -o Containers/talk-recording/recording.conf
# Signaling

View File

@@ -14,8 +14,7 @@ jobs:
uses: actions/checkout@v4
- name: update helm chart
run: |
DOCKER_TAG="$(curl -L -s 'https://registry.hub.docker.com/v2/repositories/nextcloud/all-in-one/tags?page_size=1024' | jq '."results"[]["name"]' | sed 's|"||g' | grep '^20' | sort -r | head -1)"
DOCKER_TAG="${DOCKER_TAG%%-latest*}"
DOCKER_TAG="$(curl -L -s 'https://registry.hub.docker.com/v2/repositories/nextcloud/all-in-one/tags?page_size=1024' | jq '."results"[]["name"]' | sed 's|"||g' | grep '^20[0-9_]\+' | grep -v latest | sort -r | head -1)"
export DOCKER_TAG
if [ -n "$DOCKER_TAG" ] && ! grep -q "$DOCKER_TAG" ./nextcloud-aio-helm-chart/templates/nextcloud-aio-nextcloud-deployment.yaml; then
sudo bash nextcloud-aio-helm-chart/update-helm.sh "$DOCKER_TAG"

View File

@@ -1,7 +1,8 @@
# syntax=docker/dockerfile:latest
FROM caddy:2.8.4-alpine as caddy
FROM caddy:2.8.4-alpine AS caddy
FROM httpd:2.4.59-alpine3.19
# From https://github.com/docker-library/httpd/blob/master/2.4/alpine/Dockerfile
FROM httpd:2.4.61-alpine3.20
COPY --from=caddy /usr/bin/caddy /usr/bin/caddy
@@ -16,8 +17,6 @@ VOLUME /mnt/data
RUN set -ex; \
apk upgrade --no-cache -a; \
apk add --no-cache shadow; \
groupmod -g 333 xfs; \
usermod -u 333 -g 333 xfs; \
groupmod -g 33 www-data; \
usermod -u 33 -g 33 www-data; \
apk del --no-cache shadow; \

View File

@@ -18,10 +18,11 @@ while ! nc -z "$NEXTCLOUD_HOST" 9000; do
done
# Get ipv4-address of Apache
IPv4_ADDRESS="$(dig nextcloud-aio-apache A +short +search | head -1)"
# shellcheck disable=SC2153
IPv4_ADDRESS="$(dig "$APACHE_HOST" A +short +search | head -1)"
# Bring it in CIDR notation
# shellcheck disable=SC2001
IPv4_ADDRESS="$(echo "$IPv4_ADDRESS" | sed 's|[0-9]\+$|1/32|')"
IPv4_ADDRESS="$(echo "$IPv4_ADDRESS" | sed 's|[0-9]\+$|0/16|')"
if [ -z "$APACHE_PORT" ]; then
export APACHE_PORT="443"

View File

@@ -1,5 +1,5 @@
# syntax=docker/dockerfile:latest
FROM alpine:3.19.1
FROM alpine:3.20.1
RUN set -ex; \
\

View File

@@ -1,20 +1,26 @@
# syntax=docker/dockerfile:latest
# Probably from this file: https://github.com/Cisco-Talos/clamav-docker/blob/main/clamav/1.1/alpine/Dockerfile
FROM clamav/clamav:1.3.1-54
# Probably from this file: https://github.com/Cisco-Talos/clamav-docker/blob/main/clamav/1.3/alpine/Dockerfile
FROM clamav/clamav:1.3.1-60
COPY clamav.conf /tmp/clamav.conf
COPY clamav.conf /clamav.conf
COPY --chmod=775 start.script /start.script
RUN set -ex; \
apk upgrade --no-cache -a; \
apk add --no-cache tzdata; \
cat /tmp/clamav.conf >> /etc/clamav/clamd.conf; \
rm /tmp/clamav.conf; \
apk add --no-cache tzdata bash; \
mkdir -p /var/run/clamav /run/lock; \
chown -R clamav:clamav /var/run/clamav /run/clamav /var/log/clamav /var/lock /run/lock; \
chmod 777 -R /var/run/clamav /run/clamav /var/log/clamav /var/lock /run/lock /tmp
chmod 777 -R /var/run/clamav /run/clamav /var/log/clamav /var/lock /run/lock /tmp; \
sed -i "/^set -eu/r /start.script" /init-unprivileged; \
rm /start.script; \
grep -q 'clamd --foreground &' /init-unprivileged; \
sed -i "s|clamd --foreground \&|clamd --foreground --config-file /tmp/clamd.conf \&|" /init-unprivileged; \
cat /init-unprivileged
VOLUME /var/lib/clamav
USER clamav
LABEL com.centurylinklabs.watchtower.enable="false"
ENTRYPOINT ["/init-unprivileged"]

View File

@@ -1,4 +1,5 @@
# AIO settings
MaxDirectoryRecursion 30
MaxFileSize 100M
PCREMaxFileSize 100M
StreamMaxLength 100M
MaxFileSize 10G
PCREMaxFileSize 10G
StreamMaxLength 10G

View File

@@ -0,0 +1,4 @@
# Adjust settings
cat /etc/clamav/clamd.conf > /tmp/clamd.conf
CLAMAV_FILE="$(sed "s|10G|$MAX_SIZE|" /clamav.conf)"
echo "$CLAMAV_FILE" >> /tmp/clamd.conf

View File

@@ -1,9 +1,9 @@
# syntax=docker/dockerfile:latest
# From a file located probably somewhere here: https://github.com/CollaboraOnline/online/tree/master/docker
FROM collabora/code:24.04.3.1.1
FROM collabora/code:24.04.5.2.1
USER root
ARG DEBIAN_FRONTEND noninteractive
ARG DEBIAN_FRONTEND=noninteractive
# hadolint ignore=DL3008
RUN set -ex; \

View File

@@ -1,9 +1,9 @@
# syntax=docker/dockerfile:latest
FROM haproxy:2.9.7-alpine3.19
FROM haproxy:3.0.3-alpine
# hadolint ignore=DL3002
USER root
ENV NEXTCLOUD_HOST nextcloud-aio-nextcloud
ENV NEXTCLOUD_HOST=nextcloud-aio-nextcloud
RUN set -ex; \
apk upgrade --no-cache -a; \
apk add --no-cache \

View File

@@ -1,5 +1,5 @@
# syntax=docker/dockerfile:latest
FROM alpine:3.19.1
FROM alpine:3.20.1
RUN set -ex; \
apk upgrade --no-cache -a; \
apk add --no-cache bash lighttpd netcat-openbsd; \

View File

@@ -1,10 +1,10 @@
# syntax=docker/dockerfile:latest
# Probably from here https://github.com/elastic/elasticsearch/blob/main/distribution/docker/src/docker/Dockerfile
FROM elasticsearch:8.14.0
FROM elasticsearch:8.14.3
USER root
ARG DEBIAN_FRONTEND noninteractive
ARG DEBIAN_FRONTEND=noninteractive
# hadolint ignore=DL3008
RUN set -ex; \

View File

@@ -1,7 +1,7 @@
# syntax=docker/dockerfile:latest
FROM golang:1.22.3-alpine3.18 as go
FROM golang:1.22.5-alpine3.20 AS go
ENV IMAGINARY_HASH 6cd9edd1d3fb151eb773c14552886e4fc8e50138
ENV IMAGINARY_HASH=6cd9edd1d3fb151eb773c14552886e4fc8e50138
RUN set -ex; \
apk add --no-cache \
@@ -13,7 +13,7 @@ RUN set -ex; \
build-base; \
go install github.com/h2non/imaginary@"$IMAGINARY_HASH";
FROM alpine:3.18.6
FROM alpine:3.20.1
RUN set -ex; \
apk upgrade --no-cache -a; \
apk add --no-cache \
@@ -25,12 +25,13 @@ RUN set -ex; \
vips-heif \
vips-jxl \
vips-poppler \
ttf-dejavu \
bash
COPY --from=go /go/bin/imaginary /usr/local/bin/imaginary
COPY --chmod=775 start.sh /start.sh
ENV PORT 9000
ENV PORT=9000
USER nobody

View File

@@ -1,12 +1,12 @@
# syntax=docker/dockerfile:latest
# Docker CLI is a requirement
FROM docker:26.1.4-cli as docker
FROM docker:27.0.3-cli AS docker
# Caddy is a requirement
FROM caddy:2.8.4-alpine as caddy
FROM caddy:2.8.4-alpine AS caddy
# From https://github.com/docker-library/php/blob/master/8.3/alpine3.19/fpm/Dockerfile
FROM php:8.3.7-fpm-alpine3.19
# From https://github.com/docker-library/php/blob/master/8.3/alpine3.20/fpm/Dockerfile
FROM php:8.3.9-fpm-alpine3.20
EXPOSE 80
EXPOSE 8080
@@ -21,8 +21,6 @@ WORKDIR /var/www/docker-aio
RUN set -ex; \
apk upgrade --no-cache -a; \
apk add --no-cache shadow; \
groupmod -g 333 xfs; \
usermod -u 333 -g 333 xfs; \
groupmod -g 33 www-data; \
usermod -u 33 -g 33 www-data; \
\

View File

@@ -180,7 +180,7 @@ It is set to '$APACHE_PORT'."
fi
fi
if [ -n "$APACHE_IP_BINDING" ]; then
if ! echo "$APACHE_IP_BINDING" | grep -q '^[0-9]\+\.[0-9]\+\.[0-9]\+\.[0-9]\+$\|^[0-9a-f:]\+$'; then
if ! echo "$APACHE_IP_BINDING" | grep -q '^[0-9]\+\.[0-9]\+\.[0-9]\+\.[0-9]\+$\|^[0-9a-f:]\+$\|^@INTERNAL$'; then
print_red "You provided an ip-address for the apache container's ip-binding but it was not a valid ip-address.
It is set to '$APACHE_IP_BINDING'."
exit 1

View File

@@ -1,21 +1,22 @@
# syntax=docker/dockerfile:latest
FROM php:8.2.19-fpm-alpine3.19
FROM php:8.2.21-fpm-alpine3.20
ENV PHP_MEMORY_LIMIT 512M
ENV PHP_UPLOAD_LIMIT 10G
ENV PHP_MAX_TIME 3600
ENV SOURCE_LOCATION /usr/src/nextcloud
ENV PHP_MEMORY_LIMIT=512M
ENV PHP_UPLOAD_LIMIT=10G
ENV PHP_MAX_TIME=3600
ENV SOURCE_LOCATION=/usr/src/nextcloud
# AIO settings start # Do not remove or change this line!
ENV NEXTCLOUD_VERSION 29.0.2
ENV AIO_TOKEN 123456
ENV AIO_URL localhost
ENV NEXTCLOUD_VERSION=29.0.4
ENV AIO_TOKEN=123456
ENV AIO_URL=localhost
# AIO settings end # Do not remove or change this line!
COPY --chmod=775 *.sh /
COPY --chmod=774 upgrade.exclude /upgrade.exclude
COPY config/*.php /
COPY supervisord.conf /supervisord.conf
COPY root.motd /root.motd
VOLUME /mnt/ncdata
VOLUME /var/www/html
@@ -26,8 +27,6 @@ RUN set -ex; \
apk upgrade --no-cache -a; \
apk add --no-cache shadow; \
deluser www-data; \
groupmod -g 333 xfs; \
usermod -u 333 -g 333 xfs; \
addgroup -g 33 -S www-data; \
adduser -u 33 -D -S -G www-data www-data; \
\
@@ -78,12 +77,16 @@ RUN set -ex; \
; \
\
# pecl will claim success even if one install fails, so we need to perform each install separately
pecl install igbinary-3.2.15; \
pecl install APCu-5.1.23; \
pecl install memcached-3.2.0; \
pecl install redis-6.0.2; \
pecl install memcached-3.2.0 \
--configureoptions 'enable-memcached-igbinary="yes"'; \
pecl install redis-6.0.2 \
--configureoptions 'enable-redis-igbinary="yes" enable-redis-zstd="yes" enable-redis-lz4="yes"'; \
pecl install imagick-3.7.0; \
\
docker-php-ext-enable \
igbinary \
apcu \
memcached \
redis \
@@ -99,6 +102,11 @@ RUN set -ex; \
apk add --no-cache --virtual .nextcloud-phpext-rundeps $runDeps; \
apk del .build-deps; \
\
{ \
echo 'apc.serializer=igbinary'; \
echo 'session.serialize_handler=igbinary'; \
} >> /usr/local/etc/php/conf.d/docker-php-ext-igbinary.ini; \
\
# set recommended PHP.ini settings
# see https://docs.nextcloud.com/server/stable/admin_manual/configuration_server/server_tuning.html#enable-php-opcache
{ \
@@ -236,6 +244,7 @@ RUN set -ex; \
git clone https://github.com/nextcloud-releases/all-in-one.git --depth 1 .; \
mkdir -p /usr/src/nextcloud/apps/nextcloud-aio; \
cp -r ./app/* /usr/src/nextcloud/apps/nextcloud-aio/; \
echo "[ -n \"\$TERM\" ] && cat /root.motd" >> /root/.bashrc; \
# AIO cloning end # Do not remove or change this line!
\
chown www-data:root -R /usr/src && \

View File

@@ -12,5 +12,7 @@ $CONFIG = array (
'writable' => true,
),
),
'appsallowlist' => getenv('APPS_ALLOWLIST') ? explode(" ", getenv('APPS_ALLOWLIST')) : false,
);
if (getenv('APPS_ALLOWLIST') !== false) {
$CONFIG['appsallowlist'] = explode(" ", getenv('APPS_ALLOWLIST'));
}

View File

@@ -6,7 +6,6 @@ if (getenv('REDIS_HOST')) {
'redis' => array(
'host' => getenv('REDIS_HOST'),
'password' => (string) getenv('REDIS_HOST_PASSWORD'),
// 'dbindex' => (int) getenv('REDIS_DB_INDEX'),
),
);
@@ -15,4 +14,8 @@ if (getenv('REDIS_HOST')) {
} elseif (getenv('REDIS_HOST')[0] != '/') {
$CONFIG['redis']['port'] = 6379;
}
if (getenv('REDIS_DB_INDEX') !== false) {
$CONFIG['redis']['dbindex'] = (int) getenv('REDIS_DB_INDEX');
}
}

View File

@@ -11,9 +11,11 @@ if (getenv('OBJECTSTORE_S3_BUCKET')) {
'bucket' => getenv('OBJECTSTORE_S3_BUCKET'),
'key' => getenv('OBJECTSTORE_S3_KEY') ?: '',
'secret' => getenv('OBJECTSTORE_S3_SECRET') ?: '',
'sse_c_key' => getenv('OBJECTSTORE_S3_SSE_C_KEY') ?: '',
'region' => getenv('OBJECTSTORE_S3_REGION') ?: '',
'hostname' => getenv('OBJECTSTORE_S3_HOST') ?: '',
'port' => getenv('OBJECTSTORE_S3_PORT') ?: '',
'storageClass' => getenv('OBJECTSTORE_S3_STORAGE_CLASS') ?: '',
'objectPrefix' => getenv("OBJECTSTORE_S3_OBJECT_PREFIX") ? getenv("OBJECTSTORE_S3_OBJECT_PREFIX") : "urn:oid:",
'autocreate' => (strtolower($autocreate) === 'false' || $autocreate == false) ? false : true,
'use_ssl' => (strtolower($use_ssl) === 'false' || $use_ssl == false) ? false : true,

View File

@@ -162,8 +162,12 @@ if ! [ -f "$NEXTCLOUD_DATA_DIR/skip.update" ]; then
declare -Ag APPSTORAGE
echo "Disabling apps before the update in order to make the update procedure more safe. This can take a while..."
for app in "${NC_APPS_ARRAY[@]}"; do
APPSTORAGE[$app]=$(php /var/www/html/occ config:app:get "$app" enabled)
php /var/www/html/occ app:disable "$app"
if APPSTORAGE[$app]="$(php /var/www/html/occ config:app:get "$app" enabled)"; then
php /var/www/html/occ app:disable "$app"
else
APPSTORAGE[$app]=""
echo "Not disabling $app because the occ command to get the enabled state was failing."
fi
done
fi
@@ -563,7 +567,7 @@ fi
IPv4_ADDRESS="$(dig nextcloud-aio-nextcloud A +short +search | head -1)"
# Bring it in CIDR notation
# shellcheck disable=SC2001
IPv4_ADDRESS="$(echo "$IPv4_ADDRESS" | sed 's|[0-9]\+$|1/32|')"
IPv4_ADDRESS="$(echo "$IPv4_ADDRESS" | sed 's|[0-9]\+$|0/16|')"
php /var/www/html/occ config:system:set trusted_proxies 10 --value="$IPv4_ADDRESS"
if [ -n "$ADDITIONAL_TRUSTED_DOMAIN" ]; then
@@ -729,8 +733,8 @@ if [ "$CLAMAV_ENABLED" = 'yes' ]; then
php /var/www/html/occ config:app:set files_antivirus av_mode --value="daemon"
php /var/www/html/occ config:app:set files_antivirus av_port --value="3310"
php /var/www/html/occ config:app:set files_antivirus av_host --value="$CLAMAV_HOST"
php /var/www/html/occ config:app:set files_antivirus av_stream_max_length --value="104857600"
php /var/www/html/occ config:app:set files_antivirus av_max_file_size --value="104857600"
php /var/www/html/occ config:app:set files_antivirus av_stream_max_length --value="$CLAMAV_MAX_SIZE"
php /var/www/html/occ config:app:set files_antivirus av_max_file_size --value="$CLAMAV_MAX_SIZE"
php /var/www/html/occ config:app:set files_antivirus av_infected_action --value="only_log"
fi
else

View File

@@ -0,0 +1,4 @@
Warning: You have logged in into the Nextcloud container as root user.
See https://github.com/nextcloud/all-in-one#how-to-run-occ-commands if you want to run occ commands.
Apart from that, you can use 'sudo -u www-data -E php occ <your-command>' in order to run occ commands.
Of course <your-command> needs to be substituted with the command that you want to use.

View File

@@ -1,5 +1,5 @@
# syntax=docker/dockerfile:latest
FROM alpine:3.19.1
FROM alpine:3.20.1
COPY --chmod=775 start.sh /start.sh
COPY --chmod=775 healthcheck.sh /healthcheck.sh

View File

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

View File

@@ -1,5 +1,5 @@
# syntax=docker/dockerfile:latest
# From https://github.com/docker-library/postgres/blob/master/15/alpine/Dockerfile
# From https://github.com/docker-library/postgres/blob/master/16/alpine3.20/Dockerfile
FROM postgres:16.3-alpine
COPY --chmod=775 start.sh /start.sh
@@ -32,7 +32,10 @@ RUN set -ex; \
\
# Give root a random password
echo "root:$(openssl rand -base64 12)" | chpasswd; \
apk --no-cache del openssl;
apk --no-cache del openssl; \
\
# Get rid of unused binaries
rm -f /usr/local/bin/gosu /usr/local/bin/su-exec;
VOLUME /mnt/data

View File

@@ -99,7 +99,7 @@ if ( [ -f "$DATADIR/PG_VERSION" ] && [ "$PG_MAJOR" != "$(cat "$DATADIR/PG_VERSIO
fi
# Get the Owner
DB_OWNER="$(grep -a "$GREP_STRING" "$DUMP_FILE" | grep -oP 'Owner:.*$' | sed 's|Owner:||;s| ||g')"
DB_OWNER="$(grep -a "$GREP_STRING" "$DUMP_FILE" | head -1 | grep -oP 'Owner:.*$' | sed 's|Owner:||;s| ||g')"
if [ "$DB_OWNER" = "$POSTGRES_USER" ]; then
echo "Unfortunately was the found database owner of the dump file the same as the POSTGRES_USER $POSTGRES_USER"
echo "It is not possible to import a database dump from this database owner."

View File

@@ -1,5 +1,5 @@
# syntax=docker/dockerfile:latest
# From https://github.com/docker-library/redis/blob/master/7.0/alpine/Dockerfile
# From https://github.com/docker-library/redis/blob/master/7.2/alpine/Dockerfile
FROM redis:7.2.5-alpine
COPY --chmod=775 start.sh /start.sh
@@ -9,7 +9,10 @@ RUN set -ex; \
apk add --no-cache openssl bash; \
\
# Give root a random password
echo "root:$(openssl rand -base64 12)" | chpasswd
echo "root:$(openssl rand -base64 12)" | chpasswd; \
\
# Get rid of unused binaries
rm -f /usr/local/bin/gosu;
USER redis
ENTRYPOINT ["/start.sh"]

View File

@@ -1,13 +1,13 @@
# syntax=docker/dockerfile:latest
FROM python:3.12.3-alpine3.19
FROM python:3.12.4-alpine3.20
COPY --chmod=775 start.sh /start.sh
ENV RECORDING_VERSION v0.1
ENV ALLOW_ALL false
ENV HPB_PROTOCOL https
ENV SKIP_VERIFY false
ENV HPB_PATH /standalone-signaling/
ENV RECORDING_VERSION=v0.1
ENV ALLOW_ALL=false
ENV HPB_PROTOCOL=https
ENV SKIP_VERIFY=false
ENV HPB_PATH=/standalone-signaling/
RUN set -ex; \
apk upgrade --no-cache -a; \
@@ -26,9 +26,8 @@ RUN set -ex; \
pulseaudio \
openssl \
build-base \
linux-headers; \
# chromium chromium-chromedriver?
apk add --no-cache geckodriver --repository http://dl-cdn.alpinelinux.org/alpine/edge/community; \
linux-headers \
geckodriver; \
useradd -d /tmp --system recording; \
# Give root a random password
echo "root:$(openssl rand -base64 12)" | chpasswd; \

View File

@@ -1,10 +1,10 @@
# syntax=docker/dockerfile:latest
FROM nats:2.10.16-scratch as nats
FROM nats:2.10.18-scratch AS nats
FROM eturnal/eturnal:1.12.0 AS eturnal
FROM strukturag/nextcloud-spreed-signaling:1.3.1 as signaling
FROM alpine:3.19.1 as janus
FROM strukturag/nextcloud-spreed-signaling:1.3.2 AS signaling
FROM alpine:3.20.1 AS janus
ARG JANUS_VERSION=v0.14.2
ARG JANUS_VERSION=v0.14.3
WORKDIR /src
RUN set -ex; \
apk add --no-cache \
@@ -34,7 +34,7 @@ RUN set -ex; \
make configs; \
rename -v ".jcfg.sample" ".jcfg" /usr/local/etc/janus/*.jcfg.sample
FROM alpine:3.19.1
FROM alpine:3.20.1
ENV ETURNAL_ETC_DIR="/conf"
COPY --from=janus --chmod=777 --chown=1000:1000 /usr/local /usr/local
COPY --from=eturnal --chmod=777 --chown=1000:1000 /opt/eturnal /opt/eturnal

View File

@@ -20,8 +20,10 @@ fi
set -x
IPv4_ADDRESS_TALK_RELAY="$(hostname -i | grep -oP '[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+' | head -1)"
IPv4_ADDRESS_TALK="$(dig nextcloud-aio-talk IN A +short +search | grep '^[0-9.]\+$' | sort | head -n1)"
IPv6_ADDRESS_TALK="$(dig nextcloud-aio-talk AAAA +short +search | grep '^[0-9a-f:]\+$' | sort | head -n1)"
# shellcheck disable=SC2153
IPv4_ADDRESS_TALK="$(dig "$TALK_HOST" IN A +short +search | grep '^[0-9.]\+$' | sort | head -n1)"
# shellcheck disable=SC2153
IPv6_ADDRESS_TALK="$(dig "$TALK_HOST" AAAA +short +search | grep '^[0-9a-f:]\+$' | sort | head -n1)"
set +x
if [ -n "$IPv4_ADDRESS_TALK" ] && [ "$IPv4_ADDRESS_TALK_RELAY" = "$IPv4_ADDRESS_TALK" ]; then

View File

@@ -1,8 +1,8 @@
# syntax=docker/dockerfile:latest
# From https://github.com/containrrr/watchtower/blob/main/dockerfiles/Dockerfile.self-contained
FROM containrrr/watchtower:1.7.1 as watchtower
FROM containrrr/watchtower:1.7.1 AS watchtower
FROM alpine:3.19.1
FROM alpine:3.20.1
RUN apk upgrade --no-cache -a; \
apk add --no-cache bash

View File

@@ -5,7 +5,7 @@
"display_name": "Caddy with geoblocking",
"documentation": "https://github.com/nextcloud/all-in-one/tree/main/community-containers/caddy",
"image": "szaimen/aio-caddy",
"image_tag": "v1",
"image_tag": "v2",
"internal_port": "443",
"restart": "unless-stopped",
"ports": [
@@ -38,7 +38,7 @@
}
],
"aio_variables": [
"apache_ip_binding=127.0.0.1",
"apache_ip_binding=@INTERNAL",
"apache_port=11000"
],
"nextcloud_exec_commands": [

View File

@@ -1,11 +1,14 @@
## Caddy with geoblocking
This container bundles caddy and auto-configures it for you. It also covers https://github.com/nextcloud/all-in-one/tree/main/community-containers/vaultwarden by listening on `bw.$NC_DOMAIN`, if installed. It also covers https://github.com/nextcloud/all-in-one/tree/main/community-containers/stalwart by listening on `mail.$NC_DOMAIN`, if installed. It also covers https://github.com/nextcloud/all-in-one/tree/main/community-containers/jellyfin by listening on `media.$NC_DOMAIN`, if installed. It also covers https://github.com/nextcloud/all-in-one/tree/main/community-containers/lldap by listening on `ldap.$NC_DOMAIN`, if installed.
This container bundles caddy and auto-configures it for you. It also covers https://github.com/nextcloud/all-in-one/tree/main/community-containers/vaultwarden by listening on `bw.$NC_DOMAIN`, if installed. It also covers https://github.com/nextcloud/all-in-one/tree/main/community-containers/stalwart by listening on `mail.$NC_DOMAIN`, if installed. It also covers https://github.com/nextcloud/all-in-one/tree/main/community-containers/jellyfin by listening on `media.$NC_DOMAIN`, if installed. It also covers https://github.com/nextcloud/all-in-one/tree/main/community-containers/lldap by listening on `ldap.$NC_DOMAIN`, if installed. It also covers https://github.com/nextcloud/all-in-one/tree/main/community-containers/nocodb by listening on `tables.$NC_DOMAIN`, if installed.
### Notes
- This container is incompatible with the [npmplus](https://github.com/nextcloud/all-in-one/tree/main/community-containers/npmplus) community container. So make sure that you do not enable both at the same time!
- Make sure that no other service is using port 443 on your host as otherwise the containers will fail to start. You can check this with `sudo netstat -tulpn | grep 443` before installing AIO.
- If you want to use this with https://github.com/nextcloud/all-in-one/tree/main/community-containers/vaultwarden, make sure that you point `bw.your-nc-domain.com` to your server using a cname record so that caddy can get a certificate automatically for vaultwarden.
- If you want to use this with https://github.com/nextcloud/all-in-one/tree/main/community-containers/stalwart, make sure that you point `mail.your-nc-domain.com` to your server using an A, AAAA or CNAME record so that caddy can get a certificate automatically for stalwart.
- If you want to use this with https://github.com/nextcloud/all-in-one/tree/main/community-containers/jellyfin, make sure that you point `media.your-nc-domain.com` to your server using a cname record so that caddy can get a certificate automatically for jellyfin.
- If you want to use this with https://github.com/nextcloud/all-in-one/tree/main/community-containers/lldap, make sure that you point `ldap.your-nc-domain.com` to your server using a cname record so that caddy can get a certificate automatically for lldap.
- If you want to use this with 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.
- 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.
- See https://github.com/nextcloud/all-in-one/tree/main/community-containers#community-containers how to add it to the AIO stack

0
community-containers/dlna/dlna.json Executable file → Normal file
View File

0
community-containers/dlna/readme.md Executable file → Normal file
View File

View File

@@ -3,7 +3,6 @@ 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.
- Currently, in order to run this correctly, your server should have at least 6 GB of RAM, better 8 GB of RAM.
- 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:
```bash
# Go into the container

View File

@@ -2,7 +2,6 @@
This container bundles Local AI and auto-configures it for you.
### Notes
- This container does not work on arm64! If you add the container on arm64, it will fail to start because no image for arm64 is available!
- Make sure to have enough storage space available. This container alone needs ~7GB storage. Every model that you add to `models.yaml` will of course use additional space which adds up quite fast.
- After the container was started the first time, you should see a new `nextcloud-aio-local-ai` folder when you open the files app with the default `admin` user. In there you should see a `models.yaml` config file. You can now add models in there. Please refer [here](https://github.com/go-skynet/model-gallery/blob/main/index.yaml) where you can get further urls that you can put in there. Afterwards restart all containers from the AIO interface and the models should automatically get downloaded by the local-ai container and activated.
- Example for content of `models.yaml` (if you add all of them, it takes around 10GB additional space):

View File

@@ -0,0 +1,43 @@
{
"aio_services_v1": [
{
"container_name": "nextcloud-aio-nocodb",
"display_name": "NocoDB",
"documentation": "https://github.com/nextcloud/all-in-one/tree/main/community-containers/nocodb",
"image": "docjyj/aio-nocodb",
"image_tag": "%AIO_CHANNEL%",
"internal_port": "10028",
"restart": "unless-stopped",
"ports": [
{
"ip_binding": "%APACHE_IP_BINDING%",
"port_number": "10028",
"protocol": "tcp"
}
],
"environment": [
"NC_AUTH_JWT_SECRET=%NOCODB_JWT_SECRET%",
"NC_PUBLIC_URL=https://tables.%NC_DOMAIN%/",
"NC_DASHBOARD_URL=/",
"NC_ADMIN_EMAIL=admin@noco.db",
"NC_ADMIN_PASS=%NOCODB_USER_PASS%",
"PORT=10028",
"NC_DISABLE_TELE=true"
],
"secrets": [
"NOCODB_JWT_SECRET",
"NOCODB_USER_PASS"
],
"volumes": [
{
"source": "nextcloud_aio_nocodb",
"destination": "/usr/app/data",
"writeable": true
}
],
"backup_volumes": [
"nextcloud_aio_nocodb"
]
}
]
}

View File

@@ -0,0 +1,28 @@
> [!NOTE]
> This container is there to compensate for the lack of functionality in Nextcloud Tables.
>
> When Nextcloud Tables V2 is released, I will stop checking for updates, and will no longer fix any potential issues.
>
> Some missing functionality in Nextcloud Tables:
> - Multiple view layout (Gantt, Kanban, Calendar...)
> - Field (Person, Tag, File...)
> - See more here https://github.com/nextcloud/tables/issues/103
## NocoDb server
This container bundles NocoDb without synchronization with Nextcloud.
This is an alternative of **Airtable**.
### Notes
- You need to configure a reverse proxy in order to run this container since nocodb needs a dedicated (sub)domain! For that, you might have a look at https://github.com/nextcloud/all-in-one/tree/main/community-containers/caddy.
- Currently, only `tables.$NC_DOMAIN` is supported as subdomain! So if Nextcloud is using `your-domain.com`, nocodb will use `tables.your-domain.com`.
- The data of NocoDb will be automatically included in AIOs backup solution!
- After adding and starting the container, you need to run `docker inspect nextcloud-aio-nocodb | grep NC_ADMIN_PASS` to obtain the system administrator password (username: `admin@noco.db`). With this information, you can log in to the web interface at `https://tables.$NC_DOMAIN/#/signin`
- See https://docs.nocodb.com/ for usage of NocoDb
- See https://github.com/nextcloud/all-in-one/tree/main/community-containers#community-containers how to add it to the AIO stack
### Repository
https://github.com/docjyJ/aio-nocodb
### Maintainer
https://github.com/docjyJ

View File

@@ -4,7 +4,7 @@
> The stability of Stalwart services is not guaranteed.
> Do not use this feature as a main mail server without a redundancy system and without knowledge.
>
> To learn or use as a secondary server enjoy it and please report bugs at [marcoambrosini/aio-stalwart](https://github.com/marcoambrosini/aio-stalwart/issues).
> To learn or use as a secondary server enjoy it and please report bugs at [docjyj/aio-stalwart](https://github.com/docjyj/aio-stalwart/issues).
## Stalwart mail server
This container bundles stalwart mail server and auto-configures it for you.
@@ -22,7 +22,7 @@ This container bundles stalwart mail server and auto-configures it for you.
- 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/marcoambrosini/aio-stalwart
https://github.com/docjyj/aio-stalwart
### Maintainer
https://github.com/marcoambrosini
https://github.com/docjyj

View File

@@ -4,8 +4,8 @@
"container_name": "nextcloud-aio-stalwart",
"display_name": "Stalwart",
"documentation": "https://github.com/nextcloud/all-in-one/tree/main/community-containers/stalwart",
"image": "marcoambrosini/aio-stalwart",
"image_tag": "v2",
"image": "docjyj/aio-stalwart",
"image_tag": "%AIO_CHANNEL%",
"internal_port": "10003",
"restart": "unless-stopped",
"ports": [

View File

@@ -7,6 +7,7 @@ This container bundles vaultwarden and auto-configures it for you.
- If you want to secure the installation with fail2ban, you might want to check out https://github.com/nextcloud/all-in-one/tree/main/community-containers/fail2ban
- The data of Vaultwarden will be automatically included in AIOs backup solution!
- After adding and starting the container, you need to visit `https://bw.your-domain.com/admin` in order to log in with the admin key that you can retrieve when running `sudo docker inspect nextcloud-aio-vaultwarden | grep ADMIN_TOKEN`. There you can configure smtp first and then invite users via mail. After this is done, you might disable the admin panel via the reverse proxy by blocking connections to the subdirectory.
- If using the caddy community container, the vaultwarden admin interface can be disabled by creating a `block-vaultwarden-admin` file in the `nextcloud-aio-caddy` folder when you open the Nextcloud files app with the default `admin` user. Afterwards restart all containers from the AIO interface and the admin interface should be disabled! You can unlock the admin interface by removing the file again and afterwards restarting the containers via the AIO interface.
- 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

@@ -7,6 +7,7 @@ services:
volumes:
- nextcloud_aio_mastercontainer:/mnt/docker-aio-config # This line is not allowed to be changed as otherwise the built-in backup solution will not work
- /var/run/docker.sock:/var/run/docker.sock:ro # May be changed on macOS, Windows or docker rootless. See the applicable documentation. If adjusting, don't forget to also set 'WATCHTOWER_DOCKER_SOCKET_PATH'!
network_mode: bridge # add to the same network as docker run would do
ports:
- 80:80 # Can be removed when running behind a web server or reverse proxy (like Apache, Nginx, Cloudflare Tunnel and else). See https://github.com/nextcloud/all-in-one/blob/main/reverse-proxy.md
- 8080:8080
@@ -30,8 +31,6 @@ services:
# NEXTCLOUD_KEEP_DISABLED_APPS: false # Setting this to true will keep Nextcloud apps that are disabled in the AIO interface and not uninstall them if they should be installed. See https://github.com/nextcloud/all-in-one#how-to-keep-disabled-apps
# TALK_PORT: 3478 # This allows to adjust the port that the talk container is using. See https://github.com/nextcloud/all-in-one#how-to-adjust-the-talk-port
# WATCHTOWER_DOCKER_SOCKET_PATH: /var/run/docker.sock # Needs to be specified if the docker socket on the host is not located in the default '/var/run/docker.sock'. Otherwise mastercontainer updates will fail. For macos it needs to be '/var/run/docker.sock'
# networks: # Is needed when you want to create the nextcloud-aio network with ipv6-support using this file, see the network config at the bottom of the file
# - nextcloud-aio # Is needed when you want to create the nextcloud-aio network with ipv6-support using this file, see the network config at the bottom of the file
# security_opt: ["label:disable"] # Is needed when using SELinux
# # Optional: Caddy reverse proxy. See https://github.com/nextcloud/all-in-one/blob/main/reverse-proxy.md
@@ -52,14 +51,3 @@ volumes: # If you want to store the data on a different drive, see https://githu
nextcloud_aio_mastercontainer:
name: nextcloud_aio_mastercontainer # This line is not allowed to be changed as otherwise the built-in backup solution will not work
# # Optional: If you need ipv6, follow step 1 and 2 of https://github.com/nextcloud/all-in-one/blob/main/docker-ipv6-support.md first and then uncomment the below config in order to activate ipv6 for the internal nextcloud-aio network.
# # Please make sure to uncomment also the networking lines of the mastercontainer above in order to actually create the network with docker-compose
# networks:
# nextcloud-aio:
# name: nextcloud-aio # This line is not allowed to be changed as otherwise the created network will not be used by the other containers of AIO
# driver: bridge
# enable_ipv6: true
# ipam:
# driver: default
# config:
# - subnet: fd12:3456:789a:2::/64 # IPv6 subnet to use

View File

@@ -1,18 +1,12 @@
# IPv6-Support for Docker
Before enabling IPv6-Support for Docker, please note that there are still some unresolved problems in regards to IPv6-Support in Docker. See https://github.com/nextcloud/all-in-one/discussions/2557 for more details on this.
Now that this was mentioned, see the instructions below on how to enable IPv6 for Docker.
## Docker on Linux and Docker-rootless
1. Edit `/etc/docker/daemon.json` (or `~/.config/docker/daemon.json` in case of docker-rootless), set the `ipv6` key to `true` and the `fixed-cidr-v6` key to your IPv6 subnet. In this example we are setting it to `fd12:3456:789a:1::/64`. Additionally set `experimental` to `true` and `ip6tables` to `true` as well. If you are using mailcow and enabled IPv6 with the update.sh, you can keep their daemon.json, it will work too.
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
{
"ipv6": true,
"fixed-cidr-v6": "fd12:3456:789a:1::/64",
"experimental": true,
"ip6tables": true
"default-network-opts": {"bridge":{"com.docker.network.enable_ipv6":"true"}}
}
```
@@ -23,23 +17,21 @@ Now that this was mentioned, see the instructions below on how to enable IPv6 fo
```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 --subnet="fd12:3456:789a:2::/64" --driver bridge --ipv6 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/2045 in order to recreate the network and enable ipv6 for it.
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)
On Windows and macOS which use Docker Desktop, you need to go into the settings, and select `Docker Engine`. There you should see the currently used daemon.json file.
First of all upgrade your docker desktop installation to v4.32.0 or higher.
Then, on Windows and macOS which use Docker Desktop, you need to go into the settings, and select `Docker Engine`. There you should see the currently used daemon.json file.
1. You need to now adjust this json file by setting the `ipv6` key to `true` and the `fixed-cidr-v6` key to your IPv6 subnet. In this example we are setting it to `fd12:3456:789a:1::/64`. Additionally set `experimental` to `true` and `ip6tables` to `true` as well.
1. You need to now adjust this json file:
```
"ipv6": true,
"fixed-cidr-v6": "fd12:3456:789a:1::/64",
"experimental": true,
"ip6tables": true
"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 `docker network inspect nextcloud-aio`. On a new instance, this command should return that it did not find a network with this name. Then you can run `docker network create --subnet="fd12:3456:789a:2::/64" --driver bridge --ipv6 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/2045 in order to recreate the network and enable ipv6 for it.
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.
---
**Note**: This is a copy of the original docker docs at https://docs.docker.com/config/daemon/ipv6/ which apparently are not correct. However experimental is set to true which the ip6tables feature needs. Thus it will not get included into the official docs. However it is needed to make it work in our testing.
**Note**: This is a copy of the original docker docs at https://docs.docker.com/config/daemon/ipv6/ which apparently are not correct.

View File

@@ -24,6 +24,7 @@ services:
environment:
- NC_DOMAIN=${NC_DOMAIN}
- NEXTCLOUD_HOST=nextcloud-aio-nextcloud
- APACHE_HOST=nextcloud-aio-apache
- COLLABORA_HOST=nextcloud-aio-collabora
- TALK_HOST=nextcloud-aio-talk
- APACHE_PORT=${APACHE_PORT}
@@ -133,6 +134,7 @@ services:
- TALK_PORT=${TALK_PORT}
- IMAGINARY_ENABLED=${IMAGINARY_ENABLED}
- IMAGINARY_HOST=nextcloud-aio-imaginary
- CLAMAV_MAX_SIZE=${APACHE_MAX_SIZE}
- PHP_UPLOAD_LIMIT=${NEXTCLOUD_UPLOAD_LIMIT}
- PHP_MEMORY_LIMIT=${NEXTCLOUD_MEMORY_LIMIT}
- FULLTEXTSEARCH_ENABLED=${FULLTEXTSEARCH_ENABLED}
@@ -149,7 +151,6 @@ services:
- FULLTEXTSEARCH_PASSWORD=${FULLTEXTSEARCH_PASSWORD}
- REMOVE_DISABLED_APPS=${REMOVE_DISABLED_APPS}
- APACHE_PORT=${APACHE_PORT}
- APACHE_IP_BINDING=${APACHE_IP_BINDING}
- IMAGINARY_SECRET=${IMAGINARY_SECRET}
stop_grace_period: 600s
restart: unless-stopped
@@ -218,6 +219,7 @@ services:
- nextcloud-aio
cap_add:
- MKNOD
- SYS_ADMIN
cap_drop:
- NET_RAW
@@ -231,6 +233,7 @@ services:
- "8081"
environment:
- NC_DOMAIN=${NC_DOMAIN}
- TALK_HOST=nextcloud-aio-talk
- TURN_SECRET=${TURN_SECRET}
- SIGNALING_SECRET=${SIGNALING_SECRET}
- TZ=${TIMEZONE}
@@ -282,6 +285,7 @@ services:
- "3310"
environment:
- TZ=${TIMEZONE}
- MAX_SIZE=${NEXTCLOUD_UPLOAD_LIMIT}
- CLAMD_STARTUP_TIMEOUT=90
volumes:
- nextcloud_aio_clamav:/var/lib/clamav:rw
@@ -385,13 +389,6 @@ volumes:
nextcloud_aio_nextcloud_data:
name: nextcloud_aio_nextcloud_data
# Inspired by https://github.com/mailcow/mailcow-dockerized/blob/master/docker-compose.yml
networks:
nextcloud-aio:
name: nextcloud-aio
driver: bridge
enable_ipv6: true
ipam:
driver: default
config:
- subnet: ${IPV6_NETWORK}

View File

@@ -22,7 +22,8 @@ First, install docker and docker-compose (v2) if not already done. Then simply r
git clone https://github.com/nextcloud/all-in-one.git
cd all-in-one/manual-install
```
Then copy the sample.conf to default environment file, e.g. `cp sample.conf .env`, open the new conf file, e.g. with `nano .env`, edit all values that are marked with `# TODO!`, close and save the file. (Note: there is no clamav image for arm64).
Then copy the sample.conf to default environment file, e.g. `cp sample.conf .env`, open the new conf file, e.g. with `nano .env`, edit all values that are marked with `# TODO!`, close and save the file. (Note: there is no clamav image for arm64).<br>
⚠️ **Warning**: Do not use the symbols `@` and `:` in your passwords. These symbols are used to build database connection strings. You will experience issues when using these symbols!
Now copy the provided yaml file to a compose.yaml file by running `cp latest.yml compose.yaml`.

View File

@@ -37,4 +37,3 @@ NEXTCLOUD_UPLOAD_LIMIT=10G # This allows to change the upload limit of
REMOVE_DISABLED_APPS=yes # Setting this to no keep Nextcloud apps that are disabled via their switch and not uninstall them if they should be installed in Nextcloud.
TALK_PORT=3478 # This allows to adjust the port that the talk container is using.
UPDATE_NEXTCLOUD_APPS="no" # When setting to "yes" (with quotes), it will automatically update all installed Nextcloud apps upon container startup on saturdays.
IPV6_NETWORK=fd12:3456:789a:2::/64 # IPv6 subnet to use

View File

@@ -95,7 +95,6 @@ sed -i 's|NEXTCLOUD_ADDITIONAL_PHP_EXTENSIONS=|NEXTCLOUD_ADDITIONAL_PHP_EXTENSIO
sed -i 's|INSTALL_LATEST_MAJOR=|INSTALL_LATEST_MAJOR=no # Setting this to yes will install the latest Major Nextcloud version upon the first installation|' sample.conf
sed -i 's|REMOVE_DISABLED_APPS=|REMOVE_DISABLED_APPS=yes # Setting this to no keep Nextcloud apps that are disabled via their switch and not uninstall them if they should be installed in Nextcloud.|' sample.conf
sed -i 's|=$|= # TODO! This needs to be a unique and good password!|' sample.conf
echo 'IPV6_NETWORK=fd12:3456:789a:2::/64 # IPv6 subnet to use' >> sample.conf
grep '# TODO!' sample.conf > todo.conf
grep -v '# TODO!\|_ENABLED' sample.conf > temp.conf
@@ -139,16 +138,9 @@ done
cat << NETWORK >> containers.yml
# Inspired by https://github.com/mailcow/mailcow-dockerized/blob/master/docker-compose.yml
networks:
nextcloud-aio:
name: nextcloud-aio
driver: bridge
enable_ipv6: true
ipam:
driver: default
config:
- subnet: \${IPV6_NETWORK}
NETWORK
cat containers.yml > latest.yml

View File

@@ -1,26 +1,123 @@
# Manual upgrade
If you do not install any upgrade for around 6-12 months or longer, it can happen that your instance is so outdated that in the meantime the PHP version of the Nextcloud container got bumped to a version that is not compatible with your currently installed Nextcloud version which means that after doing an upgrade after this long time, Nextcloud will suddenly not work anymore. There is unfortunately no way to fix this from the maintainer side if you refrain from upgrading for so long.
If you do not update Nextcloud AIO for a long time (6+ months), when you eventually update in the AIO interface you will find Nextcloud no longer works. This is due to incompatible PHP versions within the nextcloud container.
There is unfortunately no way to fix this from a maintainer POV if you refrain from upgrading for so long.
The only way to fix this on your side is upgrading regularly (e.g. by enabling daily backups which will also automatically upgrade all containers) and following the steps below:
The only way to fix this on your side is upgrading regularly (e.g. by enabling daily backups which will also automatically upgrade all containers) and following the steps below to get back to a normal state:
1. Start all containers from the aio interface (now, it will report that Nextcloud is restarting because it is not able to start due to the above mentioned problem)
1. Do **not** click on `Stop containers` because you will need them running going forward, see below
1. Find out with which PHP version your installed Nextcloud is compatible by running `sudo docker exec nextcloud-aio-nextcloud cat lib/versioncheck.php`. (There you will find information about the max. supported PHP version.)
---
1. Stop the Nextcloud container and the Apache container by running `sudo docker stop nextcloud-aio-nextcloud && sudo docker stop nextcloud-aio-apache`.
1. Run the following commands in order to reverse engineer the Nextcloud container:
## Method 1
1. Start all containers from the AIO interface
- Now, it will report that Nextcloud is restarting because it is not able to start due to the above mentioned problem
- #### Do **not** click on `Stop containers` because you will need them running going forward, see below
2. Find out with which PHP version your installed Nextcloud is compatible by running `sudo docker exec nextcloud-aio-nextcloud cat lib/versioncheck.php`.
- There you will find information about the max. supported PHP version
- **Make a mental note of this**
3. Stop the Nextcloud container and the Apache container by running
```bash
sudo docker stop nextcloud-aio-nextcloud && sudo docker stop nextcloud-aio-apache
```
4. Run the following commands in order to reverse engineer the Nextcloud container:
```bash
sudo docker pull assaflavie/runlike
echo '#!/bin/bash' > /tmp/nextcloud-aio-nextcloud
sudo docker run --rm -v /var/run/docker.sock:/var/run/docker.sock assaflavie/runlike -p nextcloud-aio-nextcloud >> /tmp/nextcloud-aio-nextcloud
sudo chown root:root /tmp/nextcloud-aio-nextcloud
```
1. Now open the file with e.g. nano: `sudo nano /tmp/nextcloud-aio-nextcloud` and change the line that should probably be `nextcloud/aio-nextcloud:latest` on x64 or `nextcloud/aio-nextcloud:latest-arm64` on arm64 to the highest compatible PHP version: E.g. `nextcloud/aio-nextcloud:php8.0-latest`. Then save the file and close it with `[Ctrl]+[o]` -> `[Enter]` and `[Ctrl]+[x]`.
1. After doing so, remove the Nextcloud container with `sudo docker rm nextcloud-aio-nextcloud`.
1. Now start the Nextcloud container with the new tag by simply running `sudo bash /tmp/nextcloud-aio-nextcloud` which at startup should automatically upgrade Nextcloud to a more recent version. If not, make sure that there is no `skip.update` file in the Nextcloud datadir. If there is such a file, simply delete the file and restart the container again.<br>
5. Now open `/tmp/nextcloud-aio-nextcloud` with a text editor, and edit the container tag:
| To change | Replace with |
|----------------------------------------|-----------------------------------------------------|
| `nextcloud/aio-nextcloud:latest` | `nextcloud/aio-nextcloud:php{version}-latest` |
| `nextcloud/aio-nextcloud:latest-arm64` | `nextcloud/aio-nextcloud:php{version}-latest-arm64` |
- e.g. `nextcloud/aio-nextcloud:php8.0-latest` or `nextcloud/aio-nextcloud:php8.0-latest-arm64`
- However, if you are unsure check the docker hub (https://hub.docker.com/r/nextcloud/aio-nextcloud/tags)
- Using nano and the arrow keys to navigate:
- `sudo nano /tmp/nextcloud-aio-nextcloud` making changes as above, then `[Ctrl]+[o]` -> `[Enter]` and `[Ctrl]+[x]` to save and exit.
6. Next, stop and remove the current container:
```bash
sudo docker stop nextcloud-aio-nextcloud
sudo docker rm nextcloud-aio-nextcloud
```
7. Now start the Nextcloud container with the new tag by simply running `sudo bash /tmp/nextcloud-aio-nextcloud` which at startup should automatically upgrade Nextcloud to a more recent version. If not, make sure that there is no `skip.update` file in the Nextcloud datadir. If there is such a file, simply delete the file and restart the container again.<br>
**Info**: You can open the Nextcloud container logs with `sudo docker logs -f nextcloud-aio-nextcloud`.
1. After the Nextcloud container is started (you can tell by looking at the logs), simply restart the container again with `sudo docker restart nextcloud-aio-nextcloud` until it does not install a new Nextcloud update anymore upon the container startup.
1. Now, you should be able to use the AIO interface again by simply stopping the AIO containers and starting them again which should finally bring up your instance again.
1. If not and if you get the same error again, you may repeat the process starting from the beginning again until your Nextcloud version is finally up-to-date.
1. Now, if everything is finally running as usual again, it is recommended to create a backup in order to save the current state. Also you should think about enabling daily backups if doing regularl upgrades is too much effort for you.
8. After the Nextcloud container is started (you can tell by looking at the logs), simply restart the container again with `sudo docker restart nextcloud-aio-nextcloud` until it does not install a new Nextcloud update anymore upon the container startup.
9. Now, you should be able to use the AIO interface again by simply stopping the AIO containers and starting them again which should finally bring up your instance again.
10. If not and if you get the same error again, you may repeat the process starting from the beginning again until your Nextcloud version is finally up-to-date.
11. Now, if everything is finally running as usual again, it is recommended to create a backup in order to save the current state. Consider enabling daily backups if doing regular upgrades is a hassle for you.
---
## Method 2
#### *Approach using portainer if method 1 does not work for you*
Prerequisite: have all containers from AIO interface running.
<details>
<summary>Click to expand</summary>
##### 1. Install portainer if not installed:
```bash
docker volume create portainer_data
docker run -d -p 8000:8000 -p 9443:9443 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest
```
- If you have a reverse proxy
- you can setup and navigate using a domain name.
- For the **standard** AIO install
- Open port 9443 on your firewall
- navigate to `https://<server-ip>:9443`
- Accept the insecure self-signed certificate and set an admin password
- If prompted to add an environment
- add local
##### 2. Within the local portainer environment navigate to the **containers** tab
- Here you should see all the various containers running
##### 3. Now we need to stop the `nextcloud-aio-nextcloud` and `nextcloud-aio-apache` containers
- This can be done by selecting the checkbox's next to the containers' name and clicking the **Stop** button at the top
- or you can click into individual containers and stop them there
##### 4. Find the version of PHP compatible with the running nextcloud container
- navigate to ```nextcloud-aio-nextcloud``` and click on ```logs```, you should see something along the lines of:
```logs
This version of nextcloud is not compatible with >=php 8.2, you are currently running php 8.2.18
```
Make **note** of the version which is compatible, rounding down to 1 digit after the dot.
- In this example we would want php 8.1 since anything with 8.2 or above is incompatible
##### 5. Find the correct container version
In general it should be ```nextcloud/aio-nextcloud:php8.x-latest-arm64``` or `nextcloud/aio-nextcloud:php8.x-latest` replacing `x` with the version you require.
However, if you are unsure check the docker hub (https://hub.docker.com/r/nextcloud/aio-nextcloud/tags)
##### 6. Replace the container
- Navigate to the ```nextcloud-aio-nextcloud``` container within portainer
- Click ```Duplicate/Edit```
- Within image, change this to the correct version from Step 5
- Click ```Deploy the container```
- if you are prompted to force repull the image click the slider and press pull image
*Navigate to the nextcloud-aio-nextcloud logs and you will see the container updating*
Once you see no more activities in the logs or a message like ```NOTICE: ready to handle connections```, we've done it!
#### Now you can handle everything through the AIO admin interface and stop and restart the containers normally.
---
##### 7. Last Step is removing portainer if you don't want to keep it
```bash
docker stop portainer
docker rm portainer
docker volume rm portainer_data
```
- Make sure you close port 9443 on your firewall and delete any necessary reverse proxy hosts.
</details>

View File

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

View File

@@ -18,7 +18,8 @@ You can run the containers that are build for AIO with Kubernetes using this Hel
## How to use this?
First download this file: https://raw.githubusercontent.com/nextcloud/all-in-one/main/nextcloud-aio-helm-chart/values.yaml and adjust at least all values marked with `# TODO!`
First download this file: https://raw.githubusercontent.com/nextcloud/all-in-one/main/nextcloud-aio-helm-chart/values.yaml and adjust at least all values marked with `# TODO!`<br>
⚠️ **Warning**: Do not use the symbols `@` and `:` in your passwords. These symbols are used to build database connection strings. You will experience issues when using these symbols!
Then run:

View File

@@ -44,6 +44,8 @@ spec:
- env:
- name: ADDITIONAL_TRUSTED_DOMAIN
value: "{{ .Values.ADDITIONAL_TRUSTED_DOMAIN }}"
- name: APACHE_HOST
value: nextcloud-aio-apache
- name: APACHE_MAX_SIZE
value: "{{ .Values.APACHE_MAX_SIZE }}"
- name: APACHE_MAX_TIME
@@ -64,7 +66,7 @@ spec:
value: nextcloud-aio-talk
- name: TZ
value: "{{ .Values.TIMEZONE }}"
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-apache:20240606_075829-latest"
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-apache:20240718_063028"
name: nextcloud-aio-apache
ports:
- containerPort: {{ .Values.APACHE_PORT }}

View File

@@ -57,9 +57,11 @@ spec:
- env:
- name: CLAMD_STARTUP_TIMEOUT
value: "90"
- name: MAX_SIZE
value: "{{ .Values.NEXTCLOUD_UPLOAD_LIMIT }}"
- name: TZ
value: "{{ .Values.TIMEZONE }}"
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-clamav:20240606_075829-latest"
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-clamav:20240718_063028"
name: nextcloud-aio-clamav
ports:
- containerPort: 3310

View File

@@ -36,7 +36,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 {{ .Values.COLLABORA_SECCOMP_POLICY }} --o:remote_font_config.url=https://{{ .Values.NC_DOMAIN }}/apps/richdocuments/settings/fonts.json
- name: server_name
value: "{{ .Values.NC_DOMAIN }}"
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-collabora:20240606_075829-latest"
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-collabora:20240718_063028"
name: nextcloud-aio-collabora
ports:
- containerPort: 9980
@@ -45,6 +45,7 @@ spec:
capabilities:
add:
- MKNOD
- SYS_ADMIN
drop:
- NET_RAW
{{- end }}

View File

@@ -70,7 +70,7 @@ spec:
value: nextcloud
- name: TZ
value: "{{ .Values.TIMEZONE }}"
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-postgresql:20240606_075829-latest"
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-postgresql:20240718_063028"
name: nextcloud-aio-database
ports:
- containerPort: 5432

View File

@@ -60,7 +60,7 @@ spec:
value: basic
- name: xpack.security.enabled
value: "false"
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-fulltextsearch:20240606_075829-latest"
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-fulltextsearch:20240718_063028"
name: nextcloud-aio-fulltextsearch
ports:
- containerPort: 9200

View File

@@ -28,7 +28,7 @@ spec:
value: "{{ .Values.IMAGINARY_SECRET }}"
- name: TZ
value: "{{ .Values.TIMEZONE }}"
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-imaginary:20240606_075829-latest"
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-imaginary:20240718_063028"
name: nextcloud-aio-imaginary
ports:
- containerPort: 9000

View File

@@ -1,4 +1,4 @@
{{- if ne .Values.NAMESPACE "default" }}
{{- if and (ne .Values.NAMESPACE "default") (ne .Values.NAMESPACE_DISABLED "yes") }}
apiVersion: v1
kind: Namespace
metadata:

View File

@@ -99,6 +99,8 @@ spec:
value: "{{ .Values.CLAMAV_ENABLED }}"
- name: CLAMAV_HOST
value: nextcloud-aio-clamav
- name: CLAMAV_MAX_SIZE
value: "{{ .Values.APACHE_MAX_SIZE }}"
- name: COLLABORA_ENABLED
value: "{{ .Values.COLLABORA_ENABLED }}"
- name: COLLABORA_HOST
@@ -173,7 +175,7 @@ spec:
value: "{{ .Values.TIMEZONE }}"
- name: UPDATE_NEXTCLOUD_APPS
value: "{{ .Values.UPDATE_NEXTCLOUD_APPS }}"
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-nextcloud:20240606_075829-latest"
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-nextcloud:20240718_063028"
name: nextcloud-aio-nextcloud
ports:
- containerPort: 9000

View File

@@ -57,7 +57,7 @@ spec:
value: nextcloud-aio-redis
- name: REDIS_HOST_PASSWORD
value: "{{ .Values.REDIS_PASSWORD }}"
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-notify-push:20240606_075829-latest"
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-notify-push:20240718_063028"
name: nextcloud-aio-notify-push
ports:
- containerPort: 7867

View File

@@ -48,7 +48,7 @@ spec:
value: "{{ .Values.ONLYOFFICE_SECRET }}"
- name: TZ
value: "{{ .Values.TIMEZONE }}"
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-onlyoffice:20240606_075829-latest"
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-onlyoffice:20240718_063028"
name: nextcloud-aio-onlyoffice
ports:
- containerPort: 80

View File

@@ -43,7 +43,7 @@ spec:
value: "{{ .Values.REDIS_PASSWORD }}"
- name: TZ
value: "{{ .Values.TIMEZONE }}"
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-redis:20240606_075829-latest"
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-redis:20240718_063028"
name: nextcloud-aio-redis
ports:
- containerPort: 6379

View File

@@ -34,13 +34,15 @@ spec:
value: "{{ .Values.NC_DOMAIN }}"
- name: SIGNALING_SECRET
value: "{{ .Values.SIGNALING_SECRET }}"
- name: TALK_HOST
value: nextcloud-aio-talk
- name: TALK_PORT
value: "{{ .Values.TALK_PORT }}"
- name: TURN_SECRET
value: "{{ .Values.TURN_SECRET }}"
- name: TZ
value: "{{ .Values.TIMEZONE }}"
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-talk:20240606_075829-latest"
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-talk:20240718_063028"
name: nextcloud-aio-talk
ports:
- containerPort: {{ .Values.TALK_PORT }}

View File

@@ -32,7 +32,7 @@ spec:
value: "{{ .Values.RECORDING_SECRET }}"
- name: TZ
value: "{{ .Values.TIMEZONE }}"
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-talk-recording:20240606_075829-latest"
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-talk-recording:20240718_063028"
name: nextcloud-aio-talk-recording
ports:
- containerPort: 1234

View File

@@ -28,7 +28,7 @@ sed -i 's|^|export |' /tmp/sample.conf
source /tmp/sample.conf
rm /tmp/sample.conf
sed -i '/OVERWRITEHOST/d' latest.yml
sed -i "s|:latest$|:$DOCKER_TAG-latest|" latest.yml
sed -i "s|:latest$|:$DOCKER_TAG|" latest.yml
sed -i "s|\${APACHE_IP_BINDING}:||" latest.yml
sed -i '/APACHE_IP_BINDING/d' latest.yml
sed -i "s|\${APACHE_PORT}:\${APACHE_PORT}/|$APACHE_PORT:$APACHE_PORT/|" latest.yml
@@ -246,7 +246,7 @@ find ./ \( -not -name '*service.yaml' -name '*.yaml' \) -exec sed -i "/^status:/
# shellcheck disable=SC1083
find ./ \( -not -name '*persistentvolumeclaim.yaml' -name '*.yaml' \) -exec sed -i "/resources:/d" \{} \;
# shellcheck disable=SC1083
find ./ -name "*namespace.yaml" -exec sed -i "1i\\{{- if ne .Values.NAMESPACE \"default\" }}" \{} \;
find ./ -name "*namespace.yaml" -exec sed -i "1i\\{{- if and \(ne .Values.NAMESPACE \"default\"\) \(ne .Values.NAMESPACE_DISABLED \"yes\"\) }}" \{} \;
# shellcheck disable=SC1083
find ./ -name "*namespace.yaml" -exec sed -i "$ a {{- end }}" \{} \;
# shellcheck disable=SC1083
@@ -336,7 +336,6 @@ sed -i 's|= |: |' /tmp/sample.conf
sed -i '/^NEXTCLOUD_DATADIR/d' /tmp/sample.conf
sed -i '/^APACHE_IP_BINDING/d' /tmp/sample.conf
sed -i '/^NEXTCLOUD_MOUNT/d' /tmp/sample.conf
sed -i '/^IPV6_NETWORK/d' /tmp/sample.conf
sed -i '/_ENABLED.*/s/ yes / "yes" /' /tmp/sample.conf
sed -i '/_ENABLED.*/s/ no / "no" /' /tmp/sample.conf
sed -i 's|^NEXTCLOUD_TRUSTED_CACERTS_DIR: .*|NEXTCLOUD_TRUSTED_CACERTS_DIR: # Setting this to any value allows to automatically import root certificates into the Nextcloud container|' /tmp/sample.conf
@@ -355,6 +354,7 @@ sed -i "s|NEXTCLOUD_DATA_STORAGE_SIZE: 1Gi|NEXTCLOUD_DATA_STORAGE_SIZE: 5Gi|" /t
cat << ADDITIONAL_CONFIG >> /tmp/sample.conf
NAMESPACE: default # By changing this, you can adjust the namespace of the installation which allows to install multiple instances on one kubernetes cluster
NAMESPACE_DISABLED: "no" # By setting this to "yes", you can disabled the creation of the namespace so that you can use a pre-created one
SUBSCRIPTION_KEY: # This allows to set the Nextcloud Enterprise key via ENV
SERVERINFO_TOKEN: # This allows to set the serverinfo app token for monitoring your Nextcloud via the serverinfo app
APPS_ALLOWLIST: # This allows to configure allowed apps that will be shown in Nextcloud's Appstore. You need to enter the app-IDs of the apps here and separate them with spaces. E.g. 'files richdocuments'

View File

@@ -48,6 +48,7 @@ ONLYOFFICE_STORAGE_SIZE: 1Gi # You can change the size of the onlyoffice v
REDIS_STORAGE_SIZE: 1Gi # You can change the size of the redis volume that default to 1Gi with this value
NAMESPACE: default # By changing this, you can adjust the namespace of the installation which allows to install multiple instances on one kubernetes cluster
NAMESPACE_DISABLED: "no" # By setting this to "yes", you can disabled the creation of the namespace so that you can use a pre-created one
SUBSCRIPTION_KEY: # This allows to set the Nextcloud Enterprise key via ENV
SERVERINFO_TOKEN: # This allows to set the serverinfo app token for monitoring your Nextcloud via the serverinfo app
APPS_ALLOWLIST: # This allows to configure allowed apps that will be shown in Nextcloud's Appstore. You need to enter the app-IDs of the apps here and separate them with spaces. E.g. 'files richdocuments'

153
php/composer.lock generated
View File

@@ -8,22 +8,22 @@
"packages": [
{
"name": "guzzlehttp/guzzle",
"version": "7.8.1",
"version": "7.9.0",
"source": {
"type": "git",
"url": "https://github.com/guzzle/guzzle.git",
"reference": "41042bc7ab002487b876a0683fc8dce04ddce104"
"reference": "84ac2b2afc44e40d3e8e658a45d68d6d20437612"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/guzzle/guzzle/zipball/41042bc7ab002487b876a0683fc8dce04ddce104",
"reference": "41042bc7ab002487b876a0683fc8dce04ddce104",
"url": "https://api.github.com/repos/guzzle/guzzle/zipball/84ac2b2afc44e40d3e8e658a45d68d6d20437612",
"reference": "84ac2b2afc44e40d3e8e658a45d68d6d20437612",
"shasum": ""
},
"require": {
"ext-json": "*",
"guzzlehttp/promises": "^1.5.3 || ^2.0.1",
"guzzlehttp/psr7": "^1.9.1 || ^2.5.1",
"guzzlehttp/promises": "^1.5.3 || ^2.0.3",
"guzzlehttp/psr7": "^2.7.0",
"php": "^7.2.5 || ^8.0",
"psr/http-client": "^1.0",
"symfony/deprecation-contracts": "^2.2 || ^3.0"
@@ -34,9 +34,9 @@
"require-dev": {
"bamarni/composer-bin-plugin": "^1.8.2",
"ext-curl": "*",
"php-http/client-integration-tests": "dev-master#2c025848417c1135031fdf9c728ee53d0a7ceaee as 3.0.999",
"guzzle/client-integration-tests": "3.0.2",
"php-http/message-factory": "^1.1",
"phpunit/phpunit": "^8.5.36 || ^9.6.15",
"phpunit/phpunit": "^8.5.39 || ^9.6.20",
"psr/log": "^1.1 || ^2.0 || ^3.0"
},
"suggest": {
@@ -114,7 +114,7 @@
],
"support": {
"issues": "https://github.com/guzzle/guzzle/issues",
"source": "https://github.com/guzzle/guzzle/tree/7.8.1"
"source": "https://github.com/guzzle/guzzle/tree/7.9.0"
},
"funding": [
{
@@ -130,20 +130,20 @@
"type": "tidelift"
}
],
"time": "2023-12-03T20:35:24+00:00"
"time": "2024-07-18T11:52:56+00:00"
},
{
"name": "guzzlehttp/promises",
"version": "2.0.2",
"version": "2.0.3",
"source": {
"type": "git",
"url": "https://github.com/guzzle/promises.git",
"reference": "bbff78d96034045e58e13dedd6ad91b5d1253223"
"reference": "6ea8dd08867a2a42619d65c3deb2c0fcbf81c8f8"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/guzzle/promises/zipball/bbff78d96034045e58e13dedd6ad91b5d1253223",
"reference": "bbff78d96034045e58e13dedd6ad91b5d1253223",
"url": "https://api.github.com/repos/guzzle/promises/zipball/6ea8dd08867a2a42619d65c3deb2c0fcbf81c8f8",
"reference": "6ea8dd08867a2a42619d65c3deb2c0fcbf81c8f8",
"shasum": ""
},
"require": {
@@ -151,7 +151,7 @@
},
"require-dev": {
"bamarni/composer-bin-plugin": "^1.8.2",
"phpunit/phpunit": "^8.5.36 || ^9.6.15"
"phpunit/phpunit": "^8.5.39 || ^9.6.20"
},
"type": "library",
"extra": {
@@ -197,7 +197,7 @@
],
"support": {
"issues": "https://github.com/guzzle/promises/issues",
"source": "https://github.com/guzzle/promises/tree/2.0.2"
"source": "https://github.com/guzzle/promises/tree/2.0.3"
},
"funding": [
{
@@ -213,20 +213,20 @@
"type": "tidelift"
}
],
"time": "2023-12-03T20:19:20+00:00"
"time": "2024-07-18T10:29:17+00:00"
},
{
"name": "guzzlehttp/psr7",
"version": "2.6.2",
"version": "2.7.0",
"source": {
"type": "git",
"url": "https://github.com/guzzle/psr7.git",
"reference": "45b30f99ac27b5ca93cb4831afe16285f57b8221"
"reference": "a70f5c95fb43bc83f07c9c948baa0dc1829bf201"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/guzzle/psr7/zipball/45b30f99ac27b5ca93cb4831afe16285f57b8221",
"reference": "45b30f99ac27b5ca93cb4831afe16285f57b8221",
"url": "https://api.github.com/repos/guzzle/psr7/zipball/a70f5c95fb43bc83f07c9c948baa0dc1829bf201",
"reference": "a70f5c95fb43bc83f07c9c948baa0dc1829bf201",
"shasum": ""
},
"require": {
@@ -241,8 +241,8 @@
},
"require-dev": {
"bamarni/composer-bin-plugin": "^1.8.2",
"http-interop/http-factory-tests": "^0.9",
"phpunit/phpunit": "^8.5.36 || ^9.6.15"
"http-interop/http-factory-tests": "0.9.0",
"phpunit/phpunit": "^8.5.39 || ^9.6.20"
},
"suggest": {
"laminas/laminas-httphandlerrunner": "Emit PSR-7 responses"
@@ -313,7 +313,7 @@
],
"support": {
"issues": "https://github.com/guzzle/psr7/issues",
"source": "https://github.com/guzzle/psr7/tree/2.6.2"
"source": "https://github.com/guzzle/psr7/tree/2.7.0"
},
"funding": [
{
@@ -329,7 +329,7 @@
"type": "tidelift"
}
],
"time": "2023-12-03T20:05:35+00:00"
"time": "2024-07-18T11:15:46+00:00"
},
{
"name": "http-interop/http-factory-guzzle",
@@ -830,16 +830,16 @@
},
{
"name": "psr/http-message",
"version": "1.1",
"version": "2.0",
"source": {
"type": "git",
"url": "https://github.com/php-fig/http-message.git",
"reference": "cb6ce4845ce34a8ad9e68117c10ee90a29919eba"
"reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/php-fig/http-message/zipball/cb6ce4845ce34a8ad9e68117c10ee90a29919eba",
"reference": "cb6ce4845ce34a8ad9e68117c10ee90a29919eba",
"url": "https://api.github.com/repos/php-fig/http-message/zipball/402d35bcb92c70c026d1a6a9883f06b2ead23d71",
"reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71",
"shasum": ""
},
"require": {
@@ -848,7 +848,7 @@
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "1.1.x-dev"
"dev-master": "2.0.x-dev"
}
},
"autoload": {
@@ -863,7 +863,7 @@
"authors": [
{
"name": "PHP-FIG",
"homepage": "http://www.php-fig.org/"
"homepage": "https://www.php-fig.org/"
}
],
"description": "Common interface for HTTP messages",
@@ -877,9 +877,9 @@
"response"
],
"support": {
"source": "https://github.com/php-fig/http-message/tree/1.1"
"source": "https://github.com/php-fig/http-message/tree/2.0"
},
"time": "2023-04-04T09:50:52+00:00"
"time": "2023-04-04T09:54:51+00:00"
},
{
"name": "psr/http-server-handler",
@@ -1090,30 +1090,30 @@
},
{
"name": "slim/csrf",
"version": "1.4.0",
"version": "1.5.0",
"source": {
"type": "git",
"url": "https://github.com/slimphp/Slim-Csrf.git",
"reference": "f66be9740283ed4f432535aff3623540e178013a"
"reference": "179cbcf40ee1d246d4906aefed42d3e62066974b"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/slimphp/Slim-Csrf/zipball/f66be9740283ed4f432535aff3623540e178013a",
"reference": "f66be9740283ed4f432535aff3623540e178013a",
"url": "https://api.github.com/repos/slimphp/Slim-Csrf/zipball/179cbcf40ee1d246d4906aefed42d3e62066974b",
"reference": "179cbcf40ee1d246d4906aefed42d3e62066974b",
"shasum": ""
},
"require": {
"php": "^7.4 || ^8.0",
"psr/http-factory": "^1.0",
"psr/http-message": "^1.0",
"psr/http-factory": "^1.1",
"psr/http-message": "^1.0 || ^2.0",
"psr/http-server-handler": "^1.0",
"psr/http-server-middleware": "^1.0"
},
"require-dev": {
"phpspec/prophecy": "^1.18",
"phpspec/prophecy-phpunit": "^2.1",
"phpspec/prophecy": "^1.19",
"phpspec/prophecy-phpunit": "^2.2",
"phpunit/phpunit": "^9.6",
"squizlabs/php_codesniffer": "^3.8"
"squizlabs/php_codesniffer": "^3.10"
},
"type": "library",
"autoload": {
@@ -1142,22 +1142,22 @@
],
"support": {
"issues": "https://github.com/slimphp/Slim-Csrf/issues",
"source": "https://github.com/slimphp/Slim-Csrf/tree/1.4.0"
"source": "https://github.com/slimphp/Slim-Csrf/tree/1.5.0"
},
"time": "2024-01-22T09:08:27+00:00"
"time": "2024-06-08T16:37:18+00:00"
},
{
"name": "slim/slim",
"version": "4.13.0",
"version": "4.14.0",
"source": {
"type": "git",
"url": "https://github.com/slimphp/Slim.git",
"reference": "038fd5713d5a41636fdff0e8dcceedecdd17fc17"
"reference": "5943393b88716eb9e82c4161caa956af63423913"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/slimphp/Slim/zipball/038fd5713d5a41636fdff0e8dcceedecdd17fc17",
"reference": "038fd5713d5a41636fdff0e8dcceedecdd17fc17",
"url": "https://api.github.com/repos/slimphp/Slim/zipball/5943393b88716eb9e82c4161caa956af63423913",
"reference": "5943393b88716eb9e82c4161caa956af63423913",
"shasum": ""
},
"require": {
@@ -1165,7 +1165,7 @@
"nikic/fast-route": "^1.3",
"php": "^7.4 || ^8.0",
"psr/container": "^1.0 || ^2.0",
"psr/http-factory": "^1.0",
"psr/http-factory": "^1.1",
"psr/http-message": "^1.1 || ^2.0",
"psr/http-server-handler": "^1.0",
"psr/http-server-middleware": "^1.0",
@@ -1182,11 +1182,12 @@
"nyholm/psr7-server": "^1.1",
"phpspec/prophecy": "^1.19",
"phpspec/prophecy-phpunit": "^2.1",
"phpstan/phpstan": "^1.10",
"phpstan/phpstan": "^1.11",
"phpunit/phpunit": "^9.6",
"slim/http": "^1.3",
"slim/psr7": "^1.6",
"squizlabs/php_codesniffer": "^3.9"
"squizlabs/php_codesniffer": "^3.10",
"vimeo/psalm": "^5.24"
},
"suggest": {
"ext-simplexml": "Needed to support XML format in BodyParsingMiddleware",
@@ -1259,7 +1260,7 @@
"type": "tidelift"
}
],
"time": "2024-03-03T21:25:30+00:00"
"time": "2024-06-13T08:54:48+00:00"
},
{
"name": "slim/twig-view",
@@ -1395,16 +1396,16 @@
},
{
"name": "symfony/polyfill-ctype",
"version": "v1.29.0",
"version": "v1.30.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-ctype.git",
"reference": "ef4d7e442ca910c4764bce785146269b30cb5fc4"
"reference": "0424dff1c58f028c451efff2045f5d92410bd540"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/ef4d7e442ca910c4764bce785146269b30cb5fc4",
"reference": "ef4d7e442ca910c4764bce785146269b30cb5fc4",
"url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/0424dff1c58f028c451efff2045f5d92410bd540",
"reference": "0424dff1c58f028c451efff2045f5d92410bd540",
"shasum": ""
},
"require": {
@@ -1454,7 +1455,7 @@
"portable"
],
"support": {
"source": "https://github.com/symfony/polyfill-ctype/tree/v1.29.0"
"source": "https://github.com/symfony/polyfill-ctype/tree/v1.30.0"
},
"funding": [
{
@@ -1470,20 +1471,20 @@
"type": "tidelift"
}
],
"time": "2024-01-29T20:11:03+00:00"
"time": "2024-05-31T15:07:36+00:00"
},
{
"name": "symfony/polyfill-mbstring",
"version": "v1.29.0",
"version": "v1.30.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-mbstring.git",
"reference": "9773676c8a1bb1f8d4340a62efe641cf76eda7ec"
"reference": "fd22ab50000ef01661e2a31d850ebaa297f8e03c"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/9773676c8a1bb1f8d4340a62efe641cf76eda7ec",
"reference": "9773676c8a1bb1f8d4340a62efe641cf76eda7ec",
"url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/fd22ab50000ef01661e2a31d850ebaa297f8e03c",
"reference": "fd22ab50000ef01661e2a31d850ebaa297f8e03c",
"shasum": ""
},
"require": {
@@ -1534,7 +1535,7 @@
"shim"
],
"support": {
"source": "https://github.com/symfony/polyfill-mbstring/tree/v1.29.0"
"source": "https://github.com/symfony/polyfill-mbstring/tree/v1.30.0"
},
"funding": [
{
@@ -1550,20 +1551,20 @@
"type": "tidelift"
}
],
"time": "2024-01-29T20:11:03+00:00"
"time": "2024-06-19T12:30:46+00:00"
},
{
"name": "symfony/polyfill-php80",
"version": "v1.29.0",
"version": "v1.30.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-php80.git",
"reference": "87b68208d5c1188808dd7839ee1e6c8ec3b02f1b"
"reference": "77fa7995ac1b21ab60769b7323d600a991a90433"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/87b68208d5c1188808dd7839ee1e6c8ec3b02f1b",
"reference": "87b68208d5c1188808dd7839ee1e6c8ec3b02f1b",
"url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/77fa7995ac1b21ab60769b7323d600a991a90433",
"reference": "77fa7995ac1b21ab60769b7323d600a991a90433",
"shasum": ""
},
"require": {
@@ -1614,7 +1615,7 @@
"shim"
],
"support": {
"source": "https://github.com/symfony/polyfill-php80/tree/v1.29.0"
"source": "https://github.com/symfony/polyfill-php80/tree/v1.30.0"
},
"funding": [
{
@@ -1630,20 +1631,20 @@
"type": "tidelift"
}
],
"time": "2024-01-29T20:11:03+00:00"
"time": "2024-05-31T15:07:36+00:00"
},
{
"name": "symfony/polyfill-php81",
"version": "v1.29.0",
"version": "v1.30.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-php81.git",
"reference": "c565ad1e63f30e7477fc40738343c62b40bc672d"
"reference": "3fb075789fb91f9ad9af537c4012d523085bd5af"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/c565ad1e63f30e7477fc40738343c62b40bc672d",
"reference": "c565ad1e63f30e7477fc40738343c62b40bc672d",
"url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/3fb075789fb91f9ad9af537c4012d523085bd5af",
"reference": "3fb075789fb91f9ad9af537c4012d523085bd5af",
"shasum": ""
},
"require": {
@@ -1690,7 +1691,7 @@
"shim"
],
"support": {
"source": "https://github.com/symfony/polyfill-php81/tree/v1.29.0"
"source": "https://github.com/symfony/polyfill-php81/tree/v1.30.0"
},
"funding": [
{
@@ -1706,7 +1707,7 @@
"type": "tidelift"
}
],
"time": "2024-01-29T20:11:03+00:00"
"time": "2024-06-19T12:30:46+00:00"
},
{
"name": "twig/twig",

View File

@@ -29,6 +29,7 @@
"environment": [
"NC_DOMAIN=%NC_DOMAIN%",
"NEXTCLOUD_HOST=nextcloud-aio-nextcloud",
"APACHE_HOST=nextcloud-aio-apache",
"COLLABORA_HOST=nextcloud-aio-collabora",
"TALK_HOST=nextcloud-aio-talk",
"APACHE_PORT=%APACHE_PORT%",
@@ -203,6 +204,7 @@
"TALK_PORT=%TALK_PORT%",
"IMAGINARY_ENABLED=%IMAGINARY_ENABLED%",
"IMAGINARY_HOST=nextcloud-aio-imaginary",
"CLAMAV_MAX_SIZE=%APACHE_MAX_SIZE%",
"PHP_UPLOAD_LIMIT=%NEXTCLOUD_UPLOAD_LIMIT%",
"PHP_MEMORY_LIMIT=%NEXTCLOUD_MEMORY_LIMIT%",
"FULLTEXTSEARCH_ENABLED=%FULLTEXTSEARCH_ENABLED%",
@@ -220,7 +222,6 @@
"DOCKER_SOCKET_PROXY_ENABLED=%DOCKER_SOCKET_PROXY_ENABLED%",
"REMOVE_DISABLED_APPS=%REMOVE_DISABLED_APPS%",
"APACHE_PORT=%APACHE_PORT%",
"APACHE_IP_BINDING=%APACHE_IP_BINDING%",
"ADDITIONAL_TRUSTED_PROXY=%CADDY_IP_ADDRESS%",
"THIS_IS_AIO=true",
"IMAGINARY_SECRET=%IMAGINARY_SECRET%"
@@ -346,7 +347,8 @@
"nextcloud-aio"
],
"cap_add": [
"MKNOD"
"MKNOD",
"SYS_ADMIN"
],
"cap_drop": [
"NET_RAW"
@@ -376,6 +378,7 @@
"internal_port": "%TALK_PORT%",
"environment": [
"NC_DOMAIN=%NC_DOMAIN%",
"TALK_HOST=nextcloud-aio-talk",
"TURN_SECRET=%TURN_SECRET%",
"SIGNALING_SECRET=%SIGNALING_SECRET%",
"TZ=%TIMEZONE%",
@@ -572,6 +575,7 @@
"internal_port": "3310",
"environment": [
"TZ=%TIMEZONE%",
"MAX_SIZE=%NEXTCLOUD_UPLOAD_LIMIT%",
"CLAMD_STARTUP_TIMEOUT=90"
],
"volumes": [

View File

@@ -2,11 +2,11 @@
$domain = $_GET['domain'] ?? '';
if (strpos($domain, '.') === false) {
if (!str_contains($domain, '.')) {
http_response_code(400);
} elseif (strpos($domain, '/') !== false) {
} elseif (str_contains($domain, '/')) {
http_response_code(400);
} elseif (strpos($domain, ':') !== false) {
} elseif (str_contains($domain, ':')) {
http_response_code(400);
} elseif (filter_var($domain, FILTER_VALIDATE_DOMAIN, FILTER_FLAG_HOSTNAME) === false) {
http_response_code(400);

View File

@@ -1,2 +1,2 @@
<?xml version="1.0" encoding="UTF-8"?>
<files psalm-version="5.24.0@462c80e31c34e58cc4f750c656be3927e80e550e"/>
<files psalm-version="5.25.0@01a8eb06b9e9cc6cfb6a320bf9fb14331919d505"/>

View File

@@ -271,17 +271,17 @@ class ConfigurationManager
*/
public function SetDomain(string $domain) : void {
// Validate that at least one dot is contained
if (strpos($domain, '.') === false) {
if (!str_contains($domain, '.')) {
throw new InvalidSettingConfigurationException("Domain must contain at least one dot!");
}
// Validate that no slashes are contained
if (strpos($domain, '/') !== false) {
if (str_contains($domain, '/')) {
throw new InvalidSettingConfigurationException("Domain must not contain slashes!");
}
// Validate that no colons are contained
if (strpos($domain, ':') !== false) {
if (str_contains($domain, ':')) {
throw new InvalidSettingConfigurationException("Domain must not contain colons!");
}

View File

@@ -137,7 +137,7 @@ class DockerActionManager
} elseif($internalPort === '%TALK_PORT%') {
$internalPort = $this->configurationManager->GetTalkPort();
}
if ($internalPort !== "" && $internalPort !== 'host') {
$connection = @fsockopen($containerName, (int)$internalPort, $errno, $errstr, 0.2);
if ($connection) {
@@ -166,7 +166,7 @@ class DockerActionManager
{
$url = $this->BuildApiUrl(
sprintf(
'containers/%s/logs?stdout=true&stderr=true',
'containers/%s/logs?stdout=true&stderr=true&timestamps=true',
urlencode($id)
));
$responseBody = (string)$this->guzzleClient->get($url)->getBody();
@@ -295,8 +295,6 @@ class DockerActionManager
$replacements[1] = $this->configurationManager->GetSelectedRestoreTime();
} elseif ($out[1] === 'APACHE_PORT') {
$replacements[1] = $this->configurationManager->GetApachePort();
} elseif ($out[1] === 'APACHE_IP_BINDING') {
$replacements[1] = $this->configurationManager->GetApacheIPBinding();
} elseif ($out[1] === 'TALK_PORT') {
$replacements[1] = $this->configurationManager->GetTalkPort();
} elseif ($out[1] === 'NEXTCLOUD_MOUNT') {
@@ -438,7 +436,7 @@ class DockerActionManager
$requestBody['HostConfig']['RestartPolicy']['Name'] = $container->GetRestartPolicy();
$requestBody['HostConfig']['ReadonlyRootfs'] = $container->GetReadOnlySetting();
$exposedPorts = [];
if ($container->GetInternalPort() !== 'host') {
foreach($container->GetPorts()->GetPorts() as $value) {
@@ -478,6 +476,10 @@ class DockerActionManager
$ipBinding = $value->ipBinding;
if ($ipBinding === '%APACHE_IP_BINDING%') {
$ipBinding = $this->configurationManager->GetApacheIPBinding();
// Do not expose if AIO is in internal network mode
if ($ipBinding === '@INTERNAL') {
continue;
}
}
$portWithProtocol = $port . '/' . $protocol;
$requestBody['HostConfig']['PortBindings'][$portWithProtocol] = [
@@ -708,7 +710,7 @@ class DockerActionManager
if (!isset($imageOutput['RepoDigests'])) {
error_log('RepoDigests is not set of container ' . $containerName);
return null;
}
}
if (!is_array($imageOutput['RepoDigests'])) {
error_log('RepoDigests of ' . $containerName . ' is not an array which is not allowed!');

View File

@@ -16,7 +16,7 @@
</header>
<div class="content">
<h1>Nextcloud AIO v9.0.0</h1>
<h1>Nextcloud AIO v9.3.0</h1>
{# Add 2nd tab warning #}
<script type="text/javascript" src="second-tab-warning.js"></script>
@@ -71,7 +71,7 @@
The whole process can take a while as your containers will be updated.<br /><br />
{% endif %}
<a href="" class="button reload">Reload ↻</a><br/><br/>
If the daily bacckup should be stuck somehow, you can make it unstuck by running <strong>sudo docker exec nextcloud-aio-mastercontainer rm /mnt/docker-aio-config/data/daily_backup_running</strong> and afterwards reloading this interface.<br /><br />
If the daily backup is stuck somehow, you can unstick it by running <strong>sudo docker exec nextcloud-aio-mastercontainer rm /mnt/docker-aio-config/data/daily_backup_running</strong> and afterwards reloading this interface.<br /><br />
{% elseif isWatchtowerRunning == true %}
<span class="status running"></span> Mastercontainer update currently running. Once the update is complete the mastercontainer will restart, making it unavailable for a moment. Please wait until it's done. (<a href="/api/docker/logs?id=nextcloud-aio-watchtower" target="_blank" rel="noopener">Logs</a>)<br /><br />
<a href="" class="button reload">Reload ↻</a><br/>

View File

@@ -79,7 +79,7 @@ Included are:
## How to use this?
The following instructions are meant for installations without a web server or reverse proxy (like Apache, Nginx, Cloudflare Tunnel and else) already being in place. If you want to run AIO behind a web server or reverse proxy (like Apache, Nginx, 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).
1. Install Docker on your Linux installation by following the official documentation: https://docs.docker.com/engine/install/#server. The easiest way is installing it by **using the convenience script**:
1. Install Docker on your Linux installation by following the official documentation: https://docs.docker.com/engine/install/#supported-platforms. The easiest way is installing it by **using the convenience script**:
```sh
curl -fsSL https://get.docker.com | sudo sh
```
@@ -375,9 +375,9 @@ If you connect an external drive to your host, and choose the backup directory t
Backups can be created and restored in the AIO interface using the buttons `Create Backup` and `Restore selected backup`. Additionally, a backup check is provided that checks the integrity of your backups but it shouldn't be needed in most situations.
The backups itself get encrypted with an encryption key that gets shown to you in the AIO interface. Please save that at a safe place as you will not be able to restore from backup without this key.
The backups themselves get encrypted with an encryption key that gets shown to you in the AIO interface. Please save that at a safe place as you will not be able to restore from backup without this key.
Daily backups can get enabled after the initial backup is done. Enabling this also allows to enable an option that allows to update all containers, Nextcloud and its apps automatically.
Daily backups can get enabled after the initial backup is done. Enabling this also allows to enable an option that allows to automatically update all containers, Nextcloud and its apps.
Be aware that this solution does not back up files and folders that are mounted into Nextcloud using the external storage app - but you can add further Docker volumes and host paths that you want to back up after the initial backup is done.
@@ -668,7 +668,7 @@ You might want to adjust the Nextcloud apps that are installed upon the first st
### How to add OS packages permanently to the Nextcloud container?
Some Nextcloud apps require additional external dependencies that must be bundled within Nextcloud container in order to work correctly. As we cannot put each and every dependency for all apps into the container - as this would make the project quickly unmaintainable - there is an official way in which you can add additional dependencies into the Nextcloud container. However note that doing this is disrecommended since we do not test Nextcloud apps that require external dependencies.
You can do so by adding `--env NEXTCLOUD_ADDITIONAL_APKS="imagemagick dependency2 dependency3"` to the docker run command of the mastercontainer (but before the last line `nextcloud/all-in-one:latest`! If it was started already, you will need to stop the mastercontainer, remove it (no data will be lost) and recreate it using the docker run command that you initially used) and customize the value to your fitting. It must be a string with small letters a-z, digits 0-9, spaces, dots and hyphens or '_'. You can find available packages here: https://pkgs.alpinelinux.org/packages?branch=v3.19. By default `imagemagick` is added. If you want to keep it, you need to specify it as well.
You can do so by adding `--env NEXTCLOUD_ADDITIONAL_APKS="imagemagick dependency2 dependency3"` to the docker run command of the mastercontainer (but before the last line `nextcloud/all-in-one:latest`! If it was started already, you will need to stop the mastercontainer, remove it (no data will be lost) and recreate it using the docker run command that you initially used) and customize the value to your fitting. It must be a string with small letters a-z, digits 0-9, spaces, dots and hyphens or '_'. You can find available packages here: https://pkgs.alpinelinux.org/packages?branch=v3.20. By default `imagemagick` is added. If you want to keep it, you need to specify it as well.
### How to add PHP extensions permanently to the Nextcloud container?
Some Nextcloud apps require additional php extensions that must be bundled within Nextcloud container in order to work correctly. As we cannot put each and every dependency for all apps into the container - as this would make the project quickly unmaintainable - there is an official way in which you can add additional php extensions into the Nextcloud container. However note that doing this is disrecommended since we do not test Nextcloud apps that require additional php extensions.
@@ -824,3 +824,6 @@ Afterwards apply the correct permissions with `sudo chown root:root /root/automa
1. Open the cronjob with `sudo crontab -u root -e` (and choose your editor of choice if not already done. I'd recommend nano).
1. Add the following new line to the crontab if not already present: `0 5 * * * /root/automatic-updates.sh` which will run the script at 05:00 each day.
1. save and close the crontab (when using nano the shortcuts for this are `Ctrl + o` then `Enter` to save, and close the editor with `Ctrl + x`).
### Securing the AIO interface from unauthorized ACME challenges
[By design](https://github.com/nextcloud/all-in-one/discussions/4882#discussioncomment-9858384), Caddy that runs inside the mastercontainer, which handles automatic TLS certificate generation for the AIO interface, is vulnerable to receiving DNS challenges for arbitrary hostnames from anyone on the internet. While this does not compromise your server's security, it can result in cluttered logs and rejected certificate renewal attempts due to rate limit abuse. To mitigate this issue, it is recommended to place the AIO interface behind a VPN and/or limit its public exposure.

View File

@@ -91,7 +91,7 @@ Add this as a new Apache site config:
RewriteCond %{HTTP:Upgrade} websocket [NC]
RewriteCond %{HTTP:Connection} upgrade [NC]
RewriteCond %{THE_REQUEST} "^[a-zA-Z]+ /(.*) HTTP/\d+(\.\d+)?$"
RewriteRule .? "ws://localhost:11000/%1" [P,L]
RewriteRule .? "ws://localhost:11000/%1" [P,L,UnsafeAllow3F]
# Enable h2, h2c and http1.1
Protocols h2 h2c http/1.1