Compare commits

...

282 Commits

Author SHA1 Message Date
Simon L
312b65ca84 Merge pull request #3179 from nextcloud/aio-helm-update
Helm Chart updates
2023-08-17 09:23:19 +02:00
szaimen
f05e602574 Helm Chart updates
Signed-off-by: GitHub <noreply@github.com>
2023-08-17 07:22:48 +00:00
Simon L
3988351882 fix detail
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-08-17 09:14:39 +02:00
Simon L
4a87a5cde8 fix update-helm script
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-08-17 09:07:11 +02:00
Simon L
1771a72c0e Merge pull request #3151 from dienteperro/main
Review in full, fixed some minor typos and phrases
2023-08-14 08:43:20 +02:00
dienteperro
aae60363b0 Update readme.md
Rewrite some sentences with minor typos.

Signed-off-by: dienteperro <dienteperro1207@yahoo.com>
2023-08-13 18:59:30 -04:00
dienteperro
e25bf4b4ca Update readme.md
Added comma

Signed-off-by: dienteperro <dienteperro1207@yahoo.com>
2023-08-13 17:44:29 -04:00
dienteperro
a50456591d Update readme.md
Minor fix, comma added

Signed-off-by: dienteperro <dienteperro1207@yahoo.com>
2023-08-13 17:41:43 -04:00
dienteperro
3e0c8713cb Update readme.md
Improved sentence.

Signed-off-by: dienteperro <dienteperro1207@yahoo.com>
2023-08-13 17:35:19 -04:00
dienteperro
d70cc3b171 Update readme.md
Added commas to sentence.

Signed-off-by: dienteperro <dienteperro1207@yahoo.com>
2023-08-13 17:33:27 -04:00
dienteperro
2bcdd2af6e Update readme.md
Fixed minor typo

Signed-off-by: dienteperro <dienteperro1207@yahoo.com>
2023-08-13 17:32:20 -04:00
Simon L
ee86f23856 Merge pull request #3150 from dienteperro/dienteperro-patch-1
Update readme.md
2023-08-13 21:25:37 +02:00
dienteperro
ff6f5d4909 Merge pull request #1 from dienteperro/dienteperro-patch-1
Update readme.md
2023-08-13 14:59:33 -04:00
dienteperro
aec119d971 Update readme.md
Fix minor typo.

Signed-off-by: dienteperro <dienteperro1207@yahoo.com>
2023-08-13 14:58:58 -04:00
Simon L
c6c1effa6d adjust wording
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-08-11 10:09:49 +02:00
Simon L
7ba3548766 Merge pull request #3141 from nextcloud/enh/noid/name-container
name service in compose like container
2023-08-10 17:12:56 +02:00
Simon L
1989f27b71 name service in compose like container
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-08-10 16:57:58 +02:00
Simon L
1b1626fe56 fix details around logging of new domain-validator
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-08-10 13:40:11 +02:00
Simon L
391d838416 Merge pull request #3082 from nextcloud/dependabot/docker/Containers/mastercontainer/caddy-2.7.2-alpine
Bump caddy from 2.6.4-alpine to 2.7.2-alpine in /Containers/mastercontainer
2023-08-10 13:20:53 +02:00
Simon L
725bbb7c05 Merge pull request #3133 from nextcloud/enh/noid/add-domain-validator
add domain-validator
2023-08-10 13:20:37 +02:00
Simon L
a63e0b9b1b address review
Signed-off-by: Simon L <szaimen@e.mail.de>

Co-authored-by: Zoey <zoey@z0ey.de>
Signed-off-by: Simon L. <szaimen@e.mail.de>
2023-08-10 13:02:18 +02:00
Simon L
f00aaf14cd add domain-validator
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-08-10 11:36:39 +02:00
Simon L
c646507c60 Merge pull request #3132 from nextcloud/enh/noid/revert-3021
Revert "https://github.com/nextcloud/all-in-one/pull/3021" partially
2023-08-10 10:40:31 +02:00
Simon L
369226f9df Revert "https://github.com/nextcloud/all-in-one/pull/3021" partially
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-08-10 10:38:27 +02:00
Simon L
bc4bdfdc99 name file correctly
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-08-10 10:14:27 +02:00
Simon L
3b9e132f11 fix spacing
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-08-10 10:08:22 +02:00
Simon L
6c3b413006 fix typo
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-08-10 10:06:13 +02:00
Simon L
06228cd616 increase to 7.0.0
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-08-10 09:17:37 +02:00
Simon L
a6333eb5e9 Merge pull request #3131 from nextcloud/enh/2740/davstorage-timeout
set davstorage.request_timeout to the same value like PHP_MAX_TIME
2023-08-10 09:16:27 +02:00
Simon L
5f57fcda85 set davstorage.request_timeout to the same value like PHP_MAX_TIME
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-08-10 09:14:07 +02:00
Simon L
620a800608 Merge pull request #3130 from nextcloud/enh/noid/udpate-nc
update Nextcloud to 27.0.2
2023-08-10 09:10:52 +02:00
Simon L
04be2a780d update app und containers.twig as well
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-08-10 09:07:39 +02:00
Simon L
68d54176d5 update Nextcloud to 27.0.2
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-08-10 09:04:57 +02:00
Simon L
510056d34a Merge pull request #3128 from bustapipes/main
Use .Values in Helm templates
2023-08-10 08:57:36 +02:00
BP
c128b6764e Update the source of the templates
Signed-off-by: BP <busta.pipes@gmail.com>
2023-08-09 17:55:28 -06:00
BP
cdb16b0411 Use .Values in Helm templates
Signed-off-by: BP <busta.pipes@gmail.com>
2023-08-09 17:55:28 -06:00
Simon L
e8ab2c7026 Merge pull request #3121 from nextcloud/enh/noid/tz-was-moved
UTC was moved to Etc/UTC
2023-08-09 14:58:14 +02:00
Simon L
03e6f11a26 add hint what the default is
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-08-09 14:51:46 +02:00
Simon L
7fb3e4c4fa Merge pull request #3118 from nextcloud/fix-compose
update update-yaml.sh follow-up
2023-08-09 14:48:34 +02:00
Simon L
e267fdd8d5 Merge pull request #3126 from nextcloud/aio-yaml-update
Yaml updates
2023-08-09 14:47:07 +02:00
szaimen
db860d24af Yaml updates
Signed-off-by: GitHub <noreply@github.com>
2023-08-09 12:46:21 +00:00
Simon L
f280f09b6c try to fix detail
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-08-09 14:45:38 +02:00
Simon L
d898508bf6 Merge pull request #3122 from nextcloud/aio-yaml-update
Yaml updates
2023-08-09 14:33:06 +02:00
Simon L
542caa2450 Merge pull request #3124 from nextcloud/talk-container-update
talk update
2023-08-09 14:32:33 +02:00
Simon L
18a945381c Merge pull request #3123 from nextcloud/aio-dependency-update
PHP dependency updates
2023-08-09 14:32:16 +02:00
Simon L
49ab219f78 Merge pull request #3125 from nextcloud/dependabot/docker/Containers/imaginary/golang-1.21.0-alpine3.18
Bump golang from 1.20.7-alpine3.18 to 1.21.0-alpine3.18 in /Containers/imaginary
2023-08-09 14:31:49 +02:00
dependabot[bot]
e79f0678b5 Bump golang in /Containers/imaginary
Bumps golang from 1.20.7-alpine3.18 to 1.21.0-alpine3.18.

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-09 12:14:19 +00:00
szaimen
7f1b262545 talk-update automated change
Signed-off-by: GitHub <noreply@github.com>
2023-08-09 12:03:18 +00:00
szaimen
d35aa3df23 php dependency updates
Signed-off-by: GitHub <noreply@github.com>
2023-08-09 12:02:31 +00:00
szaimen
04910a5b3b Yaml updates
Signed-off-by: GitHub <noreply@github.com>
2023-08-09 12:02:26 +00:00
Simon L
872ee180c7 UTC was moved to Etc/UTC
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-08-09 12:13:15 +02:00
Zoey
f1e9e9bf30 readd
Signed-off-by: Zoey <zoey@z0ey.de>
2023-08-09 11:36:56 +02:00
Zoey
da4ced725f fix https://github.com/nextcloud/all-in-one/pull/3096#issuecomment-1670940790
Signed-off-by: Zoey <zoey@z0ey.de>
2023-08-09 11:34:37 +02:00
Simon L
af7f60cd9f Merge pull request #3071 from nextcloud/moztls
include mozilla tls confs in reverse proxy guide
2023-08-09 11:16:21 +02:00
Simon L
de7d50fc03 fix detail with tmpfs mode
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-08-09 11:15:14 +02:00
Zoey
e5e41ef6ed include mozilla tls confs in reverse proxy guide
Signed-off-by: Zoey <zoey@z0ey.de>
2023-08-09 11:08:13 +02:00
Simon L
3302a048c9 Merge pull request #3117 from nextcloud/revert-3048-enh/noid/make-fts-read-only
Revert "make FTS read-only"
2023-08-09 10:56:06 +02:00
Simon L
e6b9f23e70 Revert "make FTS read-only" 2023-08-09 10:54:50 +02:00
Simon L
b9099d8bf0 Merge pull request #3018 from nextcloud/enh/noid/adjust-mastercontainer-cmd
mastercontainer - run supervisord directly and not as cmd option
2023-08-09 10:11:39 +02:00
Simon L
4c2acbb747 Merge pull request #3027 from nextcloud/enh/noid/reload-server-error
reload also in case of server error
2023-08-09 10:11:30 +02:00
Simon L
d3d674531d Merge pull request #3048 from nextcloud/enh/noid/make-fts-read-only
make FTS read-only
2023-08-09 10:11:01 +02:00
Simon L
3064bd56ab reload also in case of server error
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-08-09 10:10:01 +02:00
Simon L
afcd9cd30d Merge pull request #3047 from nextcloud/enh/noid/add-executable-bit
add executable bit on tmpfs for nextcloud container
2023-08-09 10:04:19 +02:00
Simon L
dbb395f68c Merge pull request #3068 from nextcloud/dependabot/github_actions/azure/setup-helm-3.5
Bump azure/setup-helm from 3.1 to 3.5
2023-08-09 09:59:23 +02:00
Simon L
b48c61142f Merge pull request #3080 from nextcloud/dependabot/composer/php/guzzlehttp/psr7-2.6.0
Bump guzzlehttp/psr7 from 2.5.0 to 2.6.0 in /php
2023-08-09 09:59:03 +02:00
Simon L
f93085f161 update OO
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-08-09 09:58:42 +02:00
Simon L
b33eae44bb Merge pull request #3070 from nextcloud/dependabot/docker/Containers/imaginary/golang-1.20.7-alpine3.18
Bump golang from 1.20.6-alpine3.18 to 1.20.7-alpine3.18 in /Containers/imaginary
2023-08-09 09:57:10 +02:00
dependabot[bot]
2a8dc50232 Bump guzzlehttp/psr7 from 2.5.0 to 2.6.0 in /php
Bumps [guzzlehttp/psr7](https://github.com/guzzle/psr7) from 2.5.0 to 2.6.0.
- [Release notes](https://github.com/guzzle/psr7/releases)
- [Changelog](https://github.com/guzzle/psr7/blob/2.6/CHANGELOG.md)
- [Commits](https://github.com/guzzle/psr7/compare/2.5.0...2.6.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-09 09:55:34 +02:00
dependabot[bot]
dfe5109f42 Bump caddy in /Containers/mastercontainer
Bumps caddy from 2.6.4-alpine to 2.7.2-alpine.

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-09 07:55:16 +00:00
Simon L
cc90d3bc66 Merge pull request #3081 from nextcloud/dependabot/docker/Containers/apache/caddy-2.7.2-alpine
Bump caddy from 2.6.4-alpine to 2.7.2-alpine in /Containers/apache
2023-08-09 09:54:37 +02:00
Simon L
3a66c329ec Merge pull request #3096 from nextcloud/fix-compose
Update update-yaml.sh
2023-08-09 09:53:57 +02:00
Simon L
51ad81066b Merge pull request #3102 from nextcloud/dependabot/docker/Containers/nextcloud/php-8.1.22-fpm-alpine3.18
Bump php from 8.1.21-fpm-alpine3.18 to 8.1.22-fpm-alpine3.18 in /Containers/nextcloud
2023-08-09 09:53:08 +02:00
Simon L
79e564949d Merge pull request #3105 from nextcloud/dependabot/docker/Containers/talk/nats-2.9.21-scratch
Bump nats from 2.9.20-scratch to 2.9.21-scratch in /Containers/talk
2023-08-09 09:52:14 +02:00
Simon L
f8297b5dea Merge pull request #3106 from nextcloud/dependabot/docker/Containers/talk/alpine-3.18.3
Bump alpine from 3.18.2 to 3.18.3 in /Containers/talk
2023-08-09 09:51:57 +02:00
dependabot[bot]
78066a8a3b Bump alpine from 3.18.2 to 3.18.3 in /Containers/talk
Bumps alpine from 3.18.2 to 3.18.3.

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-09 07:51:43 +00:00
Simon L
31c78d03b7 Merge pull request #3107 from nextcloud/dependabot/docker/Containers/watchtower/alpine-3.18.3
Bump alpine from 3.18.2 to 3.18.3 in /Containers/watchtower
2023-08-09 09:51:42 +02:00
Simon L
40cc719d0f Merge pull request #3108 from nextcloud/dependabot/docker/Containers/borgbackup/alpine-3.18.3
Bump alpine from 3.18.2 to 3.18.3 in /Containers/borgbackup
2023-08-09 09:51:26 +02:00
Simon L
f2b7f82890 Merge pull request #3109 from nextcloud/dependabot/docker/Containers/domaincheck/alpine-3.18.3
Bump alpine from 3.18.2 to 3.18.3 in /Containers/domaincheck
2023-08-09 09:51:07 +02:00
Simon L
d77c8f7fb3 Merge pull request #3110 from nextcloud/dependabot/docker/Containers/imaginary/alpine-3.18.3
Bump alpine from 3.18.2 to 3.18.3 in /Containers/imaginary
2023-08-09 09:50:52 +02:00
Simon L
6b8786a1f7 Merge pull request #3115 from nextcloud/automated/noid/psalm-baseline-update
[Automated] Update psalm-baseline.xml
2023-08-09 08:56:41 +02:00
Simon L
8526af5754 try to fix psalm
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-08-09 08:54:11 +02:00
nextcloud-command
25619174d6 Update psalm baseline
Signed-off-by: GitHub <noreply@github.com>
2023-08-09 06:36:54 +00:00
Simon L
6341ccdf54 do not open multiple update-baseline prs
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-08-09 08:35:42 +02:00
Simon L
0ad40bd3d7 Merge pull request #3113 from nextcloud/aio-yaml-update
Yaml updates
2023-08-08 20:43:47 +02:00
szaimen
76a40d97bc Yaml updates
Signed-off-by: GitHub <noreply@github.com>
2023-08-08 18:41:49 +00:00
Zoey
791c381706 fix jq command
Signed-off-by: Zoey <zoey@z0ey.de>
2023-08-08 20:38:24 +02:00
dependabot[bot]
c1fed20f31 Bump alpine from 3.18.2 to 3.18.3 in /Containers/imaginary
Bumps alpine from 3.18.2 to 3.18.3.

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-08 13:05:24 +00:00
dependabot[bot]
be973ed1ba Bump alpine from 3.18.2 to 3.18.3 in /Containers/domaincheck
Bumps alpine from 3.18.2 to 3.18.3.

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-08 12:47:42 +00:00
dependabot[bot]
0b4a42679d Bump alpine from 3.18.2 to 3.18.3 in /Containers/borgbackup
Bumps alpine from 3.18.2 to 3.18.3.

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-08 12:36:21 +00:00
dependabot[bot]
eed6b44cd8 Bump alpine from 3.18.2 to 3.18.3 in /Containers/watchtower
Bumps alpine from 3.18.2 to 3.18.3.

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-08 12:14:59 +00:00
dependabot[bot]
7bb10d32c7 Bump nats from 2.9.20-scratch to 2.9.21-scratch in /Containers/talk
Bumps nats from 2.9.20-scratch to 2.9.21-scratch.

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-08 12:12:37 +00:00
dependabot[bot]
f4667a2dec Bump php in /Containers/nextcloud
Bumps php from 8.1.21-fpm-alpine3.18 to 8.1.22-fpm-alpine3.18.

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-07 12:28:55 +00:00
Zoey
2ce9d26cf9 Update update-yaml.sh
Signed-off-by: Zoey <zoey@z0ey.de>
2023-08-06 13:09:05 +02:00
dependabot[bot]
d12a3984ab Bump caddy from 2.6.4-alpine to 2.7.2-alpine in /Containers/apache
Bumps caddy from 2.6.4-alpine to 2.7.2-alpine.

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-04 12:36:25 +00:00
dependabot[bot]
592670d448 Bump golang in /Containers/imaginary
Bumps golang from 1.20.6-alpine3.18 to 1.20.7-alpine3.18.

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-02 12:33:07 +00:00
dependabot[bot]
a40ffd760f Bump azure/setup-helm from 3.1 to 3.5
Bumps [azure/setup-helm](https://github.com/azure/setup-helm) from 3.1 to 3.5.
- [Release notes](https://github.com/azure/setup-helm/releases)
- [Commits](https://github.com/azure/setup-helm/compare/v3.1...v3.5)

---
updated-dependencies:
- dependency-name: azure/setup-helm
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-02 12:15:18 +00:00
Simon L
3d868d4457 add executable bit on tmpfs for nextcloud container
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-29 15:30:22 +02:00
Simon L
7af85a6982 make FTS read-only
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-28 17:14:49 +02:00
Simon L
e8ef49c42f Merge pull request #3045 from nextcloud/talk-container-update
talk update
2023-07-28 14:43:47 +02:00
szaimen
b65ec5bb69 talk-update automated change
Signed-off-by: GitHub <noreply@github.com>
2023-07-28 12:05:10 +00:00
Simon L
4253ccd43b Merge pull request #3043 from nextcloud/aio-helm-update
Helm Chart updates
2023-07-28 11:41:17 +02:00
Simon L
400ba74f97 Merge pull request #3000 from nextcloud/enh/noid/allow-configure-hpb-domain
talk-recording - allow to set hpb_domain and nc_domain independently
2023-07-28 11:39:13 +02:00
Simon L
0c4885323d Merge pull request #3036 from nextcloud/dependabot/docker/Containers/collabora/collabora/code-23.05.2.2.1
Bump collabora/code from 23.05.1.3.1 to 23.05.2.2.1 in /Containers/collabora
2023-07-28 11:37:59 +02:00
Simon L
48a9699f42 Merge pull request #3032 from nextcloud/dependabot/docker/Containers/mastercontainer/docker-24.0.5-cli
Bump docker from 24.0.4-cli to 24.0.5-cli in /Containers/mastercontainer
2023-07-28 11:36:50 +02:00
Simon L
828190e242 Merge pull request #3021 from nextcloud/enh/noid/persistant-db-connections
make database connections persistant
2023-07-28 11:36:02 +02:00
Simon L
4ac2dbd7d1 Merge pull request #3019 from nextcloud/aio-dependency-update
PHP dependency updates
2023-07-28 11:34:17 +02:00
Simon L
4b87a5d38c remove exec
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-28 11:32:26 +02:00
dependabot[bot]
23e0a402d0 Bump docker from 24.0.4-cli to 24.0.5-cli in /Containers/mastercontainer
Bumps docker from 24.0.4-cli to 24.0.5-cli.

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-28 09:29:19 +00:00
Simon L
97a0542ef6 Merge pull request #3005 from nextcloud/dependabot/docker/Containers/fulltextsearch/elasticsearch-8.8.1
Bump elasticsearch from 8.8.0 to 8.8.1 in /Containers/fulltextsearch
2023-07-28 11:28:30 +02:00
szaimen
c2505e8976 Helm Chart updates
Signed-off-by: GitHub <noreply@github.com>
2023-07-28 09:08:22 +00:00
dependabot[bot]
4bb57f8055 Bump elasticsearch from 8.8.0 to 8.8.1 in /Containers/fulltextsearch
Bumps elasticsearch from 8.8.0 to 8.8.1.

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-28 09:03:06 +00:00
Simon L
6d2272cf11 Merge pull request #3002 from nextcloud/aio-yaml-update
Yaml updates
2023-07-28 11:02:18 +02:00
Simon L
42b065b0c1 Revert "make database connections persistant"
This reverts commit dace781b4e.
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-27 14:39:04 +02:00
dependabot[bot]
3a6cf31c4d Bump collabora/code in /Containers/collabora
Bumps collabora/code from 23.05.1.3.1 to 23.05.2.2.1.

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-26 13:00:48 +00:00
szaimen
7125b541ba php dependency updates
Signed-off-by: GitHub <noreply@github.com>
2023-07-26 12:02:32 +00:00
szaimen
7de9aae2b8 Yaml updates
Signed-off-by: GitHub <noreply@github.com>
2023-07-24 12:03:37 +00:00
Simon L
dace781b4e make database connections persistant
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-24 01:17:40 +02:00
Simon L
12f55056ee mastercontainer - run supervisord directly and not as cmd option
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-23 17:15:26 +02:00
Simon L
b076d5ea1a adjust commit message for dependency updates to php
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-23 16:45:58 +02:00
Simon L
dc017401bb Merge pull request #3017 from sheikhmishar/patch-1
Update manual-upgrade.md shebang
2023-07-23 16:17:02 +02:00
Syed Mishar Newaz
5c01be9852 Update manual-upgrade.md shebang
There was an exclamation (!) missing from shebang. As a result, execution of this script could result in unexpected behaviour

Signed-off-by: Syed Mishar Newaz <misharex.sezan@gmail.com>
2023-07-23 19:23:57 +06:00
Simon L
ff836c4689 talk-recording - allow to set hpb_domain and nc_domain independently
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-21 11:32:44 +02:00
Simon L
f86032a7e4 increase to 6.4.0
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-21 00:45:43 +02:00
Simon L
2f842e7266 also add it to libusrtctp to normal container
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-20 18:11:31 +02:00
Simon L
2c26a1957c fix compiling janus with datachannel support
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-20 17:52:30 +02:00
Simon L
5b7c9a096f fix bind propagation
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-20 16:44:24 +02:00
Simon L
86f606b407 remove cr release notes again since they dont work correctly
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-20 16:10:59 +02:00
Simon L
dc36781035 Merge pull request #2958 from nextcloud/dependabot/docker/Containers/talk/nats-2.9.20-scratch
Bump nats from 2.9.19-scratch to 2.9.20-scratch in /Containers/talk
2023-07-20 16:10:03 +02:00
Simon L
00557fecd2 Merge pull request #2601 from nextcloud/enh/2585/volume-mounts
set NEXTCLOUD_MOUNT to rshared
2023-07-20 16:07:48 +02:00
dependabot[bot]
de14dd2052 Bump nats from 2.9.19-scratch to 2.9.20-scratch in /Containers/talk
Bumps nats from 2.9.19-scratch to 2.9.20-scratch.

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-20 14:05:21 +00:00
Simon L
40dfd4cdf1 Merge pull request #2998 from nextcloud/aio-helm-update
Helm Chart updates
2023-07-20 16:04:41 +02:00
szaimen
fb6ca4b6af Helm Chart updates
Signed-off-by: GitHub <noreply@github.com>
2023-07-20 13:54:51 +00:00
Simon L
b5831bf346 Merge pull request #2983 from nextcloud/enh/noid/display-warning-domaincheck
display warning if domaincheck container could not be started instead of bugging out
2023-07-20 15:54:39 +02:00
Simon L
c7363d9ec1 Merge pull request #2981 from nextcloud/enh/noid/make-tmp-a-tmpfs
nextcloud container - make /tmp a tmpfs
2023-07-20 15:54:29 +02:00
Simon L
9cdcb6be92 Merge pull request #2971 from nextcloud/enh/noid/remove-cgi-bin
remove cgi-bin scripts
2023-07-20 15:54:18 +02:00
Simon L
5005f09dea Merge pull request #2700 from nextcloud/enh/2332/update-es-to-8
update to ES 8 and add necessary adjustements to its config
2023-07-20 15:54:05 +02:00
Simon L
a51ad39dee Merge pull request #2880 from nextcloud/enh/noid/talk-recording-allow-all
talk-recording - set allow_all and skip_verify via env
2023-07-20 15:53:22 +02:00
Simon L
a262d1f210 add HPB_PATH
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-20 15:52:45 +02:00
Simon L
0c5cb7de25 also allow to adjust the protocol
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-20 15:52:45 +02:00
Simon L
7bb7545972 talk-recording - set allow_all and skip_verify via env
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-20 15:52:45 +02:00
Simon L
2399728731 Merge pull request #2886 from nextcloud/janus-0.x
build janus 0.x
2023-07-20 15:49:19 +02:00
Simon L
d91538dd78 Merge pull request #2937 from nextcloud/aio-yaml-update
Yaml updates
2023-07-20 15:43:52 +02:00
Simon L
8d77e179ab Merge pull request #2995 from nextcloud/nextcloud-container-update
Nextcloud update
2023-07-20 15:40:58 +02:00
Simon L
0406f91122 Merge pull request #2994 from nextcloud/talk-container-update
talk update
2023-07-20 15:40:39 +02:00
szaimen
1afbfdc9c5 nextcloud-update automated change
Signed-off-by: GitHub <noreply@github.com>
2023-07-20 12:08:12 +00:00
szaimen
91bac10c9a talk-update automated change
Signed-off-by: GitHub <noreply@github.com>
2023-07-20 12:03:06 +00:00
szaimen
f56682b774 Yaml updates
Signed-off-by: GitHub <noreply@github.com>
2023-07-20 12:02:53 +00:00
Simon L
4065ab659c add explanation to namespace
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-19 17:08:17 +02:00
Simon L
7824060a6c set NEXTCLOUD_MOUNT to rshared
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-19 15:40:31 +02:00
Simon L
7ab1e951f5 modify git clone command and adjust indentation
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-19 15:21:40 +02:00
Zoey
a529fb9b39 Update Containers/talk/Dockerfile
Co-authored-by: Simon L. <szaimen@e.mail.de>
Signed-off-by: Zoey <zoey@z0ey.de>
2023-07-19 15:15:13 +02:00
Simon L
91ee3495e1 move each dependency to a new line
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-19 15:04:42 +02:00
Zoey
77dbc79115 build janus 0.x
```
Compiler:                  gcc
libsrtp version:           2.x
SSL/crypto library:        OpenSSL
DTLS set-timeout:          not available
Mutex implementation:      GMutex (native futex on Linux)
DataChannels support:      no
Recordings post-processor: no
TURN REST API client:      no
Doxygen documentation:     no
Transports:
    REST (HTTP/HTTPS):     no
    WebSockets:            no
    RabbitMQ:              no
    MQTT:                  no
    Unix Sockets:          yes
    Nanomsg:               no
Plugins:
    Echo Test:             yes
    Streaming:             yes
    Video Call:            yes
    SIP Gateway:           no
    NoSIP (RTP Bridge):    yes
    Audio Bridge:          no
    Video Room:            yes
    Voice Mail:            no
    Record&Play:           yes
    Text Room:             yes
    Lua Interpreter:       no
    Duktape Interpreter:   no
Event handlers:
    Sample event handler:  no
    WebSocket ev. handler: no
    RabbitMQ event handler:no
    MQTT event handler:    no
    Nanomsg event handler: no
    GELF event handler:    yes
External loggers:
    JSON file logger:      no
JavaScript modules:        no
```

Signed-off-by: Zoey <zoey@z0ey.de>
2023-07-19 15:01:53 +02:00
Simon L
54d9181f14 display warning if domaincheck container could not be started instead of bugging out
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-19 14:37:48 +02:00
Simon L
7c38050f58 adjust a detail
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-19 14:12:13 +02:00
Simon L
e4f68f7636 remove FTS_PASSWORD again
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-19 14:10:24 +02:00
Simon L
d2be89c502 nextcloud container - make tmp a tmpfs
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-19 14:03:02 +02:00
Simon L
70b46093ab Merge pull request #2975 from nextcloud/enh/noid/adjust-helm-update
adjust helm-update script
2023-07-18 17:29:09 +02:00
Simon L
3dce533874 adjust helm-update script
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-18 17:27:35 +02:00
Simon L
87a2d6fd8e remove cgi-bin scripts
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-17 09:51:43 +02:00
Simon L
c5697a8637 temporarily disable apcu_clear_cache again
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-14 09:22:36 +02:00
Simon L
71481cd731 fix remaining problem with apache container
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-13 15:44:27 +02:00
Simon L
8bf8e3f562 fix starting of apache
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-13 15:18:32 +02:00
Simon L
b1b96a5d8c fix apache build
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-13 15:01:28 +02:00
Simon L
7c55c449b8 Merge pull request #2952 from nextcloud/enh/noid/revert-collabora-read-only
Revert "make collabora container read-only"
2023-07-13 14:57:26 +02:00
Simon L
3e3dbf26b5 Revert "make collabora container read-only"
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-13 14:55:56 +02:00
Simon L
9a1de583c6 try to fix further stuff
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-13 14:54:45 +02:00
Simon L
4a60b4d004 a few fixes
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-13 14:40:51 +02:00
Simon L
6bab59c5f9 increase to 6.3.0
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-13 14:19:28 +02:00
Simon L
1d67da4bd5 Merge pull request #2874 from nextcloud/enh/2506/apache
make apache container read-only
2023-07-13 14:18:49 +02:00
Simon L
2d0b92db77 make apache container read-only
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-13 13:55:20 +02:00
Simon L
6272d8d223 Merge pull request #2876 from nextcloud/enh/2506/talk-recording
make talk-recording read-only
2023-07-13 12:16:28 +02:00
Simon L
d5f309df3a Merge pull request #2875 from nextcloud/enh/2506/talk
make talk container read-only
2023-07-13 12:15:58 +02:00
Simon L
bb63abd8a6 Merge pull request #2872 from nextcloud/enh/2506/collabora
make collabora container read-only
2023-07-13 12:14:26 +02:00
Simon L
581456b450 Merge pull request #2871 from nextcloud/enh/2506/postgresql
make postgresql container read-only
2023-07-13 12:13:56 +02:00
Simon L
554cb34d74 Merge pull request #2870 from nextcloud/enh/2506/domaincheck
make domaincheck container read-only
2023-07-13 12:13:28 +02:00
Simon L
ea46ed4095 move showpassword to global scope
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-13 12:01:46 +02:00
Simon L
9f77ac6c78 helm - generate release notes
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-12 16:11:42 +02:00
Simon L
2c913a676a Merge pull request #2944 from nextcloud/dependabot/docker/Containers/collabora/collabora/code-23.05.1.3.1
Bump collabora/code from 23.05.1.2.1 to 23.05.1.3.1 in /Containers/collabora
2023-07-12 14:53:17 +02:00
dependabot[bot]
2e0a741575 Bump collabora/code in /Containers/collabora
Bumps collabora/code from 23.05.1.2.1 to 23.05.1.3.1.

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-12 12:36:35 +00:00
Simon L
16c60f1530 Merge pull request #2943 from nextcloud/dependabot/docker/Containers/imaginary/golang-1.20.6-alpine3.18
Bump golang from 1.20.5-alpine3.18 to 1.20.6-alpine3.18 in /Containers/imaginary
2023-07-12 14:23:07 +02:00
dependabot[bot]
69a3b365e5 Bump golang in /Containers/imaginary
Bumps golang from 1.20.5-alpine3.18 to 1.20.6-alpine3.18.

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-12 12:11:46 +00:00
Simon L
4e201c0dab Merge pull request #2941 from nextcloud/dependabot/docker/Containers/nextcloud/php-8.1.21-fpm-alpine3.18
Bump php from 8.1.20-fpm-alpine3.18 to 8.1.21-fpm-alpine3.18 in /Containers/nextcloud
2023-07-11 14:59:59 +02:00
dependabot[bot]
6550e012c3 Bump php in /Containers/nextcloud
Bumps php from 8.1.20-fpm-alpine3.18 to 8.1.21-fpm-alpine3.18.

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-11 12:59:19 +00:00
Simon L
113a00d2d2 Merge pull request #2940 from nextcloud/dependabot/docker/Containers/redis/redis-7.0.12-alpine
Bump redis from 7.0.11-alpine to 7.0.12-alpine in /Containers/redis
2023-07-11 14:58:34 +02:00
Simon L
17b01980f4 Merge pull request #2939 from nextcloud/dependabot/docker/Containers/mastercontainer/docker-24.0.4-cli
Bump docker from 24.0.3-cli to 24.0.4-cli in /Containers/mastercontainer
2023-07-11 14:58:21 +02:00
Simon L
8993da2632 Merge pull request #2938 from nextcloud/dependabot/docker/Containers/mastercontainer/php-8.2.8-fpm-alpine3.18
Bump php from 8.2.7-fpm-alpine3.18 to 8.2.8-fpm-alpine3.18 in /Containers/mastercontainer
2023-07-11 14:58:06 +02:00
dependabot[bot]
04e2872669 Bump redis from 7.0.11-alpine to 7.0.12-alpine in /Containers/redis
Bumps redis from 7.0.11-alpine to 7.0.12-alpine.

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-11 12:33:20 +00:00
dependabot[bot]
48239ef9fa Bump docker from 24.0.3-cli to 24.0.4-cli in /Containers/mastercontainer
Bumps docker from 24.0.3-cli to 24.0.4-cli.

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-11 12:32:11 +00:00
dependabot[bot]
c8e2bfd7ba Bump php in /Containers/mastercontainer
Bumps php from 8.2.7-fpm-alpine3.18 to 8.2.8-fpm-alpine3.18.

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-11 12:32:07 +00:00
Simon L
86bb1f6a7c Merge pull request #2931 from notEvil/i2921
Fix cp command in migration.md
2023-07-10 17:22:40 +02:00
notEvil
f10b5baee9 Fixes cp command in migration.md
Signed-off-by: notEvil <not_evil@rappold1.at>
2023-07-10 16:49:04 +02:00
Simon L
37ebc38b19 Merge pull request #2922 from nextcloud/enh/noid/coturn-pin-alpine-version
coturn - pin alpine version correctly
2023-07-10 16:48:18 +02:00
Simon L
6f3f87b24c Merge pull request #2930 from nextcloud/enh/noid/remove-dd-warning
Remove warning about Docker Desktop v4.19
2023-07-10 16:47:36 +02:00
Simon L
3794140e71 Merge pull request #2926 from nextcloud/enh/noid/imaginary-add-tmpfs
imaginary - add tmpfs in /tmp
2023-07-10 16:47:21 +02:00
Simon L
527c6410df coturn - pin alpine version correctly
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-10 16:46:42 +02:00
Simon L
dc34c8dff0 Merge pull request #2911 from nextcloud/dependabot/docker/Containers/mastercontainer/docker-24.0.3-cli
Bump docker from 24.0.2-cli to 24.0.3-cli in /Containers/mastercontainer
2023-07-10 16:45:56 +02:00
Simon L
893814724f Merge pull request #2907 from nextcloud/dependabot/docker/Containers/talk/strukturag/nextcloud-spreed-signaling-1.1.3
Bump strukturag/nextcloud-spreed-signaling from 1.1.2 to 1.1.3 in /Containers/talk
2023-07-10 16:45:37 +02:00
Simon L
2097a4b8c0 Merge pull request #2906 from nextcloud/talk-container-update
talk update
2023-07-10 16:45:06 +02:00
Simon L
b5a1e74693 Merge pull request #2894 from nextcloud/dependabot/composer/php/php-di/slim-bridge-3.4.0
Bump php-di/slim-bridge from 3.3.0 to 3.4.0 in /php
2023-07-10 16:44:24 +02:00
Simon L
0d92844449 Merge pull request #2888 from t-h2o/docs_misspelling
documentation: misspelling
2023-07-10 16:43:45 +02:00
Simon L
dc3bf6f7ed Remove warning about Docker Desktop v4.19
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-10 16:40:46 +02:00
Simon L
382593d553 imaginary - add tmpfs in /tmp
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-07-10 16:30:39 +02:00
dependabot[bot]
0cc222fc0c Bump docker from 24.0.2-cli to 24.0.3-cli in /Containers/mastercontainer
Bumps docker from 24.0.2-cli to 24.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>
2023-07-07 12:04:40 +00:00
dependabot[bot]
ad6be7c914 Bump strukturag/nextcloud-spreed-signaling in /Containers/talk
Bumps strukturag/nextcloud-spreed-signaling from 1.1.2 to 1.1.3.

---
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>
2023-07-05 12:26:16 +00:00
szaimen
8dde61eb89 talk-update automated change
Signed-off-by: GitHub <noreply@github.com>
2023-07-05 12:03:26 +00:00
dependabot[bot]
25f9f99ed9 Bump php-di/slim-bridge from 3.3.0 to 3.4.0 in /php
Bumps [php-di/slim-bridge](https://github.com/PHP-DI/Slim-Bridge) from 3.3.0 to 3.4.0.
- [Release notes](https://github.com/PHP-DI/Slim-Bridge/releases)
- [Commits](https://github.com/PHP-DI/Slim-Bridge/compare/3.3.0...3.4.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-30 12:13:12 +00:00
|°_°|
5cb1d88238 docs: misspelling
sed -i \
's/envorinmental/environment/g' \
$(find . -type f)

Signed-off-by: |°_°| <grivel.theo@protonmail.com>
2023-06-29 23:50:37 +02:00
Simon L
fbeb120d0f Merge pull request #2884 from nextcloud/dependabot/docker/Containers/collabora/collabora/code-23.05.1.2.1
Bump collabora/code from 23.05.0.5.1 to 23.05.1.2.1 in /Containers/collabora
2023-06-28 15:30:00 +02:00
dependabot[bot]
8b55ed5826 Bump collabora/code in /Containers/collabora
Bumps collabora/code from 23.05.0.5.1 to 23.05.1.2.1.

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-28 12:59:09 +00:00
Simon L
ac2d639bd8 Merge pull request #2882 from nextcloud/automated/noid/psalm-baseline-update-1687925361
[Automated] Update psalm-baseline.xml
2023-06-28 09:14:44 +02:00
nextcloud-command
47661ec3ea Update psalm baseline
Signed-off-by: GitHub <noreply@github.com>
2023-06-28 04:09:21 +00:00
Simon L
443fb67465 adjust detail
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-06-27 11:56:54 +02:00
Simon L
dedc25dc51 some more adjustments
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-06-27 11:53:06 +02:00
Simon L
2dfab2941b adjust a few things
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-06-27 11:51:53 +02:00
Simon L
6ec853a3d5 Merge pull request #2878 from nextcloud/automated/noid/psalm-baseline-update-1687838928
[Automated] Update psalm-baseline.xml
2023-06-27 10:04:15 +02:00
nextcloud-command
84ad270e45 Update psalm baseline
Signed-off-by: GitHub <noreply@github.com>
2023-06-27 04:08:48 +00:00
Simon L
0c2905b658 Merge pull request #2869 from nextcloud/enh/2830/rework-notify-push
rework notify-push in order to export values as env
2023-06-26 18:22:09 +02:00
Simon L
5189f0cd51 make talk-recording read-only
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-06-26 18:18:26 +02:00
Simon L
ab5449f835 make talk container read-only
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-06-26 18:11:00 +02:00
Simon L
6747613a34 Merge pull request #2787 from nextcloud/password-field
show AIO password
2023-06-26 17:50:38 +02:00
Simon L
182f24bb4c allow hyphens
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-06-26 17:43:14 +02:00
Simon L
671edeb1d1 make collabora container read-only
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-06-26 17:43:14 +02:00
Zoey
a5a1ea504a Update php/public/forms.js
Co-authored-by: Simon L. <szaimen@e.mail.de>
Signed-off-by: Zoey <zoey@z0ey.de>
2023-06-26 17:42:46 +02:00
Zoey
dd02dc82a5 Update php/public/forms.js
Co-authored-by: Simon L. <szaimen@e.mail.de>
Signed-off-by: Zoey <zoey@z0ey.de>
2023-06-26 17:42:33 +02:00
Simon L
1354243f09 Merge pull request #2868 from nextcloud/enh/noid/revert-tempdir-adjustment
revert adjustment of tempdirectory
2023-06-26 17:40:40 +02:00
Simon L
b3d0b99383 Merge pull request #2873 from nextcloud/enh/2860/backup-time
adjust wording for backup time
2023-06-26 17:29:02 +02:00
Simon L
e02a16c680 adjust wording for backup time
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-06-26 17:11:51 +02:00
Simon L
9fddad59b5 make postgresql container read-only
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-06-26 16:51:10 +02:00
Simon L
cc9dbc9590 make domaincheck container read-only
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-06-26 16:06:14 +02:00
Simon L
48ee5774b7 rework notify-push in order to export values as env
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-06-26 15:56:38 +02:00
Simon L
134905c028 Merge pull request #2867 from nextcloud/enh/noid/adjust-migration-docs
adjust migration docs
2023-06-26 15:22:36 +02:00
Simon L
dfe6bd5ff0 revert adjustment of tempdirectory
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-06-26 15:21:55 +02:00
Zoey
559101a308 Update php/templates/login.twig
Co-authored-by: Simon L. <szaimen@e.mail.de>
Signed-off-by: Zoey <zoey@z0ey.de>
2023-06-26 15:13:14 +02:00
Zoey
1ba0f1b7a3 Update php/templates/login.twig
Co-authored-by: Simon L. <szaimen@e.mail.de>
Signed-off-by: Zoey <zoey@z0ey.de>
2023-06-26 15:12:01 +02:00
Simon L
fce23622e9 Merge pull request #2858 from nextcloud/enh/noid/add-low-space-notification
add low-on-space notification
2023-06-26 15:08:43 +02:00
Simon L
405b9bd7bc Merge pull request #2865 from nextcloud/imaginary-container-update
Imaginary update
2023-06-26 15:03:15 +02:00
Simon L
8da2a51282 Merge pull request #2866 from nextcloud/aio-yaml-update
Yaml updates
2023-06-26 15:02:13 +02:00
Simon L
4d2d66a7d1 adjust an additional point and wording
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-06-26 14:53:33 +02:00
41it
581b125ea6 Update migration.md
Added hint to install same apps on new installation.

Signed-off-by: 41it <137164547+41it@users.noreply.github.com>
2023-06-26 14:53:33 +02:00
Simon L
2b5d3de48e adjust wording
Signed-off-by: Simon L <szaimen@e.mail.de>

Signed-off-by: Simon L. <szaimen@e.mail.de>
2023-06-26 14:48:02 +02:00
Zoey
620c72de23 Update php/public/forms.js
Signed-off-by: Zoey <zoey@z0ey.de>
2023-06-26 14:46:38 +02:00
Zoey
203b7cb3fc Update php/templates/login.twig
Signed-off-by: Zoey <zoey@z0ey.de>
2023-06-26 14:46:38 +02:00
Zoey
13a9b9beaf Update containers.twig
Signed-off-by: Zoey <zoey@z0ey.de>
2023-06-26 14:46:38 +02:00
Zoey
f8d02440c1 fix js
Signed-off-by: Zoey <zoey@z0ey.de>
2023-06-26 14:46:38 +02:00
Zoey
a77df43dff update
Signed-off-by: Zoey <zoey@z0ey.de>
2023-06-26 14:46:38 +02:00
Zoey
e8ed7aa236 Update forms.js
Signed-off-by: Zoey <zoey@z0ey.de>
2023-06-26 14:46:38 +02:00
Zoey
ae1d14dbc5 reorder options
Signed-off-by: Zoey <zoey@z0ey.de>
2023-06-26 14:46:38 +02:00
Zoey
9e26e24820 show AIO password
Signed-off-by: Zoey <zoey@z0ey.de>
2023-06-26 14:46:38 +02:00
szaimen
53ef726114 Yaml updates
Signed-off-by: GitHub <noreply@github.com>
2023-06-26 12:10:47 +00:00
szaimen
161c967679 imaginary-update automated change
Signed-off-by: GitHub <noreply@github.com>
2023-06-26 12:10:27 +00:00
Simon L
2a83c57425 fix psalm
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-06-26 12:45:29 +02:00
Simon L
addb52fd8c Merge pull request #2857 from nextcloud/enh/noid/add-low-disk-space-warning
add logging in case disk space is low and thus login might fail
2023-06-26 12:41:08 +02:00
Simon L
27b482f75d Merge pull request #2842 from nextcloud/enh/noid/files-antivirus-improvment
small improvement to files_antivirus settings
2023-06-26 12:40:11 +02:00
Simon L
24dc09ce94 Merge pull request #2828 from nextcloud/enh/2825/enable-http3
apache - expose udp for http3 to work
2023-06-26 12:39:31 +02:00
Simon L
8452addc1f Merge pull request #2826 from nextcloud/enh/noid/disable-http3-mastercontainer
mastercontainer - disable http3
2023-06-26 12:39:00 +02:00
Simon L
a145979c7f Merge pull request #2815 from nextcloud/enh/noid/add-imaginary-note
add note to AIO interface that imaginary is incompatible with SSE
2023-06-26 12:35:53 +02:00
Simon L
06c9ba5ac9 Merge pull request #2847 from nextcloud/talk-container-update
talk update
2023-06-26 12:34:51 +02:00
Simon L
d30a9efcd6 Merge pull request #2817 from nextcloud/enh/noid/remove-r3-coturn
remove r3 from coturn version
2023-06-26 12:34:25 +02:00
Simon L
78ae2d174d Merge pull request #2840 from nextcloud/dependabot/docker/Containers/talk/nats-2.9.19-scratch
Bump nats from 2.9.18-scratch to 2.9.19-scratch in /Containers/talk
2023-06-26 12:34:15 +02:00
Simon L
345ef54850 Merge pull request #2864 from nextcloud/aio-helm-update
Helm Chart updates
2023-06-26 12:30:28 +02:00
szaimen
921952c042 Helm Chart updates
Signed-off-by: GitHub <noreply@github.com>
2023-06-26 10:27:30 +00:00
Simon L
d9a4d29392 Merge pull request #2861 from nextcloud/enh/noid/disable-watchtower-pulling
disable watchtower pulling for containers
2023-06-26 12:26:31 +02:00
Simon L
6d860e4f76 Merge pull request #2782 from nextcloud/aio-yaml-update
Yaml updates
2023-06-26 12:17:44 +02:00
Simon L
68d95af47d disable watchtower pulling for containers
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-06-26 00:56:08 +02:00
Simon L
52b3281ad8 add last note regarding that one can add further storages to backup later on
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-06-26 00:16:10 +02:00
szaimen
4e8ce65e02 talk-update automated change
Signed-off-by: GitHub <noreply@github.com>
2023-06-25 12:03:06 +00:00
szaimen
998e7f07d2 Yaml updates
Signed-off-by: GitHub <noreply@github.com>
2023-06-25 12:02:30 +00:00
Simon L
463a695326 add low-on-space notification
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-06-25 01:32:42 +02:00
Simon L
66452b40ff add logging in case disk space is low and thus login might fail
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-06-25 01:00:18 +02:00
Simon L
27dbeec29d Merge pull request #2852 from nextcloud/enh/noid/huge-docker-logs
add back instructions about huge docker logs
2023-06-24 15:07:25 +02:00
Simon L
4ed373636d add comment what level 30 and debug-level 3 means
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-06-24 14:09:57 +02:00
Simon L
020e3d6cb6 add back instructions about huge docker logs
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-06-24 13:59:09 +02:00
Simon L
d0cae68636 remove logrotate advice as it should not be needed anymore
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-06-23 14:53:33 +02:00
Simon L
3f3811bd3e small improvement to files_antivirus settings
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-06-21 20:03:05 +02:00
dependabot[bot]
efa9b096ce Bump nats from 2.9.18-scratch to 2.9.19-scratch in /Containers/talk
Bumps nats from 2.9.18-scratch to 2.9.19-scratch.

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-21 12:58:54 +00:00
Simon L
cff1e5a070 address review
Signed-off-by: Simon L <szaimen@e.mail.de>

Co-authored-by: Zoey <zoey@z0ey.de>
Signed-off-by: Simon L. <szaimen@e.mail.de>
2023-06-20 22:19:33 +02:00
Simon L
9777f70294 apache - expose udp for http3 to work
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-06-20 21:30:56 +02:00
Simon L
01ec0cb0c2 mastercontainer - disable http3
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-06-20 21:22:21 +02:00
Simon L
4492f17809 remove r3 from coturn version
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-06-19 16:36:48 +02:00
Simon L
f520018ce3 add note to AIO interface that imaginary is incompatible with SSE
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-06-19 16:00:25 +02:00
Simon L
faa5947963 update to ES 8 and add necessary adjustements to its config
Signed-off-by: Simon L <szaimen@e.mail.de>
2023-06-07 14:43:09 +02:00
95 changed files with 1020 additions and 358 deletions

View File

@@ -46,10 +46,10 @@ jobs:
- name: Create Pull Request
uses: peter-evans/create-pull-request@v5
with:
commit-message: dependency updates
commit-message: php dependency updates
signoff: true
title: Dependency updates
body: Automated dependency updates since dependabot does not support grouped updates
title: PHP dependency updates
body: Automated php dependency updates since dependabot does not support grouped updates
labels: dependencies, 3. to review
milestone: next
branch: aio-dependency-update

View File

@@ -32,7 +32,7 @@ jobs:
# See https://github.com/helm/chart-releaser-action/issues/6
- name: Set up Helm
uses: azure/setup-helm@v3.1
uses: azure/setup-helm@v3.5
with:
version: v3.6.3

View File

@@ -39,8 +39,6 @@ jobs:
author: nextcloud-command <nextcloud-command@users.noreply.github.com>
signoff: true
branch: automated/noid/psalm-baseline-update
# Make sure we can open multiple PRs
branch-suffix: timestamp
title: '[Automated] Update psalm-baseline.xml'
milestone: next
body: |

View File

@@ -34,6 +34,16 @@ jobs:
)"
curl -L "https://raw.githubusercontent.com/strukturag/nextcloud-spreed-signaling/$signaling_version/server.conf.in" -o Containers/talk/server.conf.in
# Janus
janus_version="$(
git ls-remote https://github.com/meetecho/janus-gateway v0.*.* \
| cut -d/ -f3 \
| sort -V \
| grep -E "^v[0-9]+\.[0-9]+\.[0-9]+$" \
| tail -1
)"
sed -i "s|^ARG JANUS_VERSION=.*$|ARG JANUS_VERSION=$janus_version|" ./Containers/talk/Dockerfile
- name: Create Pull Request
uses: peter-evans/create-pull-request@v5
with:

View File

@@ -1,4 +1,4 @@
FROM caddy:2.6.4-alpine as caddy
FROM caddy:2.7.2-alpine as caddy
FROM httpd:2.4.57-alpine3.18
@@ -22,6 +22,7 @@ RUN set -ex; \
\
mkdir -p /mnt/data; \
chown -R www-data:www-data /mnt/data; \
chown -R 777 /tmp; \
\
apk add --no-cache \
bash \
@@ -47,6 +48,7 @@ RUN set -ex; \
-e 's/^#\(LoadModule .*mod_brotli.so\)/\1/' \
-e 's/\(LoadModule .*mod_mpm_worker.so\)/#\1/' \
-e 's/\(LoadModule .*mod_mpm_prefork.so\)/#\1/' \
-e 's/\(ScriptAlias \)/#\1/' \
/usr/local/apache2/conf/httpd.conf; \
echo "Include conf/nextcloud.conf" | tee -a /usr/local/apache2/conf/httpd.conf; \
echo "ServerName localhost" | tee -a /usr/local/apache2/conf/httpd.conf; \
@@ -59,9 +61,15 @@ RUN set -ex; \
mkdir /var/run/supervisord; \
chown www-data:www-data /var/run/supervisord; \
chown www-data:www-data /var/log/supervisord; \
chmod 777 /var/run/supervisord; \
chmod 777 /var/log/supervisord; \
\
chown -R www-data:www-data /usr/local/apache2; \
chmod +r -R /usr/local/apache2; \
mkdir -p /usr/local/apache2/logs; \
chmod 777 -R /home/www-data; \
chmod 777 -R /usr/local/apache2/logs; \
rm -rf /usr/local/apache2/cgi-bin/; \
\
echo "root:$(openssl rand -base64 12)" | chpasswd
@@ -71,4 +79,4 @@ ENTRYPOINT ["/start.sh"]
CMD ["/usr/bin/supervisord", "-c", "/supervisord.conf"]
HEALTHCHECK CMD /healthcheck.sh
LABEL com.centurylinklabs.watchtower.monitor-only="true"
LABEL com.centurylinklabs.watchtower.enable="false"

View File

@@ -35,18 +35,18 @@ if [ "$APACHE_PORT" != '443' ]; then
else
CADDYFILE="$(sed 's|auto_https.*|auto_https disable_redirects|' /Caddyfile)"
fi
echo "$CADDYFILE" > /Caddyfile
echo "$CADDYFILE" > /tmp/Caddyfile
# Change the trusted_proxies in case of reverse proxies
if [ "$APACHE_PORT" != '443' ]; then
CADDYFILE="$(sed 's|# trusted_proxies placeholder|trusted_proxies static private_ranges|' /Caddyfile)"
CADDYFILE="$(sed 's|# trusted_proxies placeholder|trusted_proxies static private_ranges|' /tmp/Caddyfile)"
else
CADDYFILE="$(sed 's|trusted_proxies.*private_ranges|# trusted_proxies placeholder|' /Caddyfile)"
CADDYFILE="$(sed 's|trusted_proxies.*private_ranges|# trusted_proxies placeholder|' /tmp/Caddyfile)"
fi
echo "$CADDYFILE" > /Caddyfile
echo "$CADDYFILE" > /tmp/Caddyfile
# Fix the Caddyfile format
caddy fmt --overwrite /Caddyfile
caddy fmt --overwrite /tmp/Caddyfile
# Add caddy path
mkdir -p /mnt/data/caddy/

View File

@@ -20,4 +20,4 @@ stdout_logfile=/dev/stdout
stdout_logfile_maxbytes=0
stderr_logfile=/dev/stderr
stderr_logfile_maxbytes=0
command=/usr/bin/caddy run --config /Caddyfile
command=/usr/bin/caddy run --config /tmp/Caddyfile

View File

@@ -1,4 +1,4 @@
FROM alpine:3.18.2
FROM alpine:3.18.3
RUN set -ex; \
\
@@ -18,5 +18,5 @@ COPY --chmod=770 *.sh /
ENTRYPOINT ["/start.sh"]
USER root
LABEL com.centurylinklabs.watchtower.monitor-only="true"
LABEL com.centurylinklabs.watchtower.enable="false"
ENV BORG_RETENTION_POLICY="--keep-within=7d --keep-weekly=4 --keep-monthly=6"

View File

@@ -15,4 +15,4 @@ VOLUME /var/lib/clamav
USER clamav
LABEL com.centurylinklabs.watchtower.monitor-only="true"
LABEL com.centurylinklabs.watchtower.enable="false"

View File

@@ -1,5 +1,5 @@
# From a file located probably somewhere here: https://github.com/CollaboraOnline/online/tree/master/docker
FROM collabora/code:23.05.0.5.1
FROM collabora/code:23.05.2.2.1
USER root
@@ -11,9 +11,9 @@ RUN set -ex; \
tzdata \
netcat-openbsd \
; \
rm -rf /var/lib/apt/lists/*
rm -rf /var/lib/apt/lists/*;
USER 100
HEALTHCHECK CMD nc -z localhost 9980 || exit 1
LABEL com.centurylinklabs.watchtower.monitor-only="true"
LABEL com.centurylinklabs.watchtower.enable="false"

View File

@@ -1,12 +1,13 @@
FROM alpine:3.18.2
FROM alpine:3.18.3
RUN set -ex; \
apk add --no-cache bash lighttpd netcat-openbsd; \
adduser -S www-data -G www-data; \
rm -rf /etc/lighttpd/lighttpd.conf; \
chmod +r -R /etc/lighttpd; \
chmod 777 -R /etc/lighttpd; \
mkdir -p /var/www/domaincheck; \
chown www-data:www-data -R /var/www
COPY --chown=www-data:www-data lighttpd.conf /etc/lighttpd/lighttpd.conf
chown www-data:www-data -R /var/www; \
chmod 777 -R /var/www/domaincheck
COPY --chown=www-data:www-data lighttpd.conf /lighttpd.conf
COPY --chmod=775 start.sh /start.sh
@@ -14,4 +15,4 @@ USER www-data
ENTRYPOINT ["/start.sh"]
HEALTHCHECK CMD nc -z localhost $APACHE_PORT || exit 1
LABEL com.centurylinklabs.watchtower.monitor-only="true"
LABEL com.centurylinklabs.watchtower.enable="false"

View File

@@ -11,7 +11,7 @@ if [ -z "$APACHE_PORT" ]; then
export APACHE_PORT="443"
fi
CONF_FILE="$(sed "s|ipv6-placeholder|\[::\]:$APACHE_PORT|" /etc/lighttpd/lighttpd.conf)"
CONF_FILE="$(sed "s|ipv6-placeholder|\[::\]:$APACHE_PORT|" /lighttpd.conf)"
echo "$CONF_FILE" > /etc/lighttpd/lighttpd.conf
# Check config file

View File

@@ -1,5 +1,5 @@
# Probably from here https://github.com/elastic/elasticsearch/blob/main/distribution/docker/src/docker/Dockerfile
FROM elasticsearch:7.17.10
FROM elasticsearch:8.8.1
USER root
@@ -16,4 +16,4 @@ RUN set -ex; \
USER 1000:0
HEALTHCHECK CMD nc -z localhost 9200 || exit 1
LABEL com.centurylinklabs.watchtower.monitor-only="true"
LABEL com.centurylinklabs.watchtower.enable="false"

View File

@@ -1,4 +1,4 @@
FROM golang:1.20.5-alpine3.18 as go
FROM golang:1.21.0-alpine3.18 as go
ENV IMAGINARY_HASH b632dae8cc321452c3f85bcae79c580b1ae1ed84
@@ -12,7 +12,7 @@ RUN set -ex; \
build-base; \
go install github.com/h2non/imaginary@"$IMAGINARY_HASH";
FROM alpine:3.18.2
FROM alpine:3.18.3
RUN set -ex; \
apk add --no-cache \
tzdata \
@@ -35,4 +35,4 @@ ENV MALLOC_ARENA_MAX=2
ENTRYPOINT ["imaginary", "-return-size", "-max-allowed-resolution", "222.2"]
HEALTHCHECK CMD nc -z localhost "$PORT" || exit 1
LABEL com.centurylinklabs.watchtower.monitor-only="true"
LABEL com.centurylinklabs.watchtower.enable="false"

View File

@@ -10,18 +10,21 @@
log {
level ERROR
}
servers {
protocols h1 h2 h2c
}
on_demand_tls {
ask http://localhost:9876/
}
}
http://:80 {
redir https://{host}{uri}
}
# Match only host names and not ip-addresses:
https://*.*:8443,
https://*.*.*:8443,
https://*.*.*.*:8443,
https://*.*.*.*.*:8443,
https://*.*.*.*.*.*:8443 {
https://:8443 {
reverse_proxy localhost:8000

View File

@@ -1,11 +1,11 @@
# Docker CLI is a requirement
FROM docker:24.0.2-cli as docker
FROM docker:24.0.5-cli as docker
# Caddy is a requirement
FROM caddy:2.6.4-alpine as caddy
FROM caddy:2.7.2-alpine as caddy
# From https://github.com/docker-library/php/blob/master/8.2/alpine3.18/fpm/Dockerfile
FROM php:8.2.7-fpm-alpine3.18
FROM php:8.2.8-fpm-alpine3.18
EXPOSE 80
EXPOSE 8080
@@ -93,6 +93,7 @@ RUN set -ex; \
-e 's/^#\(LoadModule .*mod_mpm_event.so\)/\1/' \
-e 's/\(LoadModule .*mod_mpm_worker.so\)/#\1/' \
-e 's/\(LoadModule .*mod_mpm_prefork.so\)/#\1/' \
-e 's/\(ScriptAlias \)/#\1/' \
/etc/apache2/httpd.conf; \
mkdir -p /etc/apache2/logs; \
rm /etc/apache2/conf.d/ssl.conf; \
@@ -108,6 +109,7 @@ RUN set -ex; \
/etc/apache2/conf.d/userdir.conf \
/etc/apache2/conf.d/info.conf; \
\
rm -rf /var/www/localhost/cgi-bin/; \
mkdir /var/log/supervisord; \
mkdir /var/run/supervisord;
@@ -119,6 +121,5 @@ COPY mastercontainer.conf /etc/apache2/sites-available/mastercontainer.conf
USER root
ENTRYPOINT ["/start.sh"]
CMD ["/usr/bin/supervisord", "-c", "/supervisord.conf"]
HEALTHCHECK CMD /healthcheck.sh

View File

@@ -57,6 +57,9 @@ while true; do
# Remove dangling images
sudo -u www-data docker image prune --force
# Check for available free space
sudo -u www-data php /var/www/docker-aio/php/src/Cron/CheckFreeDiskSpace.php
# Remove mastercontainer from default bridge network
if sudo -u www-data docker inspect nextcloud-aio-mastercontainer --format "{{.NetworkSettings.Networks}}" | grep -q "bridge"; then
sudo -u www-data docker network disconnect bridge nextcloud-aio-mastercontainer

View File

@@ -26,6 +26,12 @@ if [ "$EUID" != "0" ]; then
exit 1
fi
# Check that the CMD is not overwritten nor set
if [ "$*" != "" ]; then
print_red "Docker run command for AIO is incorrect as a CMD option was given which is not expected."
exit 1
fi
# Check if socket is available and readable
if ! [ -a "/var/run/docker.sock" ]; then
print_red "Docker socket is not available. Cannot continue."
@@ -64,7 +70,6 @@ fi
# Check if api version is supported
if ! sudo -u www-data docker info &>/dev/null; then
print_red "Cannot connect to the docker socket. Cannot proceed."
echo "If you are on Docker Desktop v4.19 or higher, see https://github.com/nextcloud/all-in-one/issues/2450"
echo "If SELinux is enabled on your host, see https://github.com/nextcloud/all-in-one#are-there-known-problems-when-selinux-is-enabled"
echo "If you are on TrueNas SCALE, see https://github.com/nextcloud/all-in-one#can-i-run-aio-on-truenas-scale"
exit 1
@@ -299,8 +304,8 @@ E.g. https://internal.ip.of.this.server:8080
If your server has port 80 and 8443 open and you point a domain to your server, you can get a valid certificate automatically by opening the Nextcloud AIO Interface via:
https://your-domain-that-points-to-this-server.tld:8443"
# Set the timezone to UTC
export TZ=UTC
# Set the timezone to Etc/UTC
export TZ=Etc/UTC
# Fix apache startup
rm -f /var/run/apache2/httpd.pid
@@ -311,4 +316,5 @@ caddy fmt --overwrite /Caddyfile
# Fix caddy log
chmod 777 /root
exec "$@"
# Start supervisord
/usr/bin/supervisord -c /supervisord.conf

View File

@@ -55,3 +55,11 @@ stderr_logfile=/dev/stderr
stderr_logfile_maxbytes=0
command=/session-deduplicator.sh
user=root
[program:domain-validator]
# stdout_logfile=/dev/stdout
# stdout_logfile_maxbytes=0
stderr_logfile=/dev/stderr
stderr_logfile_maxbytes=0
command=php -S 127.0.0.1:9876 /var/www/docker-aio/php/domain-validator.php
user=www-data

View File

@@ -1,9 +1,9 @@
FROM php:8.1.20-fpm-alpine3.18
FROM php:8.1.22-fpm-alpine3.18
ENV PHP_MEMORY_LIMIT 512M
ENV PHP_UPLOAD_LIMIT 10G
ENV PHP_MAX_TIME 3600
ENV NEXTCLOUD_VERSION 26.0.3
ENV NEXTCLOUD_VERSION 27.0.2
ENV AIO_TOKEN 123456
ENV AIO_URL localhost
@@ -209,6 +209,7 @@ RUN set -ex; \
chown www-data:root -R /usr/src && \
chown www-data:root -R /usr/local/etc/php/conf.d && \
chown www-data:root -R /usr/local/etc/php-fpm.d && \
chmod -R 777 /tmp; \
rm -r /usr/src/nextcloud/apps/updatenotification; \
\
mkdir -p /nc-updater; \
@@ -223,4 +224,4 @@ ENTRYPOINT ["/start.sh"]
CMD ["/usr/bin/supervisord", "-c", "/supervisord.conf"]
HEALTHCHECK CMD sudo -E -u www-data bash /healthcheck.sh
LABEL com.centurylinklabs.watchtower.monitor-only="true"
LABEL com.centurylinklabs.watchtower.enable="false"

View File

@@ -444,12 +444,14 @@ if [ -z "$OBJECTSTORE_S3_BUCKET" ] && [ -z "$OBJECTSTORE_SWIFT_URL" ]; then
exit 1
fi
# Configure tempdirectory
mkdir -p "$NEXTCLOUD_DATA_DIR/tmp/"
if ! grep -q upload_tmp_dir /usr/local/etc/php/conf.d/nextcloud.ini; then
echo "upload_tmp_dir = $NEXTCLOUD_DATA_DIR/tmp/" >> /usr/local/etc/php/conf.d/nextcloud.ini
# Delete formerly configured tempdirectory as the default is usually faster (if the datadir is on a HDD or network FS)
if [ "$(php /var/www/html/occ config:system:get tempdirectory)" = "$NEXTCLOUD_DATA_DIR/tmp/" ]; then
php /var/www/html/occ config:system:delete tempdirectory
if [ -d "$NEXTCLOUD_DATA_DIR/tmp/" ]; then
rm -r "$NEXTCLOUD_DATA_DIR/tmp/"
fi
fi
php /var/www/html/occ config:system:set tempdirectory --value="$NEXTCLOUD_DATA_DIR/tmp/"
fi
# Perform fingerprint update if instance was restored
@@ -474,11 +476,15 @@ php /var/www/html/occ config:system:set updatedirectory --value="/nc-updater"
# Apply network settings
echo "Applying network settings..."
php /var/www/html/occ config:system:set davstorage.request_timeout --value="$PHP_MAX_TIME" --type=int
php /var/www/html/occ config:system:set trusted_domains 1 --value="$NC_DOMAIN"
php /var/www/html/occ config:system:set overwrite.cli.url --value="https://$NC_DOMAIN/"
php /var/www/html/occ config:system:set htaccess.RewriteBase --value="/"
php /var/www/html/occ maintenance:update:htaccess
# Apply dbpersistent setting in order to fix too many db connections
php /var/www/html/occ config:system:set dbpersistent --value=true --type=bool
# Disallow creating local external storages when nothing was mounted
if [ -z "$NEXTCLOUD_MOUNT" ]; then
php /var/www/html/occ config:system:set files_external_allow_create_new_local --type=bool --value=false
@@ -648,7 +654,7 @@ if [ "$CLAMAV_ENABLED" = 'yes' ]; then
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="-1"
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_infected_action --value="only_log"
fi
else

View File

@@ -18,4 +18,4 @@ USER 33
ENTRYPOINT ["/start.sh"]
HEALTHCHECK CMD nc -z localhost 7867 || exit 1
LABEL com.centurylinklabs.watchtower.monitor-only="true"
LABEL com.centurylinklabs.watchtower.enable="false"

View File

@@ -27,12 +27,14 @@ elif [ "$CPU_ARCH" != "x86_64" ]; then
export CPU_ARCH="aarch64"
fi
# Set sensitive values as env
export DATABASE_URL="postgres://$POSTGRES_USER:$POSTGRES_PASSWORD@$POSTGRES_HOST/$POSTGRES_DB"
export REDIS_URL="redis://:$REDIS_HOST_PASSWORD@$REDIS_HOST"
# Run it
/nextcloud/custom_apps/notify_push/bin/"$CPU_ARCH"/notify_push \
--database-prefix="oc_" \
--nextcloud-url "https://$NC_DOMAIN" \
--port 7867 \
--redis-url "redis://:$REDIS_HOST_PASSWORD@$REDIS_HOST" \
--database-url "postgres://$POSTGRES_USER:$POSTGRES_PASSWORD@$POSTGRES_HOST/$POSTGRES_DB"
--port 7867
exec "$@"

View File

@@ -1,7 +1,7 @@
# From https://github.com/ONLYOFFICE/Docker-DocumentServer/blob/master/Dockerfile
FROM onlyoffice/documentserver:7.4.0.1
FROM onlyoffice/documentserver:7.4.1.1
# USER root is probably used
HEALTHCHECK CMD nc -z localhost 80 || exit 1
LABEL com.centurylinklabs.watchtower.monitor-only="true"
LABEL com.centurylinklabs.watchtower.enable="false"

View File

@@ -22,6 +22,7 @@ RUN set -ex; \
# Fix default permissions
chown -R postgres:postgres /var/lib/postgresql; \
chown -R postgres:postgres /var/run/postgresql; \
chmod -R 777 /var/run/postgresql; \
chown -R postgres:postgres "$PGDATA"; \
\
mkdir /mnt/data; \
@@ -37,4 +38,4 @@ USER postgres
ENTRYPOINT ["/start.sh"]
HEALTHCHECK CMD /healthcheck.sh
LABEL com.centurylinklabs.watchtower.monitor-only="true"
LABEL com.centurylinklabs.watchtower.enable="false"

View File

@@ -1,5 +1,5 @@
# From https://github.com/docker-library/redis/blob/master/7.0/alpine/Dockerfile
FROM redis:7.0.11-alpine
FROM redis:7.0.12-alpine
COPY --chmod=775 start.sh /start.sh
@@ -13,4 +13,4 @@ USER redis
ENTRYPOINT ["/start.sh"]
HEALTHCHECK CMD redis-cli -a $REDIS_HOST_PASSWORD PING || exit 1
LABEL com.centurylinklabs.watchtower.monitor-only="true"
LABEL com.centurylinklabs.watchtower.enable="false"

View File

@@ -2,7 +2,11 @@ FROM python:3.11.4-alpine3.18
COPY --chmod=775 start.sh /start.sh
ENV RECORDING_VERSION v17.0.0
ENV RECORDING_VERSION v17.0.3
ENV ALLOW_ALL false
ENV HPB_PROTOCOL https
ENV SKIP_VERIFY false
ENV HPB_PATH /standalone-signaling/
RUN set -ex; \
apk add --no-cache \
@@ -31,6 +35,9 @@ RUN set -ex; \
touch /etc/recording.conf; \
chown recording:recording -R \
/tmp /etc/recording.conf; \
mkdir -p /conf; \
chmod 777 /conf; \
chmod 777 /tmp; \
apk del --no-cache \
git \
wget \
@@ -40,7 +47,7 @@ RUN set -ex; \
WORKDIR /tmp
USER recording
ENTRYPOINT ["/start.sh"]
CMD ["python", "-m", "nextcloud.talk.recording", "--config", "/etc/recording.conf"]
CMD ["python", "-m", "nextcloud.talk.recording", "--config", "/conf/recording.conf"]
HEALTHCHECK CMD nc -z localhost 1234 || exit 1
LABEL com.centurylinklabs.watchtower.monitor-only="true"
LABEL com.centurylinklabs.watchtower.enable="false"

View File

@@ -12,34 +12,39 @@ elif [ -z "$INTERNAL_SECRET" ]; then
exit 1
fi
cat << RECORDING_CONF > "/etc/recording.conf"
if [ -z "$HPB_DOMAIN" ]; then
export HPB_DOMAIN="$NC_DOMAIN"
fi
cat << RECORDING_CONF > "/conf/recording.conf"
[logs]
# 30 means Warning
level = 30
[http]
listen = 0.0.0.0:1234
[backend]
allowall = false
allowall = ${ALLOW_ALL}
# TODO: remove secret below when https://github.com/nextcloud/spreed/issues/9580 is fixed
secret = ${RECORDING_SECRET}
backends = backend-1
skipverify = false
skipverify = ${SKIP_VERIFY}
maxmessagesize = 1024
videowidth = 1920
videoheight = 1080
directory = /tmp
[backend-1]
url = https://${NC_DOMAIN}
url = ${HPB_PROTOCOL}://${NC_DOMAIN}
secret = ${RECORDING_SECRET}
skipverify = false
skipverify = ${SKIP_VERIFY}
[signaling]
signalings = signaling-1
[signaling-1]
url = https://${NC_DOMAIN}/standalone-signaling/
url = ${HPB_PROTOCOL}://${HPB_DOMAIN}${HPB_PATH}
internalsecret = ${INTERNAL_SECRET}
[ffmpeg]

View File

@@ -1,67 +1,98 @@
FROM nats:2.9.18-scratch as nats
FROM strukturag/nextcloud-spreed-signaling:1.1.2 as signaling
FROM coturn/coturn:4.6.2-r3-alpine
FROM nats:2.9.21-scratch as nats
FROM strukturag/nextcloud-spreed-signaling:1.1.3 as signaling
FROM alpine:3.18.3 as janus
ARG JANUS_VERSION=v0.14.0
WORKDIR /src
RUN set -ex; \
apk add --no-cache \
ca-certificates \
git \
autoconf \
automake \
build-base \
pkgconfig \
libtool \
util-linux \
glib-dev \
zlib-dev \
openssl-dev \
jansson-dev \
libnice-dev \
libconfig-dev \
libsrtp-dev \
libusrsctp-dev \
gengetopt-dev \
libwebsockets-dev; \
git clone --recursive https://github.com/meetecho/janus-gateway --depth=1 --single-branch --branch "$JANUS_VERSION" /src; \
/src/autogen.sh; \
/src/configure --disable-rabbitmq --disable-mqtt --disable-boringssl; \
make; \
make install; \
make configs; \
rename -v ".jcfg.sample" ".jcfg" /usr/local/etc/janus/*.jcfg.sample
FROM coturn/coturn:4.6.2-alpine3.18
USER root
# Pin alpine version manually as long as https://github.com/coturn/coturn/issues/1226 is not done
ENV ALPINE_VERSION=3.18
COPY --from=nats /nats-server /usr/local/bin/nats-server
COPY --from=signaling /usr/bin/nextcloud-spreed-signaling /usr/local/bin/nextcloud-spreed-signaling
COPY --chmod=775 start.sh /start.sh
COPY --chmod=664 supervisord.conf /supervisord.conf
RUN set -ex; \
grep VERSION_ID /etc/os-release | grep -q "$ALPINE_VERSION.[0-9]\+$"; \
apk add --no-cache \
ca-certificates \
tzdata \
bash \
janus-gateway \
openssl \
supervisor \
bind-tools \
netcat-openbsd \
shadow \
util-linux \
build-base \
wget \
lua5.3-dev \
luarocks5.3; \
\
glib \
zlib \
libssl3 \
libcrypto3 \
jansson \
libnice \
libconfig \
libsrtp \
libusrsctp \
libwebsockets \
\
shadow; \
useradd --system talk; \
luarocks-5.3 install luajson; \
luarocks-5.3 install ansicolors; \
rename -v ".jcfg.sample" ".jcfg" /etc/janus/*.sample; \
apk del --no-cache \
shadow \
util-linux \
build-base \
wget \
lua5.3-dev \
luarocks5.3; \
shadow; \
\
# Give root a random password
echo "root:$(openssl rand -base64 12)" | chpasswd; \
\
touch \
/etc/nats.conf \
/etc/signaling.conf \
/etc/turnserver.conf; \
/etc/nats.conf; \
echo "listen: 127.0.0.1:4222" | tee /etc/nats.conf; \
mkdir -p \
/var/tmp \
/conf \
/var/lib/turn \
/var/log/supervisord \
/var/run/supervisord \
/usr/local/lib/janus/loggers; \
chown talk:talk -R \
/usr \
/etc/nats.conf \
/var/lib/turn \
/var/log/supervisord \
/var/run/supervisord; \
chown talk:talk -R \
/usr \
/etc/janus \
/etc/nats.conf \
/etc/signaling.conf \
/etc/turnserver.conf \
chmod 777 -R \
/tmp \
/conf \
/var/run/supervisord \
/var/lib/turn \
/var/log/supervisord \
/var/run/supervisord;
/var/log/supervisord;
COPY --from=janus /usr/local /usr/local
COPY --from=nats /nats-server /usr/local/bin/nats-server
COPY --from=signaling /usr/bin/nextcloud-spreed-signaling /usr/local/bin/nextcloud-spreed-signaling
COPY --chmod=775 start.sh /start.sh
COPY --chmod=664 supervisord.conf /supervisord.conf
# Set default talk port https://github.com/nextcloud/all-in-one/issues/1011
ENV TALK_PORT=3478
@@ -71,4 +102,4 @@ ENTRYPOINT ["/start.sh"]
CMD ["supervisord", "-c", "/supervisord.conf"]
HEALTHCHECK CMD (nc -z localhost 8081 && nc -z localhost 8188 && nc -z localhost 4222 && nc -z localhost "$TALK_PORT" && nc -z "$NC_DOMAIN" "$TALK_PORT") || exit 1
LABEL com.centurylinklabs.watchtower.monitor-only="true"
LABEL com.centurylinklabs.watchtower.enable="false"

View File

@@ -89,7 +89,7 @@ allowall = false
# Common shared secret for requests from and to the backend servers if
# "allowall" is enabled. This must be the same value as configured in the
# Nextcloud admin ui.
#secret = the-shared-secret
#secret = the-shared-secret-for-allowall
# Timeout in seconds for requests to the backend.
timeout = 10

View File

@@ -20,7 +20,7 @@ IPv4_ADDRESS_TALK="$(dig nextcloud-aio-talk A +short)"
set +x
# Turn
cat << TURN_CONF > "/etc/turnserver.conf"
cat << TURN_CONF > "/conf/turnserver.conf"
listening-port=$TALK_PORT
fingerprint
use-auth-secret
@@ -54,7 +54,7 @@ denied-peer-ip=240.0.0.0-255.255.255.255
TURN_CONF
# Signling
cat << SIGNALING_CONF > "/etc/signaling.conf"
cat << SIGNALING_CONF > "/conf/signaling.conf"
[http]
listen = 0.0.0.0:8081

View File

@@ -1,6 +1,5 @@
[supervisord]
nodaemon=true
nodaemon=true
logfile=/var/log/supervisord/supervisord.log
pidfile=/var/run/supervisord/supervisord.pid
childlogdir=/var/log/supervisord/
@@ -13,7 +12,7 @@ stdout_logfile=/dev/stdout
stdout_logfile_maxbytes=0
stderr_logfile=/dev/stderr
stderr_logfile_maxbytes=0
command=turnserver -c /etc/turnserver.conf
command=turnserver -c /conf/turnserver.conf
[program:nats-server]
stdout_logfile=/dev/stdout
@@ -27,11 +26,12 @@ stdout_logfile=/dev/stdout
stdout_logfile_maxbytes=0
stderr_logfile=/dev/stderr
stderr_logfile_maxbytes=0
command=janus --config=/etc/janus/janus.jcfg --disable-colors --log-stdout --full-trickle --debug-level 3
# debug-level 3 means warning
command=janus --config=/usr/local/etc/janus/janus.jcfg --disable-colors --log-stdout --full-trickle --debug-level 3
[program:signaling]
stdout_logfile=/dev/stdout
stdout_logfile_maxbytes=0
stderr_logfile=/dev/stderr
stderr_logfile_maxbytes=0
command=nextcloud-spreed-signaling -config /etc/signaling.conf
command=nextcloud-spreed-signaling -config /conf/signaling.conf

View File

@@ -1,7 +1,7 @@
# From https://github.com/containrrr/watchtower/blob/main/dockerfiles/Dockerfile.self-contained
FROM containrrr/watchtower:1.5.3 as watchtower
FROM alpine:3.18.2
FROM alpine:3.18.3
RUN apk add --no-cache bash
COPY --from=watchtower /watchtower /watchtower
@@ -11,4 +11,4 @@ COPY --chmod=775 start.sh /start.sh
USER root
ENTRYPOINT ["/start.sh"]
LABEL com.centurylinklabs.watchtower.monitor-only="true"
LABEL com.centurylinklabs.watchtower.enable="false"

View File

@@ -13,7 +13,7 @@
<category>monitoring</category>
<bugs>https://github.com/nextcloud/all-in-one/issues</bugs>
<dependencies>
<nextcloud min-version="25" max-version="26"/>
<nextcloud min-version="26" max-version="27"/>
</dependencies>
<settings>

View File

@@ -1,5 +1,5 @@
services:
nextcloud:
nextcloud-aio-mastercontainer:
image: nextcloud/all-in-one:latest
restart: always
container_name: nextcloud-aio-mastercontainer # This line is not allowed to be changed as otherwise AIO will not work correctly

View File

@@ -1,13 +1,25 @@
services:
nextcloud-aio-apache:
depends_on:
- nextcloud-aio-onlyoffice
- nextcloud-aio-collabora
- nextcloud-aio-talk
- nextcloud-aio-nextcloud
nextcloud-aio-onlyoffice:
condition: service_started
required: false
nextcloud-aio-collabora:
condition: service_started
required: false
nextcloud-aio-talk:
condition: service_started
required: false
nextcloud-aio-nextcloud:
condition: service_started
required: false
nextcloud-aio-notify-push:
condition: service_started
required: false
image: nextcloud/aio-apache:latest
ports:
- ${APACHE_IP_BINDING}:${APACHE_PORT}:${APACHE_PORT}/tcp
- ${APACHE_IP_BINDING}:${APACHE_PORT}:${APACHE_PORT}/udp
environment:
- NC_DOMAIN=${NC_DOMAIN}
- NEXTCLOUD_HOST=nextcloud-aio-nextcloud
@@ -18,12 +30,20 @@ services:
- TZ=${TIMEZONE}
- APACHE_MAX_SIZE=${APACHE_MAX_SIZE}
- APACHE_MAX_TIME=${NEXTCLOUD_MAX_TIME}
- NOTIFY_PUSH_HOST=nextcloud-aio-notify-push
volumes:
- nextcloud_aio_nextcloud:/var/www/html:ro
- nextcloud_aio_apache:/mnt/data:rw
restart: unless-stopped
networks:
- nextcloud-aio
read_only: true
tmpfs:
- /var/log/supervisord
- /var/run/supervisord
- /usr/local/apache2/logs
- /tmp
- /home/www-data
nextcloud-aio-database:
image: nextcloud/aio-postgresql:latest
@@ -43,19 +63,33 @@ services:
shm_size: 268435456
networks:
- nextcloud-aio
read_only: true
tmpfs:
- /var/run/postgresql
nextcloud-aio-nextcloud:
depends_on:
- nextcloud-aio-database
- nextcloud-aio-redis
- nextcloud-aio-clamav
- nextcloud-aio-fulltextsearch
- nextcloud-aio-talk-recording
- nextcloud-aio-imaginary
nextcloud-aio-database:
condition: service_started
required: false
nextcloud-aio-redis:
condition: service_started
required: false
nextcloud-aio-clamav:
condition: service_started
required: false
nextcloud-aio-fulltextsearch:
condition: service_started
required: false
nextcloud-aio-talk-recording:
condition: service_started
required: false
nextcloud-aio-imaginary:
condition: service_started
required: false
image: nextcloud/aio-nextcloud:latest
expose:
- "9000"
- "7867"
volumes:
- nextcloud_aio_nextcloud:/var/www/html:rw
- ${NEXTCLOUD_DATADIR}:/mnt/ncdata:rw
@@ -106,6 +140,28 @@ services:
restart: unless-stopped
networks:
- nextcloud-aio
tmpfs:
- /tmp:exec
nextcloud-aio-notify-push:
image: nextcloud/aio-notify-push:latest
expose:
- "7867"
volumes:
- nextcloud_aio_nextcloud:/nextcloud:ro
environment:
- NC_DOMAIN=${NC_DOMAIN}
- NEXTCLOUD_HOST=nextcloud-aio-nextcloud
- REDIS_HOST=nextcloud-aio-redis
- REDIS_HOST_PASSWORD=${REDIS_PASSWORD}
- POSTGRES_HOST=nextcloud-aio-database
- POSTGRES_PASSWORD=${DATABASE_PASSWORD}
- POSTGRES_DB=nextcloud_database
- POSTGRES_USER=nextcloud
restart: unless-stopped
networks:
- nextcloud-aio
read_only: true
nextcloud-aio-redis:
image: nextcloud/aio-redis:latest
@@ -158,6 +214,13 @@ services:
- talk-recording
networks:
- nextcloud-aio
read_only: true
tmpfs:
- /var/log/supervisord
- /var/run/supervisord
- /conf
- /var/lib/turn
- /tmp
nextcloud-aio-talk-recording:
image: nextcloud/aio-talk-recording:latest
@@ -174,6 +237,10 @@ services:
- talk-recording
networks:
- nextcloud-aio
read_only: true
tmpfs:
- /tmp
- /conf
nextcloud-aio-clamav:
image: nextcloud/aio-clamav:latest
@@ -189,6 +256,11 @@ services:
- clamav
networks:
- nextcloud-aio
read_only: true
tmpfs:
- /var/lock
- /var/log/clamav
- /tmp
nextcloud-aio-onlyoffice:
image: nextcloud/aio-onlyoffice:latest
@@ -220,6 +292,9 @@ services:
- imaginary
networks:
- nextcloud-aio
read_only: true
tmpfs:
- /tmp
nextcloud-aio-fulltextsearch:
image: nextcloud/aio-fulltextsearch:latest
@@ -227,9 +302,14 @@ services:
- "9200"
environment:
- TZ=${TIMEZONE}
- ES_JAVA_OPTS=-Xms512M -Xmx512M
- bootstrap.memory_lock=true
- cluster.name=nextcloud-aio
- discovery.type=single-node
- ES_JAVA_OPTS=-Xms1024M -Xmx1024M
- POSTGRES_HOST=nextcloud-aio-database
- logger.org.elasticsearch.discovery=WARN
- http.port=9200
- xpack.license.self_generated.type=basic
- xpack.security.enabled=false
volumes:
- nextcloud_aio_elasticsearch:/usr/share/elasticsearch/data:rw
restart: unless-stopped

View File

@@ -20,6 +20,7 @@ OUTPUT="$(echo "$OUTPUT" | jq 'del(.services[].nextcloud_exec_commands)')"
OUTPUT="$(echo "$OUTPUT" | jq 'del(.services[] | select(.container_name == "nextcloud-aio-watchtower"))')"
OUTPUT="$(echo "$OUTPUT" | jq 'del(.services[] | select(.container_name == "nextcloud-aio-domaincheck"))')"
OUTPUT="$(echo "$OUTPUT" | jq 'del(.services[] | select(.container_name == "nextcloud-aio-borgbackup"))')"
OUTPUT="$(echo "$OUTPUT" | jq '.services[] |= if has("depends_on") then .depends_on |= map({ (.): { "condition": "service_started", "required": false } }) else . end' | jq '.services[] |= if has("depends_on") then .depends_on |= reduce .[] as $item ({}; . + $item) else . end')"
snap install yq
mkdir -p ./manual-install
@@ -111,7 +112,7 @@ for name in "${NAMES[@]}"
do
OUTPUT="$(echo "$OUTPUT" | sed "/container_name.*$name$/i\ \ $name:")"
if [ "$name" != "nextcloud-aio-apache" ]; then
OUTPUT="$(echo "$OUTPUT" | sed "/ $name:/i\ ")"
OUTPUT="$(echo "$OUTPUT" | sed "/^ $name:/i\ ")"
fi
done

View File

@@ -12,7 +12,7 @@ The only way to fix this on your side is upgrading regularly (e.g. by enabling d
1. 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
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
```

View File

@@ -14,7 +14,7 @@ The procedure for migrating only the files works like this:
1. Install Nextcloud AIO on a new server/linux installation, enter your domain and wait until all containers are running
1. Recreate all users that were present on your former installation
1. Take a backup using Nextcloud AIO's built-in backup solution (so that you can easily restore to this state again) (Note: this will stop all containers and is expected: don't start the container again at this point!)
1. Restore the datadirectory of your former instance: for `/path/to/nextcloud/data/` run `sudo docker cp --follow-link /path/to/nextcloud/data/ nextcloud-aio-nextcloud:/mnt/ncdata/` Note: the `/` at the end are necessary.
1. Restore the datadirectory of your former instance: for `/path/to/nextcloud/data/` run `sudo docker cp --follow-link /path/to/nextcloud/data/. nextcloud-aio-nextcloud:/mnt/ncdata/` Note: the `/.` and `/` at the end are necessary.
1. Next, run `sudo docker run --rm --volume nextcloud_aio_nextcloud_data:/mnt/ncdata:rw alpine chown -R 33:0 /mnt/ncdata/` and `sudo docker run --rm --volume nextcloud_aio_nextcloud_data:/mnt/ncdata:rw alpine chmod -R 750 /mnt/ncdata/` to apply the correct permissions. (Or if `NEXTCLOUD_DATADIR` was provided, apply `chown -R 33:0` and `chmod -R 750` to the chosen path.)
1. Start the containers again and wait until all containers are running
1. Run `sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ files:scan-app-data && sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ files:scan --all` in order to scan all files in the datadirectory.
@@ -24,7 +24,7 @@ The procedure for migrating only the files works like this:
The procedure for migrating the files and the database works like this:
1. Make sure that your old instance is on exactly the same version like the version used in Nextcloud AIO. (e.g. 23.0.0) You can find the used version here: [click here](https://github.com/nextcloud/all-in-one/search?l=Dockerfile&q=NEXTCLOUD_VERSION&type=). If not, simply upgrade your former installation to that version or wait until the version used in Nextcloud AIO got updated to the same version of your former installation or the other way around.
1. Take a backup of your former instance (especially from your datadirectory and database)
1. First, on the old instance, update all Nextcloud apps to its latest version via the app management site (important for the restore later on). Then take a backup of your former instance (especially from your datadirectory and database).
1. If your former installation didn't use Postgresql already, you will now need to convert your old installation to use Postgresql as database temporarily (in order to be able to perform a pg_dump afterwards):
1. Install Postgresql on your former installation: on a Debian based OS should the following command work:
```
@@ -56,7 +56,7 @@ The procedure for migrating the files and the database works like this:
```
**Please note:** The exact name of the database export file is important! (`database-dump.sql`)<br>
And of course you need to to use the correct name that the Postgresql database has for the export (if `$PG_DATABASE` doesn't work directly).
1. At this point, you can finally install Nextcloud AIO on a new server/linux installation, enter your domain in the AIO interface (use the same domain that you used on your former installation) and wait until all containers are running. Then you should check the included Nextcloud version by running `sudo docker inspect nextcloud-aio-nextcloud | grep NEXTCLOUD_VERSION`.
1. At this point, you can finally install Nextcloud AIO on a new server/linux installation, enter your domain in the AIO interface (use the same domain that you used on your former installation) and wait until all containers are running. Then you should check the included Nextcloud version by running `sudo docker inspect nextcloud-aio-nextcloud | grep NEXTCLOUD_VERSION`. Also install all apps via the apps management site that were installed on the old Nextcloud installation. Otherwise they will show as installed, but will not work.
1. Next, take a backup using Nextcloud AIO's built-in backup solution (so that you can easily restore to this state again) (Note: this will stop all containers and is expected: don't start the container again at this point!)
1. Now, we are slowly starting to import your files and database. First, you need to modify the datadirectory that is stored inside the database export:
1. Find out what the directory of your old Nextcloud installation is by e.g. opening the config.php file and looking at the value `datadirectory`.
@@ -75,7 +75,7 @@ The procedure for migrating the files and the database works like this:
sudo docker run --rm --volume nextcloud_aio_database_dump:/mnt/data:rw alpine chmod 777 /mnt/data/database-dump.sql
sudo docker run --rm --volume nextcloud_aio_database_dump:/mnt/data:rw alpine rm /mnt/data/initial-cleanup-done
```
1. If the commands above were executed successfully, restore the datadirectory of your former instance into your datadirectory: `sudo docker run --rm --volume nextcloud_aio_nextcloud_data:/mnt/ncdata:rw alpine sh -c "rm -rf /mnt/ncdata/*"` and `sudo docker cp --follow-link /path/to/nextcloud/data/ nextcloud-aio-nextcloud:/mnt/ncdata/` Note: the `/` at the end are necessary. (Or if `NEXTCLOUD_DATADIR` was provided, first delete the files in there and then copy the files to the chosen path.)
1. If the commands above were executed successfully, restore the datadirectory of your former instance into your datadirectory: `sudo docker run --rm --volume nextcloud_aio_nextcloud_data:/mnt/ncdata:rw alpine sh -c "rm -rf /mnt/ncdata/*"` and `sudo docker cp --follow-link /path/to/nextcloud/data/. nextcloud-aio-nextcloud:/mnt/ncdata/` Note: the `/.` and `/` at the end are necessary. (Or if `NEXTCLOUD_DATADIR` was provided, first delete the files in there and then copy the files to the chosen path.)
1. Next, run `sudo docker run --rm --volume nextcloud_aio_nextcloud_data:/mnt/ncdata:rw alpine chown -R 33:0 /mnt/ncdata/` and `sudo docker run --rm --volume nextcloud_aio_nextcloud_data:/mnt/ncdata:rw alpine chmod -R 750 /mnt/ncdata/` to apply the correct permissions on the datadirectory. (Or if `NEXTCLOUD_DATADIR` was provided, apply `chown -R 33:0` and `chmod -R 750` to the chosen path.)
1. Edit the Nextcloud AIO config.php file using `sudo docker run -it --rm --volume nextcloud_aio_nextcloud:/var/www/html:rw alpine sh -c "apk add --no-cache nano && nano /var/www/html/config/config.php"` and modify only `passwordsalt`, `secret`, `instanceid` and set it to the old values that you used on your old installation. If you are brave, feel free to modify further values e.g. add your old LDAP config or S3 storage config. (Some things like Mail server config can be added back using Nextcloud's webinterface later on).
1. When you are done and saved your changes to the file, finally start the containers again and wait until all containers are running.

View File

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

View File

@@ -2,11 +2,12 @@ apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.service: nextcloud-aio-apache
name: nextcloud-aio-apache
namespace: {{ .Values.NAMESPACE }}
spec:
replicas: 1
selector:
@@ -15,8 +16,8 @@ spec:
template:
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.network/nextcloud-aio: "true"
io.kompose.service: nextcloud-aio-apache
@@ -29,7 +30,22 @@ spec:
- "777"
- /nextcloud-aio-nextcloud
- /nextcloud-aio-apache
- /nextcloud-aio-apache-tmpfs0
- /nextcloud-aio-apache-tmpfs1
- /nextcloud-aio-apache-tmpfs2
- /nextcloud-aio-apache-tmpfs3
- /nextcloud-aio-apache-tmpfs4
volumeMounts:
- name: nextcloud-aio-apache-tmpfs4
mountPath: /nextcloud-aio-apache-tmpfs4
- name: nextcloud-aio-apache-tmpfs3
mountPath: /nextcloud-aio-apache-tmpfs3
- name: nextcloud-aio-apache-tmpfs2
mountPath: /nextcloud-aio-apache-tmpfs2
- name: nextcloud-aio-apache-tmpfs1
mountPath: /nextcloud-aio-apache-tmpfs1
- name: nextcloud-aio-apache-tmpfs0
mountPath: /nextcloud-aio-apache-tmpfs0
- name: nextcloud-aio-apache
mountPath: /nextcloud-aio-apache
- name: nextcloud-aio-nextcloud
@@ -48,22 +64,41 @@ spec:
value: "{{ .Values.NC_DOMAIN }}"
- name: NEXTCLOUD_HOST
value: nextcloud-aio-nextcloud
- name: NOTIFY_PUSH_HOST
value: nextcloud-aio-notify-push
- name: ONLYOFFICE_HOST
value: nextcloud-aio-onlyoffice
- name: TALK_HOST
value: nextcloud-aio-talk
- name: TZ
value: "{{ .Values.TIMEZONE }}"
image: nextcloud/aio-apache:20230613_120442-latest
image: nextcloud/aio-apache:20230817_065941-latest
name: nextcloud-aio-apache
ports:
- containerPort: {{ .Values.APACHE_PORT }}
hostPort: {{ .Values.APACHE_PORT }}
protocol: TCP
- containerPort: {{ .Values.APACHE_PORT }}
hostPort: {{ .Values.APACHE_PORT }}
protocol: UDP
securityContext:
readOnlyRootFilesystem: true
volumeMounts:
- mountPath: /var/www/html
name: nextcloud-aio-nextcloud
readOnly: true
- mountPath: /mnt/data
name: nextcloud-aio-apache
- mountPath: /var/log/supervisord
name: nextcloud-aio-apache-tmpfs0
- mountPath: /var/run/supervisord
name: nextcloud-aio-apache-tmpfs1
- mountPath: /usr/local/apache2/logs
name: nextcloud-aio-apache-tmpfs2
- mountPath: /tmp
name: nextcloud-aio-apache-tmpfs3
- mountPath: /home/www-data
name: nextcloud-aio-apache-tmpfs4
volumes:
- name: nextcloud-aio-nextcloud
persistentVolumeClaim:
@@ -71,3 +106,13 @@ spec:
- name: nextcloud-aio-apache
persistentVolumeClaim:
claimName: nextcloud-aio-apache
- emptyDir: {}
name: nextcloud-aio-apache-tmpfs0
- emptyDir: {}
name: nextcloud-aio-apache-tmpfs1
- emptyDir: {}
name: nextcloud-aio-apache-tmpfs2
- emptyDir: {}
name: nextcloud-aio-apache-tmpfs3
- emptyDir: {}
name: nextcloud-aio-apache-tmpfs4

View File

@@ -4,6 +4,7 @@ metadata:
labels:
io.kompose.service: nextcloud-aio-apache
name: nextcloud-aio-apache
namespace: {{ .Values.NAMESPACE }}
spec:
{{- if .Values.STORAGE_CLASS }}
storageClassName: {{ .Values.STORAGE_CLASS }}

View File

@@ -2,16 +2,21 @@ apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.service: nextcloud-aio-apache
name: nextcloud-aio-apache
namespace: {{ .Values.NAMESPACE }}
spec:
type: LoadBalancer
ports:
- name: "{{ .Values.APACHE_PORT }}"
port: {{ .Values.APACHE_PORT }}
targetPort: {{ .Values.APACHE_PORT }}
- name: {{ .Values.APACHE_PORT }}-udp
port: {{ .Values.APACHE_PORT }}
protocol: UDP
targetPort: {{ .Values.APACHE_PORT }}
selector:
io.kompose.service: nextcloud-aio-apache

View File

@@ -3,11 +3,12 @@ apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.service: nextcloud-aio-clamav
name: nextcloud-aio-clamav
namespace: {{ .Values.NAMESPACE }}
spec:
replicas: 1
selector:
@@ -16,8 +17,8 @@ spec:
template:
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.network/nextcloud-aio: "true"
io.kompose.service: nextcloud-aio-clamav
@@ -29,7 +30,16 @@ spec:
- chmod
- "777"
- /nextcloud-aio-clamav
- /nextcloud-aio-clamav-tmpfs0
- /nextcloud-aio-clamav-tmpfs1
- /nextcloud-aio-clamav-tmpfs2
volumeMounts:
- name: nextcloud-aio-clamav-tmpfs2
mountPath: /nextcloud-aio-clamav-tmpfs2
- name: nextcloud-aio-clamav-tmpfs1
mountPath: /nextcloud-aio-clamav-tmpfs1
- name: nextcloud-aio-clamav-tmpfs0
mountPath: /nextcloud-aio-clamav-tmpfs0
- name: nextcloud-aio-clamav
mountPath: /nextcloud-aio-clamav
containers:
@@ -38,15 +48,31 @@ spec:
value: "90"
- name: TZ
value: "{{ .Values.TIMEZONE }}"
image: nextcloud/aio-clamav:20230613_120442-latest
image: nextcloud/aio-clamav:20230817_065941-latest
name: nextcloud-aio-clamav
ports:
- containerPort: 3310
hostPort: 3310
protocol: TCP
securityContext:
readOnlyRootFilesystem: true
volumeMounts:
- mountPath: /var/lib/clamav
name: nextcloud-aio-clamav
- mountPath: /var/lock
name: nextcloud-aio-clamav-tmpfs0
- mountPath: /var/log/clamav
name: nextcloud-aio-clamav-tmpfs1
- mountPath: /tmp
name: nextcloud-aio-clamav-tmpfs2
volumes:
- name: nextcloud-aio-clamav
persistentVolumeClaim:
claimName: nextcloud-aio-clamav
- emptyDir: {}
name: nextcloud-aio-clamav-tmpfs0
- emptyDir: {}
name: nextcloud-aio-clamav-tmpfs1
- emptyDir: {}
name: nextcloud-aio-clamav-tmpfs2
{{- end }}

View File

@@ -4,6 +4,7 @@ metadata:
labels:
io.kompose.service: nextcloud-aio-clamav
name: nextcloud-aio-clamav
namespace: {{ .Values.NAMESPACE }}
spec:
{{- if .Values.STORAGE_CLASS }}
storageClassName: {{ .Values.STORAGE_CLASS }}

View File

@@ -3,11 +3,12 @@ apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.service: nextcloud-aio-clamav
name: nextcloud-aio-clamav
namespace: {{ .Values.NAMESPACE }}
spec:
ports:
- name: "3310"

View File

@@ -3,11 +3,12 @@ apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.service: nextcloud-aio-collabora
name: nextcloud-aio-collabora
namespace: {{ .Values.NAMESPACE }}
spec:
replicas: 1
selector:
@@ -16,8 +17,8 @@ spec:
template:
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.network/nextcloud-aio: "true"
io.kompose.service: nextcloud-aio-collabora
@@ -36,8 +37,10 @@ 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: nextcloud/aio-collabora:20230613_120442-latest
image: nextcloud/aio-collabora:20230817_065941-latest
name: nextcloud-aio-collabora
ports:
- containerPort: 9980
hostPort: 9980
protocol: TCP
{{- end }}

View File

@@ -3,11 +3,12 @@ apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.service: nextcloud-aio-collabora
name: nextcloud-aio-collabora
namespace: {{ .Values.NAMESPACE }}
spec:
ports:
- name: "9980"

View File

@@ -2,11 +2,12 @@ apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.service: nextcloud-aio-database
name: nextcloud-aio-database
namespace: {{ .Values.NAMESPACE }}
spec:
replicas: 1
selector:
@@ -15,8 +16,8 @@ spec:
template:
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.network/nextcloud-aio: "true"
io.kompose.service: nextcloud-aio-database
@@ -30,7 +31,10 @@ spec:
- /nextcloud-aio-database/data
- /nextcloud-aio-database
- /nextcloud-aio-database-dump
- /nextcloud-aio-database-tmpfs0
volumeMounts:
- name: nextcloud-aio-database-tmpfs0
mountPath: /nextcloud-aio-database-tmpfs0
- name: nextcloud-aio-database-dump
mountPath: /nextcloud-aio-database-dump
- name: nextcloud-aio-database
@@ -43,7 +47,10 @@ spec:
- "-R"
- /nextcloud-aio-database
- /nextcloud-aio-database-dump
- /nextcloud-aio-database-tmpfs0
volumeMounts:
- name: nextcloud-aio-database-tmpfs0
mountPath: /nextcloud-aio-database-tmpfs0
- name: nextcloud-aio-database-dump
mountPath: /nextcloud-aio-database-dump
- name: nextcloud-aio-database
@@ -60,16 +67,22 @@ spec:
value: nextcloud
- name: TZ
value: "{{ .Values.TIMEZONE }}"
image: nextcloud/aio-postgresql:20230613_120442-latest
image: nextcloud/aio-postgresql:20230817_065941-latest
name: nextcloud-aio-database
ports:
- containerPort: 5432
hostPort: 5432
protocol: TCP
securityContext:
readOnlyRootFilesystem: true
volumeMounts:
- mountPath: /var/lib/postgresql/data
subPath: data
name: nextcloud-aio-database
- mountPath: /mnt/data
name: nextcloud-aio-database-dump
- mountPath: /var/run/postgresql
name: nextcloud-aio-database-tmpfs0
terminationGracePeriodSeconds: 1800
volumes:
- name: nextcloud-aio-database
@@ -78,3 +91,5 @@ spec:
- name: nextcloud-aio-database-dump
persistentVolumeClaim:
claimName: nextcloud-aio-database-dump
- emptyDir: {}
name: nextcloud-aio-database-tmpfs0

View File

@@ -4,6 +4,7 @@ metadata:
labels:
io.kompose.service: nextcloud-aio-database-dump
name: nextcloud-aio-database-dump
namespace: {{ .Values.NAMESPACE }}
spec:
{{- if .Values.STORAGE_CLASS }}
storageClassName: {{ .Values.STORAGE_CLASS }}

View File

@@ -4,6 +4,7 @@ metadata:
labels:
io.kompose.service: nextcloud-aio-database
name: nextcloud-aio-database
namespace: {{ .Values.NAMESPACE }}
spec:
{{- if .Values.STORAGE_CLASS }}
storageClassName: {{ .Values.STORAGE_CLASS }}

View File

@@ -2,11 +2,12 @@ apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.service: nextcloud-aio-database
name: nextcloud-aio-database
namespace: {{ .Values.NAMESPACE }}
spec:
ports:
- name: "5432"

View File

@@ -4,6 +4,7 @@ metadata:
labels:
io.kompose.service: nextcloud-aio-elasticsearch
name: nextcloud-aio-elasticsearch
namespace: {{ .Values.NAMESPACE }}
spec:
{{- if .Values.STORAGE_CLASS }}
storageClassName: {{ .Values.STORAGE_CLASS }}

View File

@@ -3,11 +3,12 @@ apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.service: nextcloud-aio-fulltextsearch
name: nextcloud-aio-fulltextsearch
namespace: {{ .Values.NAMESPACE }}
spec:
replicas: 1
selector:
@@ -16,8 +17,8 @@ spec:
template:
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.network/nextcloud-aio: "true"
io.kompose.service: nextcloud-aio-fulltextsearch
@@ -35,17 +36,29 @@ spec:
containers:
- env:
- name: ES_JAVA_OPTS
value: -Xms1024M -Xmx1024M
- name: POSTGRES_HOST
value: nextcloud-aio-database
value: -Xms512M -Xmx512M
- name: TZ
value: "{{ .Values.TIMEZONE }}"
- name: bootstrap.memory_lock
value: "true"
- name: cluster.name
value: nextcloud-aio
- name: discovery.type
value: single-node
image: nextcloud/aio-fulltextsearch:20230613_120442-latest
- name: http.port
value: "9200"
- name: logger.org.elasticsearch.discovery
value: WARN
- name: xpack.license.self_generated.type
value: basic
- name: xpack.security.enabled
value: "false"
image: nextcloud/aio-fulltextsearch:20230817_065941-latest
name: nextcloud-aio-fulltextsearch
ports:
- containerPort: 9200
hostPort: 9200
protocol: TCP
volumeMounts:
- mountPath: /usr/share/elasticsearch/data
name: nextcloud-aio-elasticsearch

View File

@@ -3,11 +3,12 @@ apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.service: nextcloud-aio-fulltextsearch
name: nextcloud-aio-fulltextsearch
namespace: {{ .Values.NAMESPACE }}
spec:
ports:
- name: "9200"

View File

@@ -3,11 +3,12 @@ apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.service: nextcloud-aio-imaginary
name: nextcloud-aio-imaginary
namespace: {{ .Values.NAMESPACE }}
spec:
replicas: 1
selector:
@@ -16,22 +17,41 @@ spec:
template:
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.network/nextcloud-aio: "true"
io.kompose.service: nextcloud-aio-imaginary
spec:
initContainers:
- name: init-volumes
image: alpine
command:
- chmod
- "777"
- /nextcloud-aio-imaginary-tmpfs0
volumeMounts:
- name: nextcloud-aio-imaginary-tmpfs0
mountPath: /nextcloud-aio-imaginary-tmpfs0
containers:
- env:
- name: TZ
value: "{{ .Values.TIMEZONE }}"
image: nextcloud/aio-imaginary:20230613_120442-latest
image: nextcloud/aio-imaginary:20230817_065941-latest
name: nextcloud-aio-imaginary
ports:
- containerPort: 9000
hostPort: 9000
protocol: TCP
securityContext:
capabilities:
add:
- SYS_NICE
readOnlyRootFilesystem: true
volumeMounts:
- mountPath: /tmp
name: nextcloud-aio-imaginary-tmpfs0
volumes:
- emptyDir: {}
name: nextcloud-aio-imaginary-tmpfs0
{{- end }}

View File

@@ -3,11 +3,12 @@ apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.service: nextcloud-aio-imaginary
name: nextcloud-aio-imaginary
namespace: {{ .Values.NAMESPACE }}
spec:
ports:
- name: "9000"

View File

@@ -0,0 +1,6 @@
apiVersion: v1
kind: Namespace
metadata:
name: {{ .Values.NAMESPACE }}
namespace: {{ .Values.NAMESPACE }}
spec: {}

View File

@@ -1,13 +0,0 @@
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: nextcloud-aio
spec:
ingress:
- from:
- podSelector:
matchLabels:
io.kompose.network/nextcloud-aio: "true"
podSelector:
matchLabels:
io.kompose.network/nextcloud-aio: "true"

View File

@@ -4,6 +4,7 @@ metadata:
labels:
io.kompose.service: nextcloud-aio-nextcloud-data
name: nextcloud-aio-nextcloud-data
namespace: {{ .Values.NAMESPACE }}
spec:
{{- if .Values.STORAGE_CLASS }}
storageClassName: {{ .Values.STORAGE_CLASS }}

View File

@@ -2,11 +2,12 @@ apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.service: nextcloud-aio-nextcloud
name: nextcloud-aio-nextcloud
namespace: {{ .Values.NAMESPACE }}
spec:
replicas: 1
selector:
@@ -15,8 +16,8 @@ spec:
template:
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.network/nextcloud-aio: "true"
io.kompose.service: nextcloud-aio-nextcloud
@@ -29,7 +30,10 @@ spec:
- "777"
- /nextcloud-aio-nextcloud
- /nextcloud-aio-nextcloud-trusted-cacerts
- /nextcloud-aio-nextcloud-tmpfs0
volumeMounts:
- name: nextcloud-aio-nextcloud-tmpfs0
mountPath: /nextcloud-aio-nextcloud-tmpfs0
- name: nextcloud-aio-nextcloud-trusted-cacerts
mountPath: /nextcloud-aio-nextcloud-trusted-cacerts
- name: nextcloud-aio-nextcloud
@@ -116,11 +120,12 @@ spec:
value: "{{ .Values.TIMEZONE }}"
- name: UPDATE_NEXTCLOUD_APPS
value: "{{ .Values.UPDATE_NEXTCLOUD_APPS }}"
image: nextcloud/aio-nextcloud:20230613_120442-latest
image: nextcloud/aio-nextcloud:20230817_065941-latest
name: nextcloud-aio-nextcloud
ports:
- containerPort: 9000
- containerPort: 7867
hostPort: 9000
protocol: TCP
volumeMounts:
- mountPath: /var/www/html
name: nextcloud-aio-nextcloud
@@ -129,6 +134,8 @@ spec:
- mountPath: /usr/local/share/ca-certificates
name: nextcloud-aio-nextcloud-trusted-cacerts
readOnly: true
- mountPath: /tmp
name: nextcloud-aio-nextcloud-tmpfs0
volumes:
- name: nextcloud-aio-nextcloud
persistentVolumeClaim:
@@ -139,3 +146,5 @@ spec:
- name: nextcloud-aio-nextcloud-trusted-cacerts
persistentVolumeClaim:
claimName: nextcloud-aio-nextcloud-trusted-cacerts
- emptyDir: {}
name: nextcloud-aio-nextcloud-tmpfs0

View File

@@ -4,6 +4,7 @@ metadata:
labels:
io.kompose.service: nextcloud-aio-nextcloud
name: nextcloud-aio-nextcloud
namespace: {{ .Values.NAMESPACE }}
spec:
{{- if .Values.STORAGE_CLASS }}
storageClassName: {{ .Values.STORAGE_CLASS }}

View File

@@ -2,18 +2,16 @@ apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.service: nextcloud-aio-nextcloud
name: nextcloud-aio-nextcloud
namespace: {{ .Values.NAMESPACE }}
spec:
ports:
- name: "9000"
port: 9000
targetPort: 9000
- name: "7867"
port: 7867
targetPort: 7867
selector:
io.kompose.service: nextcloud-aio-nextcloud

View File

@@ -4,6 +4,7 @@ metadata:
labels:
io.kompose.service: nextcloud-aio-nextcloud-trusted-cacerts
name: nextcloud-aio-nextcloud-trusted-cacerts
namespace: {{ .Values.NAMESPACE }}
spec:
{{- if .Values.STORAGE_CLASS }}
storageClassName: {{ .Values.STORAGE_CLASS }}

View File

@@ -0,0 +1,68 @@
apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.service: nextcloud-aio-notify-push
name: nextcloud-aio-notify-push
namespace: {{ .Values.NAMESPACE }}
spec:
replicas: 1
selector:
matchLabels:
io.kompose.service: nextcloud-aio-notify-push
template:
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.network/nextcloud-aio: "true"
io.kompose.service: nextcloud-aio-notify-push
spec:
initContainers:
- name: init-volumes
image: alpine
command:
- chmod
- "777"
- /nextcloud-aio-nextcloud
volumeMounts:
- name: nextcloud-aio-nextcloud
mountPath: /nextcloud-aio-nextcloud
containers:
- env:
- name: NC_DOMAIN
value: "{{ .Values.NC_DOMAIN }}"
- name: NEXTCLOUD_HOST
value: nextcloud-aio-nextcloud
- name: POSTGRES_DB
value: nextcloud_database
- name: POSTGRES_HOST
value: nextcloud-aio-database
- name: POSTGRES_PASSWORD
value: "{{ .Values.DATABASE_PASSWORD }}"
- name: POSTGRES_USER
value: nextcloud
- name: REDIS_HOST
value: nextcloud-aio-redis
- name: REDIS_HOST_PASSWORD
value: "{{ .Values.REDIS_PASSWORD }}"
image: nextcloud/aio-notify-push:20230817_065941-latest
name: nextcloud-aio-notify-push
ports:
- containerPort: 7867
hostPort: 7867
protocol: TCP
securityContext:
readOnlyRootFilesystem: true
volumeMounts:
- mountPath: /nextcloud
name: nextcloud-aio-nextcloud
readOnly: true
volumes:
- name: nextcloud-aio-nextcloud
persistentVolumeClaim:
claimName: nextcloud-aio-nextcloud

View File

@@ -0,0 +1,17 @@
apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.service: nextcloud-aio-notify-push
name: nextcloud-aio-notify-push
namespace: {{ .Values.NAMESPACE }}
spec:
ports:
- name: "7867"
port: 7867
targetPort: 7867
selector:
io.kompose.service: nextcloud-aio-notify-push

View File

@@ -3,11 +3,12 @@ apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.service: nextcloud-aio-onlyoffice
name: nextcloud-aio-onlyoffice
namespace: {{ .Values.NAMESPACE }}
spec:
replicas: 1
selector:
@@ -16,8 +17,8 @@ spec:
template:
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.network/nextcloud-aio: "true"
io.kompose.service: nextcloud-aio-onlyoffice
@@ -42,10 +43,12 @@ spec:
value: "{{ .Values.ONLYOFFICE_SECRET }}"
- name: TZ
value: "{{ .Values.TIMEZONE }}"
image: nextcloud/aio-onlyoffice:20230613_120442-latest
image: nextcloud/aio-onlyoffice:20230817_065941-latest
name: nextcloud-aio-onlyoffice
ports:
- containerPort: 80
hostPort: 80
protocol: TCP
volumeMounts:
- mountPath: /var/lib/onlyoffice
name: nextcloud-aio-onlyoffice

View File

@@ -4,6 +4,7 @@ metadata:
labels:
io.kompose.service: nextcloud-aio-onlyoffice
name: nextcloud-aio-onlyoffice
namespace: {{ .Values.NAMESPACE }}
spec:
{{- if .Values.STORAGE_CLASS }}
storageClassName: {{ .Values.STORAGE_CLASS }}

View File

@@ -3,11 +3,12 @@ apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.service: nextcloud-aio-onlyoffice
name: nextcloud-aio-onlyoffice
namespace: {{ .Values.NAMESPACE }}
spec:
ports:
- name: "80"

View File

@@ -2,11 +2,12 @@ apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.service: nextcloud-aio-redis
name: nextcloud-aio-redis
namespace: {{ .Values.NAMESPACE }}
spec:
replicas: 1
selector:
@@ -15,8 +16,8 @@ spec:
template:
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.network/nextcloud-aio: "true"
io.kompose.service: nextcloud-aio-redis
@@ -37,10 +38,14 @@ spec:
value: "{{ .Values.REDIS_PASSWORD }}"
- name: TZ
value: "{{ .Values.TIMEZONE }}"
image: nextcloud/aio-redis:20230613_120442-latest
image: nextcloud/aio-redis:20230817_065941-latest
name: nextcloud-aio-redis
ports:
- containerPort: 6379
hostPort: 6379
protocol: TCP
securityContext:
readOnlyRootFilesystem: true
volumeMounts:
- mountPath: /data
name: nextcloud-aio-redis

View File

@@ -4,6 +4,7 @@ metadata:
labels:
io.kompose.service: nextcloud-aio-redis
name: nextcloud-aio-redis
namespace: {{ .Values.NAMESPACE }}
spec:
{{- if .Values.STORAGE_CLASS }}
storageClassName: {{ .Values.STORAGE_CLASS }}

View File

@@ -2,11 +2,12 @@ apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.service: nextcloud-aio-redis
name: nextcloud-aio-redis
namespace: {{ .Values.NAMESPACE }}
spec:
ports:
- name: "6379"

View File

@@ -3,11 +3,12 @@ apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.service: nextcloud-aio-talk
name: nextcloud-aio-talk
namespace: {{ .Values.NAMESPACE }}
spec:
replicas: 1
selector:
@@ -16,12 +17,34 @@ spec:
template:
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.network/nextcloud-aio: "true"
io.kompose.service: nextcloud-aio-talk
spec:
initContainers:
- name: init-volumes
image: alpine
command:
- chmod
- "777"
- /nextcloud-aio-talk-tmpfs0
- /nextcloud-aio-talk-tmpfs1
- /nextcloud-aio-talk-tmpfs2
- /nextcloud-aio-talk-tmpfs3
- /nextcloud-aio-talk-tmpfs4
volumeMounts:
- name: nextcloud-aio-talk-tmpfs4
mountPath: /nextcloud-aio-talk-tmpfs4
- name: nextcloud-aio-talk-tmpfs3
mountPath: /nextcloud-aio-talk-tmpfs3
- name: nextcloud-aio-talk-tmpfs2
mountPath: /nextcloud-aio-talk-tmpfs2
- name: nextcloud-aio-talk-tmpfs1
mountPath: /nextcloud-aio-talk-tmpfs1
- name: nextcloud-aio-talk-tmpfs0
mountPath: /nextcloud-aio-talk-tmpfs0
containers:
- env:
- name: INTERNAL_SECRET
@@ -36,11 +59,40 @@ spec:
value: "{{ .Values.TURN_SECRET }}"
- name: TZ
value: "{{ .Values.TIMEZONE }}"
image: nextcloud/aio-talk:20230613_120442-latest
image: nextcloud/aio-talk:20230817_065941-latest
name: nextcloud-aio-talk
ports:
- containerPort: {{ .Values.TALK_PORT }}
hostPort: {{ .Values.TALK_PORT }}
protocol: TCP
- containerPort: {{ .Values.TALK_PORT }}
hostPort: {{ .Values.TALK_PORT }}
protocol: UDP
- containerPort: 8081
hostPort: 8081
protocol: TCP
securityContext:
readOnlyRootFilesystem: true
volumeMounts:
- mountPath: /var/log/supervisord
name: nextcloud-aio-talk-tmpfs0
- mountPath: /var/run/supervisord
name: nextcloud-aio-talk-tmpfs1
- mountPath: /conf
name: nextcloud-aio-talk-tmpfs2
- mountPath: /var/lib/turn
name: nextcloud-aio-talk-tmpfs3
- mountPath: /tmp
name: nextcloud-aio-talk-tmpfs4
volumes:
- emptyDir: {}
name: nextcloud-aio-talk-tmpfs0
- emptyDir: {}
name: nextcloud-aio-talk-tmpfs1
- emptyDir: {}
name: nextcloud-aio-talk-tmpfs2
- emptyDir: {}
name: nextcloud-aio-talk-tmpfs3
- emptyDir: {}
name: nextcloud-aio-talk-tmpfs4
{{- end }}

View File

@@ -3,11 +3,12 @@ apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.service: nextcloud-aio-talk-recording
name: nextcloud-aio-talk-recording
namespace: {{ .Values.NAMESPACE }}
spec:
replicas: 1
selector:
@@ -16,12 +17,25 @@ spec:
template:
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.network/nextcloud-aio: "true"
io.kompose.service: nextcloud-aio-talk-recording
spec:
initContainers:
- name: init-volumes
image: alpine
command:
- chmod
- "777"
- /nextcloud-aio-talk-recording-tmpfs0
- /nextcloud-aio-talk-recording-tmpfs1
volumeMounts:
- name: nextcloud-aio-talk-recording-tmpfs1
mountPath: /nextcloud-aio-talk-recording-tmpfs1
- name: nextcloud-aio-talk-recording-tmpfs0
mountPath: /nextcloud-aio-talk-recording-tmpfs0
containers:
- env:
- name: INTERNAL_SECRET
@@ -32,8 +46,22 @@ spec:
value: "{{ .Values.RECORDING_SECRET }}"
- name: TZ
value: "{{ .Values.TIMEZONE }}"
image: nextcloud/aio-talk-recording:20230613_120442-latest
image: nextcloud/aio-talk-recording:20230817_065941-latest
name: nextcloud-aio-talk-recording
ports:
- containerPort: 1234
hostPort: 1234
protocol: TCP
securityContext:
readOnlyRootFilesystem: true
volumeMounts:
- mountPath: /tmp
name: nextcloud-aio-talk-recording-tmpfs0
- mountPath: /conf
name: nextcloud-aio-talk-recording-tmpfs1
volumes:
- emptyDir: {}
name: nextcloud-aio-talk-recording-tmpfs0
- emptyDir: {}
name: nextcloud-aio-talk-recording-tmpfs1
{{- end }}

View File

@@ -3,11 +3,12 @@ apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.service: nextcloud-aio-talk-recording
name: nextcloud-aio-talk-recording
namespace: {{ .Values.NAMESPACE }}
spec:
ports:
- name: "1234"

View File

@@ -4,11 +4,12 @@ apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.service: nextcloud-aio-talk
name: nextcloud-aio-talk-public
namespace: {{ .Values.NAMESPACE }}
spec:
type: LoadBalancer
ports:
@@ -26,11 +27,12 @@ apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: kompose convert -c -f latest.yml
kompose.version: 1.28.0 (c4137012e)
kompose.cmd: kompose convert -c -f latest.yml --namespace {{ .Values.NAMESPACE }}
kompose.version: 1.30.0 (9d8dcb518)
labels:
io.kompose.service: nextcloud-aio-talk
name: nextcloud-aio-talk
namespace: {{ .Values.NAMESPACE }}
spec:
ports:
- name: "8081"

View File

@@ -15,6 +15,9 @@ curl -L https://github.com/kubernetes/kompose/releases/download/"$LATEST_KOMPOSE
chmod +x kompose
sudo mv ./kompose /usr/local/bin/kompose
# Install yq
snap install yq
set -ex
# Conversion of docker-compose
@@ -39,11 +42,14 @@ sed -i "/^volumes:/a\ \ nextcloud_aio_nextcloud_trusted_cacerts:\n \ \ \ \ name:
sed -i "s|\${NEXTCLOUD_TRUSTED_CACERTS_DIR}:|nextcloud_aio_nextcloud_trusted_cacerts:|g#" latest.yml
sed -i 's|\${|{{ .Values.|g' latest.yml
sed -i 's|}| }}|g' latest.yml
yq -i 'del(.services.[].profiles)' latest.yml
cat latest.yml
kompose convert -c -f latest.yml
kompose convert -c -f latest.yml --namespace nextcloud-aio-namespace
cd latest
mv ./templates/manual-install-nextcloud-aio-networkpolicy.yaml ./templates/nextcloud-aio-networkpolicy.yaml
if [ -f ./templates/manual-install-nextcloud-aio-networkpolicy.yaml ]; then
mv ./templates/manual-install-nextcloud-aio-networkpolicy.yaml ./templates/nextcloud-aio-networkpolicy.yaml
fi
# shellcheck disable=SC1083
find ./ -name '*networkpolicy.yaml' -exec sed -i "s|manual-install-nextcloud-aio|nextcloud-aio|" \{} \;
cat << EOL > /tmp/initcontainers
@@ -109,6 +115,8 @@ for variable in "${DEPLOYMENTS[@]}"; do
fi
done
# shellcheck disable=SC1083
find ./ -name '*.yaml' -exec sed -i "s|nextcloud-aio-namespace|\{\{ .Values.NAMESPACE \}\}|" \{} \;
# shellcheck disable=SC1083
find ./ -name '*service.yaml' -exec sed -i "/^status:/,$ d" \{} \;
# shellcheck disable=SC1083
find ./ -name '*deployment.yaml' -exec sed -i "s|manual-install-nextcloud-aio|nextcloud-aio|" \{} \;
@@ -147,7 +155,7 @@ for port in "${INTERNAL_TALK_PORTS[@]}"; do
done
echo '---' >> /tmp/talk-service.copy
# shellcheck disable=SC1083
find ./ -name '*talk-service.yaml' -exec grep -v '{{ .Values.*}}\|protocol: UDP\|type: LoadBalancer' \{} \; >> /tmp/talk-service.copy
find ./ -name '*talk-service.yaml' -exec grep -v '{{ .Values.TALK.*}}\|protocol: UDP\|type: LoadBalancer' \{} \; >> /tmp/talk-service.copy
# shellcheck disable=SC1083
find ./ -name '*talk-service.yaml' -exec mv /tmp/talk-service.copy \{} \;
# shellcheck disable=SC1083
@@ -197,6 +205,9 @@ 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
sed -i 's|10737418240|"10737418240"|' /tmp/sample.conf
# shellcheck disable=SC2129
echo "NAMESPACE: default # By changing this, you can adjust the namespace of the installation which allows to install multiple instances on one kubernetes cluster" >> /tmp/sample.conf
# shellcheck disable=SC2129
echo "" >> /tmp/sample.conf
# shellcheck disable=SC2129
echo 'STORAGE_CLASS: # By setting this, you can adjust the storage class for your volumes' >> /tmp/sample.conf

View File

@@ -31,6 +31,8 @@ NEXTCLOUD_TRUSTED_CACERTS_DIR: # Setting this to any value allows to auto
NEXTCLOUD_UPLOAD_LIMIT: 10G # This allows to change the upload limit of the Nextcloud container
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.
NAMESPACE: default # By changing this, you can adjust the namespace of the installation which allows to install multiple instances on one kubernetes cluster
STORAGE_CLASS: # By setting this, you can adjust the storage class for your volumes
APACHE_STORAGE_SIZE: 1Gi # You can change the size of the apache volume that default to 1Gi with this value
CLAMAV_STORAGE_SIZE: 1Gi # You can change the size of the clamav volume that default to 1Gi with this value

102
php/composer.lock generated
View File

@@ -134,16 +134,16 @@
},
{
"name": "guzzlehttp/promises",
"version": "2.0.0",
"version": "2.0.1",
"source": {
"type": "git",
"url": "https://github.com/guzzle/promises.git",
"reference": "3a494dc7dc1d7d12e511890177ae2d0e6c107da6"
"reference": "111166291a0f8130081195ac4556a5587d7f1b5d"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/guzzle/promises/zipball/3a494dc7dc1d7d12e511890177ae2d0e6c107da6",
"reference": "3a494dc7dc1d7d12e511890177ae2d0e6c107da6",
"url": "https://api.github.com/repos/guzzle/promises/zipball/111166291a0f8130081195ac4556a5587d7f1b5d",
"reference": "111166291a0f8130081195ac4556a5587d7f1b5d",
"shasum": ""
},
"require": {
@@ -197,7 +197,7 @@
],
"support": {
"issues": "https://github.com/guzzle/promises/issues",
"source": "https://github.com/guzzle/promises/tree/2.0.0"
"source": "https://github.com/guzzle/promises/tree/2.0.1"
},
"funding": [
{
@@ -213,20 +213,20 @@
"type": "tidelift"
}
],
"time": "2023-05-21T13:50:22+00:00"
"time": "2023-08-03T15:11:55+00:00"
},
{
"name": "guzzlehttp/psr7",
"version": "2.5.0",
"version": "2.6.0",
"source": {
"type": "git",
"url": "https://github.com/guzzle/psr7.git",
"reference": "b635f279edd83fc275f822a1188157ffea568ff6"
"reference": "8bd7c33a0734ae1c5d074360512beb716bef3f77"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/guzzle/psr7/zipball/b635f279edd83fc275f822a1188157ffea568ff6",
"reference": "b635f279edd83fc275f822a1188157ffea568ff6",
"url": "https://api.github.com/repos/guzzle/psr7/zipball/8bd7c33a0734ae1c5d074360512beb716bef3f77",
"reference": "8bd7c33a0734ae1c5d074360512beb716bef3f77",
"shasum": ""
},
"require": {
@@ -313,7 +313,7 @@
],
"support": {
"issues": "https://github.com/guzzle/psr7/issues",
"source": "https://github.com/guzzle/psr7/tree/2.5.0"
"source": "https://github.com/guzzle/psr7/tree/2.6.0"
},
"funding": [
{
@@ -329,7 +329,7 @@
"type": "tidelift"
}
],
"time": "2023-04-17T16:11:26+00:00"
"time": "2023-08-03T15:06:02+00:00"
},
{
"name": "http-interop/http-factory-guzzle",
@@ -461,16 +461,16 @@
},
{
"name": "laravel/serializable-closure",
"version": "v1.3.0",
"version": "v1.3.1",
"source": {
"type": "git",
"url": "https://github.com/laravel/serializable-closure.git",
"reference": "f23fe9d4e95255dacee1bf3525e0810d1a1b0f37"
"reference": "e5a3057a5591e1cfe8183034b0203921abe2c902"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/laravel/serializable-closure/zipball/f23fe9d4e95255dacee1bf3525e0810d1a1b0f37",
"reference": "f23fe9d4e95255dacee1bf3525e0810d1a1b0f37",
"url": "https://api.github.com/repos/laravel/serializable-closure/zipball/e5a3057a5591e1cfe8183034b0203921abe2c902",
"reference": "e5a3057a5591e1cfe8183034b0203921abe2c902",
"shasum": ""
},
"require": {
@@ -517,7 +517,7 @@
"issues": "https://github.com/laravel/serializable-closure/issues",
"source": "https://github.com/laravel/serializable-closure"
},
"time": "2023-01-30T18:31:20+00:00"
"time": "2023-07-14T13:56:28+00:00"
},
{
"name": "nikic/fast-route",
@@ -626,16 +626,16 @@
},
{
"name": "php-di/php-di",
"version": "7.0.3",
"version": "7.0.4",
"source": {
"type": "git",
"url": "https://github.com/PHP-DI/PHP-DI.git",
"reference": "d5dad2500f409d8b78371823c8b382fe9b5d0917"
"reference": "8ed79468dfb163824bbf48de5e35d1729f9313b6"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/PHP-DI/PHP-DI/zipball/d5dad2500f409d8b78371823c8b382fe9b5d0917",
"reference": "d5dad2500f409d8b78371823c8b382fe9b5d0917",
"url": "https://api.github.com/repos/PHP-DI/PHP-DI/zipball/8ed79468dfb163824bbf48de5e35d1729f9313b6",
"reference": "8ed79468dfb163824bbf48de5e35d1729f9313b6",
"shasum": ""
},
"require": {
@@ -683,7 +683,7 @@
],
"support": {
"issues": "https://github.com/PHP-DI/PHP-DI/issues",
"source": "https://github.com/PHP-DI/PHP-DI/tree/7.0.3"
"source": "https://github.com/PHP-DI/PHP-DI/tree/7.0.4"
},
"funding": [
{
@@ -695,20 +695,20 @@
"type": "tidelift"
}
],
"time": "2023-06-17T10:21:14+00:00"
"time": "2023-08-08T15:59:16+00:00"
},
{
"name": "php-di/slim-bridge",
"version": "3.3.0",
"version": "3.4.0",
"source": {
"type": "git",
"url": "https://github.com/PHP-DI/Slim-Bridge.git",
"reference": "9374b67ebf2f135b32c34907b7891b02b935d845"
"reference": "d14c95b34b3c5ba2e8c40020dd93fdcc8f3ba875"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/PHP-DI/Slim-Bridge/zipball/9374b67ebf2f135b32c34907b7891b02b935d845",
"reference": "9374b67ebf2f135b32c34907b7891b02b935d845",
"url": "https://api.github.com/repos/PHP-DI/Slim-Bridge/zipball/d14c95b34b3c5ba2e8c40020dd93fdcc8f3ba875",
"reference": "d14c95b34b3c5ba2e8c40020dd93fdcc8f3ba875",
"shasum": ""
},
"require": {
@@ -734,9 +734,9 @@
"description": "PHP-DI integration in Slim",
"support": {
"issues": "https://github.com/PHP-DI/Slim-Bridge/issues",
"source": "https://github.com/PHP-DI/Slim-Bridge/tree/3.3.0"
"source": "https://github.com/PHP-DI/Slim-Bridge/tree/3.4.0"
},
"time": "2023-01-13T15:49:44+00:00"
"time": "2023-06-29T14:08:47+00:00"
},
{
"name": "psr/container",
@@ -1218,16 +1218,16 @@
},
{
"name": "slim/slim",
"version": "4.11.0",
"version": "4.12.0",
"source": {
"type": "git",
"url": "https://github.com/slimphp/Slim.git",
"reference": "b0f4ca393ea037be9ac7292ba7d0a34d18bac0c7"
"reference": "e9e99c2b24398b967841c6c4c3048622cc7e2b18"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/slimphp/Slim/zipball/b0f4ca393ea037be9ac7292ba7d0a34d18bac0c7",
"reference": "b0f4ca393ea037be9ac7292ba7d0a34d18bac0c7",
"url": "https://api.github.com/repos/slimphp/Slim/zipball/e9e99c2b24398b967841c6c4c3048622cc7e2b18",
"reference": "e9e99c2b24398b967841c6c4c3048622cc7e2b18",
"shasum": ""
},
"require": {
@@ -1236,26 +1236,26 @@
"php": "^7.4 || ^8.0",
"psr/container": "^1.0 || ^2.0",
"psr/http-factory": "^1.0",
"psr/http-message": "^1.0",
"psr/http-message": "^1.1",
"psr/http-server-handler": "^1.0",
"psr/http-server-middleware": "^1.0",
"psr/log": "^1.1 || ^2.0 || ^3.0"
},
"require-dev": {
"adriansuter/php-autoload-override": "^1.3",
"adriansuter/php-autoload-override": "^1.4",
"ext-simplexml": "*",
"guzzlehttp/psr7": "^2.4",
"httpsoft/http-message": "^1.0",
"httpsoft/http-server-request": "^1.0",
"guzzlehttp/psr7": "^2.5",
"httpsoft/http-message": "^1.1",
"httpsoft/http-server-request": "^1.1",
"laminas/laminas-diactoros": "^2.17",
"nyholm/psr7": "^1.5",
"nyholm/psr7": "^1.8",
"nyholm/psr7-server": "^1.0",
"phpspec/prophecy": "^1.15",
"phpspec/prophecy": "^1.17",
"phpspec/prophecy-phpunit": "^2.0",
"phpstan/phpstan": "^1.8",
"phpunit/phpunit": "^9.5",
"slim/http": "^1.2",
"slim/psr7": "^1.5",
"phpstan/phpstan": "^1.10",
"phpunit/phpunit": "^9.6",
"slim/http": "^1.3",
"slim/psr7": "^1.6",
"squizlabs/php_codesniffer": "^3.7"
},
"suggest": {
@@ -1329,7 +1329,7 @@
"type": "tidelift"
}
],
"time": "2022-11-06T16:33:39+00:00"
"time": "2023-07-23T04:54:29+00:00"
},
{
"name": "slim/twig-view",
@@ -1709,16 +1709,16 @@
},
{
"name": "twig/twig",
"version": "v3.6.1",
"version": "v3.7.0",
"source": {
"type": "git",
"url": "https://github.com/twigphp/Twig.git",
"reference": "7e7d5839d4bec168dfeef0ac66d5c5a2edbabffd"
"reference": "5cf942bbab3df42afa918caeba947f1b690af64b"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/twigphp/Twig/zipball/7e7d5839d4bec168dfeef0ac66d5c5a2edbabffd",
"reference": "7e7d5839d4bec168dfeef0ac66d5c5a2edbabffd",
"url": "https://api.github.com/repos/twigphp/Twig/zipball/5cf942bbab3df42afa918caeba947f1b690af64b",
"reference": "5cf942bbab3df42afa918caeba947f1b690af64b",
"shasum": ""
},
"require": {
@@ -1764,7 +1764,7 @@
],
"support": {
"issues": "https://github.com/twigphp/Twig/issues",
"source": "https://github.com/twigphp/Twig/tree/v3.6.1"
"source": "https://github.com/twigphp/Twig/tree/v3.7.0"
},
"funding": [
{
@@ -1776,7 +1776,7 @@
"type": "tidelift"
}
],
"time": "2023-06-08T12:52:13+00:00"
"time": "2023-07-26T07:16:09+00:00"
}
],
"packages-dev": [],

View File

@@ -141,7 +141,7 @@
"type": "array",
"items": {
"type": "string",
"pattern": "^/[a-z/_]+$"
"pattern": "^/[a-z/_0-9-:]+$"
}
},
"volumes": {

View File

@@ -16,6 +16,11 @@
"ip_binding": "%APACHE_IP_BINDING%",
"port_number": "%APACHE_PORT%",
"protocol": "tcp"
},
{
"ip_binding": "%APACHE_IP_BINDING%",
"port_number": "%APACHE_PORT%",
"protocol": "udp"
}
],
"internal_port": "%APACHE_PORT%",
@@ -50,6 +55,14 @@
],
"networks": [
"nextcloud-aio"
],
"read_only": true,
"tmpfs": [
"/var/log/supervisord",
"/var/run/supervisord",
"/usr/local/apache2/logs",
"/tmp",
"/home/www-data"
]
},
{
@@ -91,6 +104,10 @@
],
"networks": [
"nextcloud-aio"
],
"read_only": true,
"tmpfs": [
"/var/run/postgresql"
]
},
{
@@ -192,6 +209,9 @@
],
"networks": [
"nextcloud-aio"
],
"tmpfs": [
"/tmp:exec"
]
},
{
@@ -327,6 +347,14 @@
],
"networks": [
"nextcloud-aio"
],
"read_only": true,
"tmpfs": [
"/var/log/supervisord",
"/var/run/supervisord",
"/conf",
"/var/lib/turn",
"/tmp"
]
},
{
@@ -354,6 +382,11 @@
],
"networks": [
"nextcloud-aio"
],
"read_only": true,
"tmpfs": [
"/tmp",
"/conf"
]
},
{
@@ -442,6 +475,7 @@
"protocol": "tcp"
}
],
"internal_port": "%APACHE_PORT%",
"environment": [
"INSTANCE_ID=%INSTANCE_ID%",
"APACHE_PORT=%APACHE_PORT%"
@@ -449,7 +483,12 @@
"secrets": [
"INSTANCE_ID"
],
"stop_grace_period": 1
"stop_grace_period": 1,
"read_only": true,
"tmpfs": [
"/etc/lighttpd",
"/var/www/domaincheck"
]
},
{
"container_name": "nextcloud-aio-clamav",
@@ -537,7 +576,10 @@
"networks": [
"nextcloud-aio"
],
"read_only": true
"read_only": true,
"tmpfs": [
"/tmp"
]
},
{
"container_name": "nextcloud-aio-fulltextsearch",
@@ -549,9 +591,14 @@
"internal_port": "9200",
"environment": [
"TZ=%TIMEZONE%",
"ES_JAVA_OPTS=-Xms512M -Xmx512M",
"bootstrap.memory_lock=true",
"cluster.name=nextcloud-aio",
"discovery.type=single-node",
"ES_JAVA_OPTS=-Xms1024M -Xmx1024M",
"POSTGRES_HOST=nextcloud-aio-database"
"logger.org.elasticsearch.discovery=WARN",
"http.port=9200",
"xpack.license.self_generated.type=basic",
"xpack.security.enabled=false"
],
"volumes": [
{

18
php/domain-validator.php Normal file
View File

@@ -0,0 +1,18 @@
<?php
$domain = $_GET['domain'] ?? '';
if (strpos($domain, '.') === false) {
http_response_code(400);
} elseif (strpos($domain, '/') !== false) {
http_response_code(400);
} elseif (strpos($domain, ':') !== false) {
http_response_code(400);
} elseif (!filter_var($domain, FILTER_VALIDATE_DOMAIN, FILTER_FLAG_HOSTNAME)) {
http_response_code(400);
} elseif (filter_var($domain, FILTER_VALIDATE_IP)) {
http_response_code(400);
} else {
error_log($domain . ' was accepted as valid domain.');
http_response_code(200);
}

View File

@@ -1,2 +1,2 @@
<?xml version="1.0" encoding="UTF-8"?>
<files psalm-version="5.12.0@f90118cdeacd0088e7215e64c0c99ceca819e176"/>
<files psalm-version="5.14.1@b9d355e0829c397b9b3b47d0c0ed042a8a70284d"/>

View File

@@ -1,4 +1,14 @@
"use strict";
function showPassword(id) {
let passwordField = document.getElementById(id);
if (passwordField.type === "password" && passwordField.value !== "") {
passwordField.type = "text";
} else if (passwordField.type === "text" && passwordField.value === "") {
passwordField.type = "password";
}
}
(function (){
let lastError;
@@ -23,8 +33,11 @@
disableSpinner()
showError(xhr.response);
} else if (xhr.status === 500) {
disableSpinner()
showError("Server error. Please check the mastercontainer logs for details.");
showError("Server error. Please check the mastercontainer logs for details. This page will reload after 10s automatically. Then you can check the mastercontainer logs.");
// Reload after 10s since it is expected that the updated view is shown (e.g. after starting containers)
setTimeout(function(){
window.location.reload(1);
}, 10000);
} else {
// If the responose is not one of the above, we should reload to show the latest content
window.location.reload(1);

View File

@@ -176,6 +176,6 @@ $app->get('/', function (\Psr\Http\Message\RequestInterface $request, Response $
}
});
$errorMiddleware = $app->addErrorMiddleware(true, true, true);
$errorMiddleware = $app->addErrorMiddleware(false, true, true);
$app->run();

View File

@@ -85,7 +85,7 @@ div.toast {
padding: 12px;
margin-top: 45px;
position: fixed;
z-index: 1;
z-index: 1000;
border-radius: 3px;
background: none;
background-color: white;

View File

@@ -28,6 +28,12 @@ class AuthManager {
$date = new DateTime();
$dateTime = $date->getTimestamp();
$_SESSION['date_time'] = $dateTime;
$df = disk_free_space(DataConst::GetSessionDirectory());
if ($df !== false && (int)$df < 10240) {
error_log(DataConst::GetSessionDirectory() . " has only less than 10KB free space. The login might not succeed because of that!");
}
file_put_contents(DataConst::GetSessionDateFile(), (string)$dateTime);
}

View File

@@ -48,7 +48,7 @@ class ContainerDefinitionFetcher
if (!$validator->isValid()) {
error_log("JSON does not validate. Violations:");
foreach ($validator->getErrors() as $error) {
error_log(printf("[%s] %s\n", $error['property'], $error['message']));
error_log((string)printf("[%s] %s\n", $error['property'], $error['message']));
}
}
}

View File

@@ -173,7 +173,8 @@ class DockerController
$this->startTopContainer(true);
// Clear apcu cache in order to check if container updates are available
apcu_clear_cache();
// Temporarily disabled as it leads much faster to docker rate limits
// apcu_clear_cache();
return $response->withStatus(201)->withHeader('Location', '/');
}
@@ -254,7 +255,11 @@ class DockerController
}
$this->StopDomaincheckContainer();
$this->PerformRecursiveContainerStart($id);
try {
$this->PerformRecursiveContainerStart($id);
} catch (\Exception $e) {
error_log('Could not start domaincheck container: ' . $e->getMessage());
}
// Cache the start for 10 minutes
apcu_add($cacheKey, '1', 600);

View File

@@ -0,0 +1,26 @@
<?php
declare(strict_types=1);
// increase memory limit to 2GB
ini_set('memory_limit', '2048M');
use DI\Container;
use AIO\Data\DataConst;
require __DIR__ . '/../../vendor/autoload.php';
$container = \AIO\DependencyInjection::GetContainer();
/** @var \AIO\Docker\DockerActionManager $dockerActionManger */
$dockerActionManger = $container->get(\AIO\Docker\DockerActionManager::class);
/** @var \AIO\ContainerDefinitionFetcher $containerDefinitionFetcher */
$containerDefinitionFetcher = $container->get(\AIO\ContainerDefinitionFetcher::class);
$id = 'nextcloud-aio-nextcloud';
$nextcloudContainer = $containerDefinitionFetcher->GetContainerById($id);
$df = disk_free_space(DataConst::GetDataDirectory());
if ($df !== false && (int)$df < 1024 * 1024 * 1024 * 5) {
error_log("The drive that hosts the mastercontainer volume has less than 5 GB free space. Container updates and backups might not succeed due to that!");
$dockerActionManger->sendNotification($nextcloudContainer, 'Low on space!', 'The drive that hosts the mastercontainer volume has less than 5 GB free space. Container updates and backups might not succeed due to that!');
}

View File

@@ -211,9 +211,16 @@ class DockerActionManager
public function CreateContainer(Container $container) : void {
$volumes = [];
foreach($container->GetVolumes()->GetVolumes() as $volume) {
foreach ($container->GetVolumes()->GetVolumes() as $volume) {
// NEXTCLOUD_MOUNT gets added via bind-mount later on
if ($container->GetIdentifier() === 'nextcloud-aio-nextcloud') {
if ($volume->name === $this->configurationManager->GetNextcloudMount()) {
continue;
}
}
$volumeEntry = $volume->name . ':' . $volume->mountPoint;
if($volume->isWritable) {
if ($volume->isWritable) {
$volumeEntry = $volumeEntry . ':' . 'rw';
} else {
$volumeEntry = $volumeEntry . ':' . 'ro';
@@ -226,7 +233,7 @@ class DockerActionManager
'Image' => $this->BuildImageName($container),
];
if(count($volumes) > 0) {
if (count($volumes) > 0) {
$requestBody['HostConfig']['Binds'] = $volumes;
}
@@ -310,7 +317,7 @@ class DockerActionManager
}
} elseif ($out[1] === 'TIMEZONE') {
if ($this->configurationManager->GetTimezone() === '') {
$replacements[1] = 'UTC';
$replacements[1] = 'Etc/UTC';
} else {
$replacements[1] = $this->configurationManager->GetTimezone();
}
@@ -432,7 +439,12 @@ class DockerActionManager
$tmpfs = [];
foreach($container->GetTmpfs() as $tmp) {
$tmpfs[$tmp] = "";
$mode = "";
if (str_contains($tmp, ':')) {
$mode = explode(':', $tmp)[1];
$tmp = explode(':', $tmp)[0];
}
$tmpfs[$tmp] = $mode;
}
if (count($tmpfs) > 0) {
$requestBody['HostConfig']['Tmpfs'] = $tmpfs;
@@ -447,10 +459,11 @@ class DockerActionManager
$requestBody['HostConfig']['SecurityOpt'] = ["apparmor:unconfined"];
}
$mounts = [];
// Special things for the backup container which should not be exposed in the containers.json
if ($container->GetIdentifier() === 'nextcloud-aio-borgbackup') {
// Additional backup directories
$mounts = [];
foreach ($this->getAllBackupVolumes() as $additionalBackupVolumes) {
if ($additionalBackupVolumes !== '') {
$mounts[] = ["Type" => "volume", "Source" => $additionalBackupVolumes, "Target" => "/nextcloud_aio_volumes/" . $additionalBackupVolumes, "ReadOnly" => false];
@@ -465,13 +478,22 @@ class DockerActionManager
}
}
}
if(count($mounts) > 0) {
$requestBody['HostConfig']['Mounts'] = $mounts;
}
// Special things for the talk container which should not be exposed in the containers.json
} elseif ($container->GetIdentifier() === 'nextcloud-aio-talk') {
// This is needed due to a bug in libwebsockets which cannot handle unlimited ulimits
$requestBody['HostConfig']['Ulimits'] = [["Name" => "nofile", "Hard" => 200000, "Soft" => 200000]];
// Special things for the nextcloud container which should not be exposed in the containers.json
} elseif ($container->GetIdentifier() === 'nextcloud-aio-nextcloud') {
foreach ($container->GetVolumes()->GetVolumes() as $volume) {
if ($volume->name !== $this->configurationManager->GetNextcloudMount()) {
continue;
}
$mounts[] = ["Type" => "bind", "Source" => $volume->name, "Target" => $volume->mountPoint, "ReadOnly" => !$volume->isWritable, "BindOptions" => [ "Propagation" => "rshared"]];
}
}
if (count($mounts) > 0) {
$requestBody['HostConfig']['Mounts'] = $mounts;
}
$url = $this->BuildApiUrl('containers/create?name=' . $container->GetIdentifier());
@@ -879,7 +901,7 @@ class DockerActionManager
return null;
}
return str_replace('T', ' ', $imageOutput['Created']);
return str_replace('T', ' ', (string)$imageOutput['Created']);
} catch (\Exception $e) {
return null;
}

View File

@@ -16,7 +16,7 @@
</header>
<div class="content">
<h1>Nextcloud AIO v6.2.1</h1>
<h1>Nextcloud AIO v7.0.0</h1>
{# Add 2nd tab warning #}
<script type="text/javascript" src="second-tab-warning.js"></script>
@@ -24,10 +24,11 @@
{% set isAnyRunning = false %}
{% set isAnyRestarting = false %}
{% set isWatchtowerRunning = false %}
{% set isDomaincheckRunning = false %}
{% set isBackupOrRestoreRunning = false %}
{% set isApacheStarting = false %}
{# Setting newMajorVersion to '' will hide corresponding options/elements, can be set to an integer like 26 in order to show corresponding elements. If set, also increase installLatestMajor in https://github.com/nextcloud/all-in-one/blob/main/php/src/Controller/DockerController.php #}
{% set newMajorVersion = 27 %}
{% set newMajorVersion = '' %}
{% if is_backup_container_running == true %}
{% if borg_backup_mode == 'backup' or borg_backup_mode == 'restore' %}
@@ -45,6 +46,9 @@
{% if container.GetIdentifier() == 'nextcloud-aio-watchtower' and class(container.GetRunningState()) == 'AIO\\Container\\State\\RunningState' %}
{% set isWatchtowerRunning = true %}
{% endif %}
{% if container.GetIdentifier() == 'nextcloud-aio-domaincheck' and class(container.GetRunningState()) == 'AIO\\Container\\State\\RunningState' %}
{% set isDomaincheckRunning = true %}
{% endif %}
{% if container.GetIdentifier() == 'nextcloud-aio-apache' and class(container.GetStartingState()) == 'AIO\\Container\\State\\StartingState' %}
{% set isApacheStarting = true %}
{% endif %}
@@ -69,7 +73,10 @@
<a href="" class="button reload">Reload ↻</a><br/>
{% else %}
{% if is_backup_container_running == false and domain == "" %}
{% if is_mastercontainer_update_available == true %}
{% if isDomaincheckRunning == false %}
<h2>Domaincheck container is not running</h2>
This is not expected. Most likely this happened because port {{ apache_port }} is already in use on your server. You can check the mastercontainer logs and domaincheck container logs for further clues. You should be able to resolve this by adjusting the APACHE_PORT by following the <b><a href="https://github.com/nextcloud/all-in-one/blob/main/reverse-proxy.md">reverse proxy documentation</a></b>. Advice: have a detailed look at the changed docker run command for AIO.
{% elseif is_mastercontainer_update_available == true %}
<h2>Mastercontainer update</h2>
⚠️ A mastercontainer update is available. Please click on the button below to update it. Afterwards, you will be able to proceed with the setup.<br><br>
<form method="POST" action="/api/docker/watchtower" class="xhr">
@@ -99,7 +106,7 @@
<input class="button" type="submit" value="Submit domain" />
</form>
{% if skip_domain_validation == false %}
Make sure that this server is reachable on port 443 (port 443/tcp is open/forwarded in your firewall/router) and that you've correctly set up the DNS config for the domain that you enter (set the A record to your public ipv4-address and if you need ipv6, set the AAAA record to your public ipv6-address. A CNAME record if of course also possible). You should see hints on what went wrong if your domain does not get accepted in the top right corner.<br><br>
Make sure that this server is reachable on port 443 (port 443/tcp is open/forwarded in your firewall/router and 443/udp as well if you want to enable http3) and that you've correctly set up the DNS config for the domain that you enter (set the A record to your public ipv4-address and if you need ipv6, set the AAAA record to your public ipv6-address. A CNAME record if of course also possible). You should see hints on what went wrong if your domain does not get accepted in the top right corner.<br><br>
<details>
<summary>Click here for further hints</summary><br />
If you should not have a domain yet, you can get one for free e.g. from duckdns.org and others.<br><br>
@@ -303,7 +310,7 @@
Restore or Backup currently running. Cannot start the containers until that's done.<br /><br />
{% else %}
{% if was_start_button_clicked == false %}
Clicking on the button below will download all docker containers and start them. This can take a lot of time depending on your internect connection. Since the overall size is a few GB, this will take around 5-10 min or more. So be aware and patient!<br><br>
<br>Clicking on the button below will download all docker containers and start them. This can take a lot of time depending on your internect connection. Since the overall size is a few GB, this will take around 5-10 min or more. So be aware and patient!<br><br>
{% endif %}
{% if is_mastercontainer_update_available == true %}
⚠️ A mastercontainer update is available. Please click on the button below to update it.<br><br>
@@ -468,7 +475,7 @@
{% if automatic_updates == true %}
Also your containers, the mastercontainer and on saturdays your Nextcloud apps will be automatically updated.
{% endif %}
You can disable this option again by clicking on the button below.<br><br/>
To change your backup time, first disable Daily Backups and then re-enable them with your new backup time.<br><br/>
<form method="POST" action="/api/configuration" class="xhr">
<input type="hidden" name="delete_daily_backup_time" value="yes"/>
<input type="hidden" name="{{csrf.keys.name}}" value="{{csrf.name}}">
@@ -509,8 +516,8 @@
<summary>Click here to change your AIO password</summary><br />
You can change your AIO password below:<br><br />
<form method="POST" action="/api/configuration" class="xhr">
<input type="text" autocomplete="current-password" name="current-master-password" placeholder="Your current AIO password"/>
<input type="text" autocomplete="new-password" name="new-master-password" placeholder="Your new AIO password"/>
<input type="password" autocomplete="current-password" name="current-master-password" placeholder="Your current AIO password" id="current-master-password" oninput="showPassword('current-master-password')">
<input type="password" autocomplete="new-password" name="new-master-password" placeholder="Your new AIO password" id="new-master-password" oninput="showPassword('new-master-password')">
<input type="hidden" name="{{csrf.keys.name}}" value="{{csrf.name}}">
<input type="hidden" name="{{csrf.keys.value}}" value="{{csrf.value}}">
<input class="button" type="submit" value="Submit password change" />
@@ -548,9 +555,9 @@
<input type="checkbox" id="fulltextsearch" name="fulltextsearch"><label for="fulltextsearch">Fulltextsearch (needs ~1GB additional RAM)</label><br>
{% endif %}
{% if is_imaginary_enabled == true %}
<input type="checkbox" id="imaginary" name="imaginary" checked="checked"><label for="imaginary">Imaginary (for previews of heic, heif, illustrator, pdf, svg, tiff and webp)</label><br><br>
<input type="checkbox" id="imaginary" name="imaginary" checked="checked"><label for="imaginary">Imaginary (for previews of heic, heif, illustrator, pdf, svg, tiff and webp. Imaginary is currently <a href="https://github.com/nextcloud/server/issues/34262">incompatible with server-side-encryption</a>)</label><br><br>
{% else %}
<input type="checkbox" id="imaginary" name="imaginary"><label for="imaginary">Imaginary (for previews of heic, heif, illustrator, pdf, svg, tiff and webp)</label><br><br>
<input type="checkbox" id="imaginary" name="imaginary"><label for="imaginary">Imaginary (for previews of heic, heif, illustrator, pdf, svg, tiff and webp. Imaginary is currently <a href="https://github.com/nextcloud/server/issues/34262">incompatible with server-side-encryption</a>)</label><br><br>
{% endif %}
{% if is_talk_enabled == true %}
<input type="checkbox" id="talk" name="talk" checked="checked"><label for="talk">Nextcloud Talk (needs ports {{ talk_port }}/TCP and {{ talk_port }}/UDP open/forwarded in your firewall/router)</label><br><br>
@@ -622,7 +629,7 @@
<input type="hidden" name="{{csrf.keys.value}}" value="{{csrf.value}}">
<input class="button" type="submit" value="Submit timezone" onclick="return confirm('Are you sure that this is a valid timezone? Please double check by following the wikipedia article and checking the correct column since if not, it will break the startup since the database will not get correctly initialized and you will end in a startup loop.')" />
</form>
You need to make sure that the timezone that you enter is valid. An example is <b>Europe/Berlin</b>. You can get valid values by looking at the 'TZ database name' column of this list: <a href="https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List"><b>click here</b></a>.<br><br>
You need to make sure that the timezone that you enter is valid. An example is <b>Europe/Berlin</b>. You can get valid values by looking at the 'TZ database name' column of this list: <a href="https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List"><b>click here</b></a>. The default is <b>Etc/UTC</b> if nothing is entered.<br><br>
{% else %}
The timezone for Nextcloud is currently set to <b>{{ timezone }}</b>. You can reset the timezone again by clicking on the button below.<br><br/>
<form method="POST" action="/api/configuration" class="xhr">

View File

@@ -8,7 +8,8 @@
{% if is_login_allowed == true %}
<p>Log in using your Nextcloud AIO password:</p>
<form method="POST" action="/api/auth/login" class="xhr">
<input type="text" autocomplete="off" name="password" placeholder="Password" />
<input type="password" autocomplete="current-password" name="password" placeholder="Password" id="master-password" oninput="showPassword('master-password')">
<input type="hidden" name="{{csrf.keys.name}}" value="{{csrf.name}}">
<input type="hidden" name="{{csrf.keys.value}}" value="{{csrf.value}}">
<input type="submit" class="button" value="Log in" />

View File

@@ -60,7 +60,7 @@ Included are:
- Can be installed with [Kubernetes](https://github.com/nextcloud/all-in-one/tree/main/nextcloud-aio-helm-chart)
- Almost all included containers Alpine Linux based (good for security and size)
- Many of the included containers run as non-root user (good for security)
- Some of the included containers have a read-only root-FS (good for security)
- Many of the included containers have a read-only root-FS (good for security)
- Included containers run in its own docker network (good for security) and only really necessary ports are exposed on the host
- [Multiple instances on one server](https://github.com/nextcloud/all-in-one/blob/main/multiple-instances.md) are doable without having to deal with VMs
- Adjustable backup path from the AIO interface (good to put the backups e.g. on a different drive)
@@ -136,6 +136,7 @@ You can check this on Linux by running: `uname -m`
### Which ports are mandatory to be open in your firewall/router?
Only those (if you access the Mastercontainer Interface internally via port 8080):
- `443/TCP` for the Apache container
- `443/UDP` if you want to enable http3 for the Apache container
- `3478/TCP` and `3478/UDP` for the Talk container
### Explanation of used ports:
@@ -143,6 +144,7 @@ Only those (if you access the Mastercontainer Interface internally via port 8080
- `80/TCP`: redirects to Nextcloud (is used for getting the certificate via ACME http-challenge for the Mastercontainer)
- `8443/TCP`: Mastercontainer Interface with valid certificate (only works if port 80 and 8443 are open/forwarded in your firewall/router and you point a domain to your server. It generates a valid certificate then automatically and access via e.g. `https://public.domain.com:8443/` is possible.)
- `443/TCP`: will be used by the Apache container later on and needs to be open/forwarded in your firewall/router
- `443/UDP`: will be used by the Apache container later on and needs to be open/forwarded in your firewall/router if you want to enable http3
- `3478/TCP` and `3478/UDP`: will be used by the Turnserver inside the Talk container and needs to be open/forwarded in your firewall/router
### How to run AIO on macOS?
@@ -519,7 +521,7 @@ fi
</details>
You can simply copy and past the script into a file e.g. named `backup-script.sh` e.g. here: `/root/backup-script.sh`. Do not forget to modify the variables to your requirements!
You can simply copy and paste the script into a file e.g. named `backup-script.sh` e.g. here: `/root/backup-script.sh`. Do not forget to modify the variables to your requirements!
Afterwards apply the correct permissions with `sudo chown root:root /root/backup-script.sh` and `sudo chmod 700 /root/backup-script.sh`. Then you can create a cronjob that runs e.g. at `20:00` each week on Sundays like this:
1. Open the cronjob with `sudo crontab -u root -e` (and choose your editor of choice if not already done. I'd recommend nano).
@@ -589,7 +591,7 @@ After using this option, please make sure to apply the correct permissions to th
You can then navigate to the apps management page, activate the external storage app, navigate to `https://your-nc-domain.com/settings/admin/externalstorages` and add a local external storage directory that will be accessible inside the container at the same place that you've entered. E.g. `/mnt/your-drive-mountpoint` will be mounted to `/mnt/your-drive-mountpoint` inside the container, etc.
Be aware though that these locations will not be covered by the built-in backup solution!
Be aware though that these locations will not be covered by the built-in backup solution - but you can add further Docker volumes and host paths that you want to back up after the initial backup is done.
**Please note:** If you can't see the type "local storage" in the external storage admin options, a restart of the containers from the AIO interface may be required.
@@ -597,13 +599,13 @@ Be aware though that these locations will not be covered by the built-in backup
By default will the talk container use port `3478/UDP` and `3478/TCP` for connections. You can adjust the port by adding e.g. `--env TALK_PORT=3478` 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 adjusting the port to your desired value. Best is to use a port over 1024, so e.g. 3479 to not run into this: https://github.com/nextcloud/all-in-one/discussions/2517
### How to adjust the upload limit for Nextcloud?
By default are public uploads to Nextcloud limited to a max of 10G (logged in users can upload much bigger files using the webinterface or the mobile/desktop clients since chunking is used in that case). You can adjust the upload limit by providing `--env NEXTCLOUD_UPLOAD_LIMIT=10G` 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 start with a number and end with `G` e.g. `10G`.
By default, public uploads to Nextcloud are limited to a max of 10G (logged in users can upload much bigger files using the webinterface or the mobile/desktop clients, since chunking is used in that case). You can adjust the upload limit by providing `--env NEXTCLOUD_UPLOAD_LIMIT=10G` 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 start with a number and end with `G` e.g. `10G`.
### How to adjust the max execution time for Nextcloud?
By default are uploads to Nextcloud limited to a max of 3600s. You can adjust the upload time limit by providing `--env NEXTCLOUD_MAX_TIME=3600` 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 number e.g. `3600`.
By default, uploads to Nextcloud are limited to a max of 3600s. You can adjust the upload time limit by providing `--env NEXTCLOUD_MAX_TIME=3600` 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 number e.g. `3600`.
### How to adjust the PHP memory limit for Nextcloud?
By default is each PHP process in the Nextcloud container limited to a max of 512 MB. You can adjust the memory limit by providing `--env NEXTCLOUD_MEMORY_LIMIT=512M` 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 start with a number and end with `M` e.g. `1024M`.
By default, each PHP process in the Nextcloud container is limited to a max of 512 MB. You can adjust the memory limit by providing `--env NEXTCLOUD_MEMORY_LIMIT=512M` 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 start with a number and end with `M` e.g. `1024M`.
### What can I do to fix the internal or reserved ip-address error?
If you get an error during the domain validation which states that your ip-address is an internal or reserved ip-address, you can fix this by first making sure that your domain indeed has the correct public ip-address that points to the server and then adding `--add-host yourdomain.com:<public-ip-address>` 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) which will allow the domain validation to work correctly. And so that you know: even if the `A` record of your domain should change over time, this is no problem since the mastercontainer will not make any attempt to access the chosen domain after the initial domain validation.
@@ -624,25 +626,25 @@ No. Since Podman is not 100% compatible with the Docker API, you cannot use Podm
You might want to adjust the Nextcloud apps that are installed upon the first startup of the Nextcloud container. You can do so by adding `--env NEXTCLOUD_STARTUP_APPS="deck twofactor_totp tasks calendar contacts notes"` 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, 0-9, spaces and hyphens or '_'. You can disable shipped and by default enabled apps by adding a hyphen in front of the appid. E.g. `-contactsinteraction`.
### 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 very fast unmaintainable - there is an official way how 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.
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.18. By default added is `imagemagick`. If you want to keep that, 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.18. 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 very fast unmaintainable - there is an official way how 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.
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.
You can do so by adding `--env NEXTCLOUD_ADDITIONAL_PHP_EXTENSIONS="imagick extension1 extension2"` 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 extensions here: https://pecl.php.net/packages.php. By default added is `imagick`. If you want to keep that, you need to specify it as well.
You can do so by adding `--env NEXTCLOUD_ADDITIONAL_PHP_EXTENSIONS="imagick extension1 extension2"` 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 extensions here: https://pecl.php.net/packages.php. By default `imagick` is added. If you want to keep it, you need to specify it as well.
### What about the pdlib PHP extension for the facerecognition app?
The [facerecognition app](https://apps.nextcloud.com/apps/facerecognition) requires the pdlib PHP extension to be installed. Unfortunately, it is not available on PECL nor via PHP core, so there is no way to add this into AIO currently. However you can vote up [this issue](https://github.com/goodspb/pdlib/issues/56) to bring it to PECL and there is the [recognize app](https://apps.nextcloud.com/apps/recognize) that also allows to do face-recognition.
### How to enable hardware-transcoding for Nextcloud?
⚠️⚠️⚠️ Warning: this only works if the `/dev/dri` device is present on the host! If it should not exist on your host, don't proceed as otherwise the Nextcloud container will fail to start! If you are unsure about this, better do not proceed with the instructions below.
⚠️⚠️⚠️ Warning: this only works if the `/dev/dri` device is present on the host! If it does not exists on your host, don't proceed as otherwise the Nextcloud container will fail to start! If you are unsure about this, better do not proceed with the instructions below.
The [memories app](https://apps.nextcloud.com/apps/memories) allows to enable hardware transcoding for videos. In order to use that, you need to add `--env NEXTCLOUD_ENABLE_DRI_DEVICE=true` 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) which will mount the `/dev/dri` device into the container. Additionally, you need to add required packets to the Nextcloud container by using [this feature](https://github.com/nextcloud/all-in-one#how-to-add-os-packages-permanently-to-the-nextcloud-container) and adding the required Alpine packages that are documented [here](https://github.com/pulsejet/memories/wiki/QSV-Transcoding).
### Huge docker logs
When your containers run for a few days without a restart, the container logs that you can view from the AIO interface can get really huge. You can limit the loge sizes by enabling logrotate for docker container logs. Feel free to enable this by following those instructions: https://sandro-keil.de/blog/logrotate-for-docker-container/
If you should run into issues with huge docker logs, you can adjust the log size by following https://docs.docker.com/config/containers/logging/local/#usage. However for the included AIO containers, this should usually not be needed because almost all of them have the log level set to warn so they should not produce many logs.
### Access/Edit Nextcloud files/folders manually
The files and folders that you add to Nextcloud are by default stored in the following docker directory: `nextcloud_aio_nextcloud:/mnt/ncdata/` (usually `/var/lib/docker/volumes/nextcloud_aio_nextcloud_data/_data/` on linux host systems). If needed, you can modify/add/delete files/folders there but **ATTENTION**: be very careful when doing so because you might corrupt your AIO installation! Best is to create a backup using the built-in backup solution before editing/changing files/folders in there because you will then be able to restore your instance to the backed up state.
@@ -657,7 +659,7 @@ You can move the whole docker library and all its files including all Nextcloud
You can edit Nextclouds config.php file directly from the host with your favorite text editor. E.g. like this: `sudo docker run -it --rm --volume nextcloud_aio_nextcloud:/var/www/html:rw alpine sh -c "apk add --no-cache nano && nano /var/www/html/config/config.php"`. Make sure to not break the file though which might corrupt your Nextcloud instance otherwise. In best case, create a backup using the built-in backup solution before editing the file.
### Custom skeleton directory
If you want to define a custom skeleton directory, you can do so by copying your skeleton files `sudo docker cp --follow-link /path/to/nextcloud/skeleton/ nextcloud-aio-nextcloud:/mnt/ncdata/skeleton/`, applying the correct permissions with `sudo docker exec nextcloud-aio-nextcloud chown -R 33:0 /mnt/ncdata/skeleton/` and and `sudo docker exec nextcloud-aio-nextcloud chmod -R 750 /mnt/ncdata/skeleton/` and setting the skeleton directory option with `sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ config:system:set skeletondirectory --value="/mnt/ncdata/skeleton"`. You can read further on this option here: [click here](https://docs.nextcloud.com/server/stable/admin_manual/configuration_server/config_sample_php_parameters.html?highlight=skeletondir#:~:text=adding%20%3Fdirect%3D1-,'skeletondirectory',-%3D%3E%20'%2Fpath%2Fto%2Fnextcloud)
If you want to define a custom skeleton directory, you can do so by copying your skeleton files `sudo docker cp --follow-link /path/to/nextcloud/skeleton/ nextcloud-aio-nextcloud:/mnt/ncdata/skeleton/`, applying the correct permissions with `sudo docker exec nextcloud-aio-nextcloud chown -R 33:0 /mnt/ncdata/skeleton/` and `sudo docker exec nextcloud-aio-nextcloud chmod -R 750 /mnt/ncdata/skeleton/` and setting the skeleton directory option with `sudo docker exec --user www-data -it nextcloud-aio-nextcloud php occ config:system:set skeletondirectory --value="/mnt/ncdata/skeleton"`. You can read further on this option here: [click here](https://docs.nextcloud.com/server/stable/admin_manual/configuration_server/config_sample_php_parameters.html?highlight=skeletondir#:~:text=adding%20%3Fdirect%3D1-,'skeletondirectory',-%3D%3E%20'%2Fpath%2Fto%2Fnextcloud)
### Fail2ban
You can configure your server to block certain ip-addresses using fail2ban as bruteforce protection. Here is how to set it up: https://docs.nextcloud.com/server/stable/admin_manual/installation/harden_server.html#setup-fail2ban. The logpath of AIO is by default `/var/lib/docker/volumes/nextcloud_aio_nextcloud/_data/data/nextcloud.log`. Do not forget to add `chain=DOCKER-USER` to your nextcloud jail config (`nextcloud.local`) otherwise the nextcloud service running on docker will still be accessible even if the IP is banned. Also, you may change the blocked ports to cover all AIO ports: by default `80,443,8080,8443,3478` (see [this](https://github.com/nextcloud/all-in-one#explanation-of-used-ports))
@@ -691,13 +693,13 @@ What are the requirements?
5. The container should not mount directories from the host into the container: only docker volumes should be used.
### How to trust user-defined Certification Authorities (CA)?
For some applications it might be necessary to enstablish a secured connection to a host / server which is using a certificated issued by a Certification Authority that is not trusted out of the box. An example could be configuring LDAPS against the Domain Controller (ActiveDirectory) of an organization
For some applications it might be necessary to establish a secure connection to another host/server which is using a certificate issued by a Certification Authority that is not trusted out of the box. An example could be configuring LDAPS against a domain controller (Active Directory or Samba-based) of an organization.
You can make the Nextcloud container trust any Certification Authority by providing the environmental variable `NEXTCLOUD_TRUSTED_CACERTS_DIR` 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). The value of the variables should be set to the absolute path to a directory on the host, which contains one or more Certification Authority's certificate. You should use X.509 certificates, Base64 encoded. (Other formats may work but have not been tested!) All the certificates in the directory will be trusted.
You can make the Nextcloud container trust any Certification Authority by providing the environmental variable `NEXTCLOUD_TRUSTED_CACERTS_DIR` 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). The value of the variables should be set to the absolute paths of the directory on the host, which contains one or more Certification Authorities certificates. You should use X.509 certificates, Base64 encoded. (Other formats may work but have not been tested!) All the certificates in the directory will be trusted.
When using `docker run`, the environmental variable can be set with `--env NEXTCLOUD_TRUSTED_CACERTS_DIR=/path/to/my/cacerts`.
In order for the value to be valid, the path should start with `/` and not end with '/' and point to an existing **directory**. Pointing the variable directly to a certificate **file** will not work and may also break things.
In order for the value to be valid, the path should start with `/` and not end with `/` and point to an existing **directory**. Pointing the variable directly to a certificate **file** will not work and may also break things.
### How to disable Collabora's Seccomp feature?
The Collabora container enables Seccomp by default, which is a security feature of the Linux kernel. On systems without this kernel feature enabled, you need to provide `--env COLLABORA_SECCOMP_DISABLED=true` to the initial docker run command in order to make it work.
@@ -723,15 +725,15 @@ docker exec --env STOP_CONTAINERS=1 nextcloud-aio-mastercontainer /daily-backup.
</details>
You can simply copy and past the script into a file e.g. named `shutdown-script.sh` e.g. here: `/root/shutdown-script.sh`.
You can simply copy and paste the script into a file e.g. named `shutdown-script.sh` e.g. here: `/root/shutdown-script.sh`.
Afterwards apply the correct permissions with `sudo chown root:root /root/shutdown-script.sh` and `sudo chmod 700 /root/shutdown-script.sh`. Then you can create a cronjob that runs e.g. runs the script at `04:00` each day like this:
Afterwards apply the correct permissions with `sudo chown root:root /root/shutdown-script.sh` and `sudo chmod 700 /root/shutdown-script.sh`. Then you can create a cronjob that runs it on a schedule e.g. runs the script at `04:00` each day like this:
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 4 * * * /root/shutdown-script.sh` which will run the script at 04:00 each day.
1. save and close the crontab (when using nano are the shortcuts for this `Ctrl + o` -> `Enter` and close the editor with `Ctrl + x`).
1. save and close the crontab (when using nano the shortcuts for this are `Ctrl + o` and then `Enter` to save, and close the editor with `Ctrl + x`).
**After that is in place, you should schedule a backup from your backup solution that creates a backup after AIO is shut down properly. Hint: If your backup runs on the same host, make sure to at least back up all docker volumes and additionally Nextclouds datadir, if it is not stored in a docker volume.**
**After that is in place, you should schedule a backup from your backup solution that creates a backup after AIO is shut down properly. Hint: If your backup runs on the same host, make sure to at least back up all docker volumes and additionally Nextcloud's datadir if it is not stored in a docker volume.**
**Afterwards, you can create a second script that automatically updates the containers:**
@@ -761,9 +763,9 @@ fi
</details>
You can simply copy and past the script into a file e.g. named `automatic-updates.sh` e.g. here: `/root/automatic-updates.sh`.
You can simply copy and paste the script into a file e.g. named `automatic-updates.sh` e.g. here: `/root/automatic-updates.sh`.
Afterwards apply the correct permissions with `sudo chown root:root /root/automatic-updates.sh` and `sudo chmod 700 /root/automatic-updates.sh`. Then you can create a cronjob that runs e.g. at `05:00` each day like this:
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 are the shortcuts for this `Ctrl + o` -> `Enter` and close the editor with `Ctrl + x`).
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`).

View File

@@ -63,9 +63,12 @@ Add this as a new Apache site config:
# Solves slow upload speeds caused by http2
H2WindowSize 5242880
# SSL
SSLEngine on
Include /etc/letsencrypt/options-ssl-apache.conf
# TLS
SSLEngine on
SSLProtocol -all +TLSv1.2 +TLSv1.3
SSLCipherSuite ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-CHACHA20-POLY1305
SSLHonorCipherOrder off
SSLSessionTickets off
SSLCertificateFile /etc/letsencrypt/live/<your-nc-domain>/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/<your-nc-domain>/privkey.pem
@@ -173,6 +176,13 @@ global
chroot /var/haproxy
log /var/run/log audit debug
lua-prepend-path /tmp/haproxy/lua/?.lua
ssl-default-bind-ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-CHACHA20-POLY1305
ssl-default-bind-ciphersuites TLS_AES_128_GCM_SHA256:TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256
ssl-default-bind-options ssl-min-ver TLSv1.2 no-tls-tickets
ssl-default-server-ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-CHACHA20-POLY1305
ssl-default-server-ciphersuites TLS_AES_128_GCM_SHA256:TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256
ssl-default-server-options ssl-min-ver TLSv1.2 no-tls-tickets
defaults
log global
@@ -182,7 +192,7 @@ defaults
# Frontend: LetsEncrypt_443 ()
frontend LetsEncrypt_443
bind 0.0.0.0:443 name 0.0.0.0:443 ssl prefer-client-ciphers ssl-min-ver TLSv1.2 ciphers ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256 ciphersuites TLS_AES_128_GCM_SHA256:TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256 crt-list /tmp/haproxy/ssl/605f6609f106d1.17683543.certlist
bind 0.0.0.0:443 name 0.0.0.0:443 ssl crt-list /tmp/haproxy/ssl/605f6609f106d1.17683543.certlist
mode http
option http-keep-alive
default_backend acme_challenge_backend
@@ -642,7 +652,7 @@ Simply translate the docker run command into a docker-compose file. You can have
## 3. Limit the access to the apache container
Use this envorinmental variable during the initial startup of the mastercontainer to make the apache container only listen on localhost: `--env APACHE_IP_BINDING=127.0.0.1`. **Attention:** This is only recommended to be set if you use `localhost` in your reverse proxy config to connect to your AIO instance. If you use an ip-address instead of localhost, you should set it to `0.0.0.0`.
Use this environment variable during the initial startup of the mastercontainer to make the apache container only listen on localhost: `--env APACHE_IP_BINDING=127.0.0.1`. **Attention:** This is only recommended to be set if you use `localhost` in your reverse proxy config to connect to your AIO instance. If you use an ip-address instead of localhost, you should set it to `0.0.0.0`.
## 4. Open the AIO interface.
After starting AIO, you should be able to access the AIO Interface via `https://ip.address.of.the.host:8080`. Enter your domain that you've entered in the reverse proxy config and you should be done. Please do not forget to open/forward port `3478/TCP` and `3478/UDP` in your firewall/router for the Talk container!