Compare commits

...

67 Commits

Author SHA1 Message Date
Simon L
9f6f396447 fix grepping for collabora string
Signed-off-by: Simon L <szaimen@e.mail.de>
2024-03-28 15:53:57 +01:00
Simon L
d7d352ebdd fix redis sessions
Signed-off-by: Simon L <szaimen@e.mail.de>
2024-03-28 15:36:50 +01:00
Simon L
94880e1e98 increase to 8.1.0
Signed-off-by: Simon L <szaimen@e.mail.de>
2024-03-28 15:18:38 +01:00
Simon L
f45121defa Merge pull request #4460 from nextcloud/enh/noid/adjust-collabora-logic
nextcloud - adjust COLLABORA_HOST logic
2024-03-28 14:58:03 +01:00
Simon L
b9fbb5cfe9 Merge pull request #4462 from nextcloud/nextcloud-container-update
Nextcloud dependency update
2024-03-28 14:57:33 +01:00
szaimen
44646615dd nextcloud-update automated change
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-28 12:47:57 +00:00
Simon L
40450c27f0 Merge pull request #4461 from nextcloud/dependabot/docker/Containers/collabora/collabora/code-23.05.10.1.1
Bump collabora/code from 23.05.9.4.1 to 23.05.10.1.1 in /Containers/collabora
2024-03-28 13:21:27 +01:00
dependabot[bot]
90e9791008 Bump collabora/code in /Containers/collabora
Bumps collabora/code from 23.05.9.4.1 to 23.05.10.1.1.

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-28 12:18:27 +00:00
Simon L
590012ae38 nextcloud - adjust COLLABORA_HOST logic
Signed-off-by: Simon L <szaimen@e.mail.de>
2024-03-28 12:49:52 +01:00
Simon L
a05269c773 Merge pull request #4459 from nextcloud/enh/noid/add-redis-to-dockerfile
nextcloud container - add redis session handler to Dockerfile
2024-03-28 12:42:40 +01:00
Simon L
0b31db1b21 nextcloud container - add redis session handler to Dockerfile
Signed-off-by: Simon L <szaimen@e.mail.de>
2024-03-28 12:10:58 +01:00
Simon L
fe018904b1 Merge pull request #4457 from nextcloud/dependabot/docker/Containers/fulltextsearch/elasticsearch-8.13.0
Bump elasticsearch from 8.12.2 to 8.13.0 in /Containers/fulltextsearch
2024-03-27 14:00:33 +01:00
dependabot[bot]
43c16a086f Bump elasticsearch from 8.12.2 to 8.13.0 in /Containers/fulltextsearch
Bumps elasticsearch from 8.12.2 to 8.13.0.

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-27 12:48:53 +00:00
Simon L
c9ec673634 Merge pull request #4448 from nextcloud/enh/noid/update-helm-chart
update helm chart
2024-03-26 14:15:19 +01:00
Simon L
17fcc24c9a Merge pull request #4451 from nextcloud/ci/lint-helm/simplify
ci(lint-helm): simplify workflow
2024-03-26 14:14:45 +01:00
Simon L
d181a8c266 Merge pull request #4450 from nextcloud/enh/noid/run-helm-lint
run helm lint to catch any problems
2024-03-26 14:13:34 +01:00
Richard Steinmetz
ce43fe96a9 ci(lint-helm): simplify workflow
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2024-03-26 14:11:55 +01:00
Simon L
e7b587f73d run helm lint to catch any problems
Signed-off-by: Simon L <szaimen@e.mail.de>
2024-03-26 14:06:27 +01:00
Simon L
0f89c6eaed update helm chart
Signed-off-by: Simon L <szaimen@e.mail.de>
2024-03-26 14:01:49 +01:00
Simon L
03f9288388 Merge pull request #4447 from nextcloud/fix/helm/mirror-prefix
fix(helm): image repo transformation yielding invalid yaml string syntax
2024-03-26 13:51:24 +01:00
Richard Steinmetz
e8dc3692a0 fix(helm): image repo transformation yielding invalid yaml string syntax
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2024-03-26 13:39:54 +01:00
Simon L
ab670a19df Merge pull request #4439 from nextcloud/dependabot/docker/Containers/clamav/clamav/clamav-1.3.0-44
Bump clamav/clamav from 1.3.0-43 to 1.3.0-44 in /Containers/clamav
2024-03-25 14:57:50 +01:00
dependabot[bot]
f001c6f955 Bump clamav/clamav from 1.3.0-43 to 1.3.0-44 in /Containers/clamav
Bumps clamav/clamav from 1.3.0-43 to 1.3.0-44.

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-25 12:34:26 +00:00
Simon L
55d6971668 adjust comment
Signed-off-by: Simon L <szaimen@e.mail.de>
2024-03-25 11:18:23 +01:00
Simon L
10698d7df0 Merge pull request #4429 from airplane-flight/main
Fixed a typo in containers.twig
2024-03-23 17:19:05 +01:00
Alison McCue
e422e0861f Fixed a typo in containers.twig
Signed-off-by: Alison McCue <gh@maladroit.me>
2024-03-23 11:16:29 -04:00
Simon L
a6f2a3c76d add dbindex for redis as comment
Signed-off-by: Simon L <szaimen@e.mail.de>
2024-03-22 09:58:19 +01:00
Simon L
4d84146b2d Merge pull request #4347 from nextcloud/automated/update-workflows/default
chore: update workflows from templates
2024-03-21 09:24:18 +01:00
skjnldsv
5f97e7e2ee chore: update workflows from templates
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
Signed-off-by: Simon L <szaimen@e.mail.de>
2024-03-21 09:23:06 +01:00
Simon L
1e54b1849c Merge pull request #4399 from nextcloud/enh/2860/adjust-wording
aio interface - adjust wording for disable daily backups button
2024-03-21 09:16:48 +01:00
Simon L
5cf4501742 Merge pull request #4357 from nextcloud/automated/noid/psalm-baseline-update
[Automated] Update psalm-baseline.xml
2024-03-21 09:16:30 +01:00
Simon L
6ca4cdc636 Merge pull request #4360 from nextcloud/dependabot/docker/Containers/collabora/collabora/code-23.05.9.4.1
Bump collabora/code from 23.05.9.3.1 to 23.05.9.4.1 in /Containers/collabora
2024-03-21 09:16:15 +01:00
Simon L
1871517ccc Merge pull request #4379 from nextcloud/dependabot/docker/Containers/talk/nats-2.10.12-scratch
Bump nats from 2.10.11-scratch to 2.10.12-scratch in /Containers/talk
2024-03-21 09:16:03 +01:00
Simon L
051871f67a Merge pull request #4386 from nextcloud/enh/noid/absolut-apps-path
nextcloud - update apps_paths to include absolute path
2024-03-21 09:15:16 +01:00
Simon L
9a9fb8bc8b aio interface - adjust wording for disable daily backups button
Signed-off-by: Simon L <szaimen@e.mail.de>
2024-03-21 09:14:36 +01:00
Simon L
727a94aa9b Merge pull request #4401 from nextcloud/dependabot/docker/Containers/nextcloud/php-8.2.17-fpm-alpine3.19
Bump php from 8.2.16-fpm-alpine3.19 to 8.2.17-fpm-alpine3.19 in /Containers/nextcloud
2024-03-21 09:13:51 +01:00
Simon L
265bd44830 Merge pull request #4403 from nextcloud/dependabot/docker/Containers/mastercontainer/php-8.3.4-fpm-alpine3.19
Bump php from 8.3.3-fpm-alpine3.19 to 8.3.4-fpm-alpine3.19 in /Containers/mastercontainer
2024-03-21 09:13:38 +01:00
Simon L
74f622b7d8 Merge pull request #4404 from nextcloud/dependabot/docker/Containers/clamav/clamav/clamav-1.3.0-43
Bump clamav/clamav from 1.3.0-41 to 1.3.0-43 in /Containers/clamav
2024-03-21 09:13:25 +01:00
Simon L
f9386388d6 Merge pull request #4408 from nextcloud/enh/4406/network-fail
log the whole error message when network creation fails
2024-03-21 09:13:07 +01:00
Simon L
2b169779a9 Merge pull request #4411 from nextcloud/fix-regex
Additonal backup paths - fix regex
2024-03-21 09:12:25 +01:00
Simon L
2cf1fd5e7e Merge pull request #4412 from nextcloud/dependabot/docker/Containers/mastercontainer/docker-25.0.5-cli
Bump docker from 25.0.3-cli to 25.0.5-cli in /Containers/mastercontainer
2024-03-21 09:12:13 +01:00
Simon L
44e8c836ed Merge pull request #4417 from nextcloud/aio-helm-update
Helm Chart updates
2024-03-21 09:10:52 +01:00
szaimen
9d5f9ca0a5 Helm Chart updates
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-21 08:09:35 +00:00
Simon L
6f43d79d67 Merge pull request #4331 from nextcloud/aio-yaml-update
Yaml updates
2024-03-21 09:07:53 +01:00
nextcloud-command
1abdc32fda Update psalm baseline
Signed-off-by: GitHub <noreply@github.com>
2024-03-21 04:09:30 +00:00
Simon L
faf94f0cee Merge pull request #4387 from nextcloud/enh/4362/mirror-support
Helm chart - Add private mirror support for OCI
2024-03-20 17:15:13 +01:00
Simon L
33eb9c99ea Revert "Add private mirror support for OCI references #4362"
This reverts commit f9e78ba35e.
Signed-off-by: Simon L <szaimen@e.mail.de>
2024-03-20 17:09:58 +01:00
Simon L
dac6b57e0a Revert "Reflect changes in update-helm.sh and fix templating for unset values"
This reverts commit 5b3658c6a0.
Signed-off-by: Simon L <szaimen@e.mail.de>
2024-03-20 17:09:31 +01:00
Simon L
b961792d68 update the script
Signed-off-by: Simon L <szaimen@e.mail.de>
2024-03-20 17:08:06 +01:00
dependabot[bot]
c91c0b9867 Bump docker from 25.0.3-cli to 25.0.5-cli in /Containers/mastercontainer
Bumps docker from 25.0.3-cli to 25.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>
2024-03-20 12:26:51 +00:00
Zoey
976aca9139 fix regex
Signed-off-by: Zoey <zoey@z0ey.de>
2024-03-20 08:42:56 +01:00
szaimen
02d9e3a3c5 Yaml updates
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-19 12:02:57 +00:00
Simon L
a00310f4e4 log the whole error message when network creation fails
Signed-off-by: Simon L <szaimen@e.mail.de>
2024-03-19 12:08:31 +01:00
dependabot[bot]
03dbbdd111 Bump clamav/clamav from 1.3.0-41 to 1.3.0-43 in /Containers/clamav
Bumps clamav/clamav from 1.3.0-41 to 1.3.0-43.

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-18 13:01:25 +00:00
dependabot[bot]
ac43b433c8 Bump php in /Containers/mastercontainer
Bumps php from 8.3.3-fpm-alpine3.19 to 8.3.4-fpm-alpine3.19.

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-18 12:46:34 +00:00
Simon L
172330b938 Merge pull request #4402 from nextcloud/enh/4395/improve-docs
community containers - add hint regarding what if containers are alre…
2024-03-18 13:14:57 +01:00
Simon L
3ad6d672c3 community containers - add hint regarding what if containers are already running
Signed-off-by: Simon L <szaimen@e.mail.de>
2024-03-18 13:13:08 +01:00
dependabot[bot]
fd2cb11e40 Bump php in /Containers/nextcloud
Bumps php from 8.2.16-fpm-alpine3.19 to 8.2.17-fpm-alpine3.19.

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-18 12:07:05 +00:00
Simon L
31fa780f29 add another remote backup guide to readme
Signed-off-by: Simon L <szaimen@e.mail.de>
2024-03-15 14:44:05 +01:00
Simon L
4dac111b9f update link
Signed-off-by: Simon L <szaimen@e.mail.de>
2024-03-14 13:22:57 +01:00
Dennis R
5b3658c6a0 Reflect changes in update-helm.sh and fix templating for unset values
Signed-off-by: Dennis R <dennis@elsysweyr.com>
2024-03-14 12:39:13 +01:00
Dennis R
f9e78ba35e Add private mirror support for OCI references #4362
Signed-off-by: Dennis R <dennis@elsysweyr.com>
2024-03-14 12:39:13 +01:00
Simon L
810dec4a96 nextcloud - update apps_paths to include absolute path
Signed-off-by: Simon L <szaimen@e.mail.de>
2024-03-14 12:22:54 +01:00
dependabot[bot]
48d891d390 Bump nats from 2.10.11-scratch to 2.10.12-scratch in /Containers/talk
Bumps nats from 2.10.11-scratch to 2.10.12-scratch.

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-13 12:18:10 +00:00
dependabot[bot]
bf103b9061 Bump collabora/code in /Containers/collabora
Bumps collabora/code from 23.05.9.3.1 to 23.05.9.4.1.

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-11 12:49:40 +00:00
Simon L
257b9217f8 Merge pull request #4358 from nextcloud/enh/noid/ip-address
Make more clear that port 8080 needs to be accessed via ip-address
2024-03-11 12:41:18 +01:00
Simon L
a9a6aa51dc Make more clear that port 8080 needs to be accessed via ip-address
Signed-off-by: Simon L <szaimen@e.mail.de>
2024-03-11 12:39:42 +01:00
38 changed files with 164 additions and 73 deletions

View File

@@ -36,6 +36,10 @@ jobs:
with:
version: v3.6.3
- name: Run Helm Lint
run: |
helm lint ./nextcloud-aio-helm-chart
- name: Run chart-releaser
uses: helm/chart-releaser-action@v1.6.0
with:

View File

@@ -1,4 +1,4 @@
name: Lint and Test Charts
name: Lint Helm Charts
on:
workflow_dispatch:
@@ -8,7 +8,7 @@ on:
jobs:
lint-helm:
runs-on: ubuntu-22.04
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
@@ -20,16 +20,5 @@ jobs:
with:
version: v3.11.1
- name: Set up chart-testing
uses: helm/chart-testing-action@v2.6.1
- name: Run chart-testing (lint)
id: lint
run: ct lint --target-branch ${{ github.event.repository.default_branch }} --debug --chart-dirs nextcloud-aio-helm-chart
- name: Create kind cluster
uses: helm/kind-action@v1.9.0
- name: Run chart-testing (install)
id: install
run: ct install --target-branch ${{ github.event.repository.default_branch }} --debug --chart-dirs nextcloud-aio-helm-chart
- name: Lint charts
run: helm lint nextcloud-aio-helm-chart

View File

@@ -33,10 +33,10 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@v4 # v3.5.2
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@c5fc0d8281aba02c7fda07d3a70cc5371548067d # v2
uses: shivammathur/setup-php@a4e22b60bbb9c1021113f2860347b0759f66fe5d # v2
with:
php-version: ${{ matrix.php-versions }}
coverage: none
@@ -47,10 +47,10 @@ jobs:
- name: Lint
run: cd php && composer run lint
php-lint-summary:
summary:
permissions:
contents: none
runs-on: ubuntu-latest
runs-on: ubuntu-latest-low
needs: php-lint
if: always()

View File

@@ -23,13 +23,13 @@ jobs:
static-analysis:
runs-on: ubuntu-latest
name: Nextcloud
name: static-psalm-analysis
steps:
- name: Checkout
uses: actions/checkout@v4 # v3.5.2
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
- name: Set up php
uses: shivammathur/setup-php@c5fc0d8281aba02c7fda07d3a70cc5371548067d # v2
uses: shivammathur/setup-php@a4e22b60bbb9c1021113f2860347b0759f66fe5d # v2
with:
php-version: 8.3
extensions: apcu

View File

@@ -1,6 +1,6 @@
# syntax=docker/dockerfile:latest
# Probably from this file: https://github.com/Cisco-Talos/clamav-docker/blob/main/clamav/1.1/alpine/Dockerfile
FROM clamav/clamav:1.3.0-41
FROM clamav/clamav:1.3.0-44
COPY clamav.conf /tmp/clamav.conf

View File

@@ -1,6 +1,6 @@
# syntax=docker/dockerfile:latest
# From a file located probably somewhere here: https://github.com/CollaboraOnline/online/tree/master/docker
FROM collabora/code:23.05.9.3.1
FROM collabora/code:23.05.10.1.1
USER root

View File

@@ -1,6 +1,6 @@
# syntax=docker/dockerfile:latest
# Probably from here https://github.com/elastic/elasticsearch/blob/main/distribution/docker/src/docker/Dockerfile
FROM elasticsearch:8.12.2
FROM elasticsearch:8.13.0
USER root

View File

@@ -1,12 +1,12 @@
# syntax=docker/dockerfile:latest
# Docker CLI is a requirement
FROM docker:25.0.3-cli as docker
FROM docker:25.0.5-cli as docker
# Caddy is a requirement
FROM caddy:2.7.6-alpine as caddy
# From https://github.com/docker-library/php/blob/master/8.3/alpine3.19/fpm/Dockerfile
FROM php:8.3.3-fpm-alpine3.19
FROM php:8.3.4-fpm-alpine3.19
EXPOSE 80
EXPOSE 8080

View File

@@ -47,7 +47,7 @@ elif ! sudo -u www-data test -r /var/run/docker.sock; then
echo "Trying to fix docker.sock permissions internally..."
DOCKER_GROUP=$(stat -c '%G' /var/run/docker.sock)
DOCKER_GROUP_ID=$(stat -c '%g' /var/run/docker.sock)
# Check if a group with the same group id of /var/run/docker.socket already exists in the container
# Check if a group with the same group name of /var/run/docker.socket already exists in the container
if grep -q "^$DOCKER_GROUP:" /etc/group; then
# If yes, add www-data to that group
echo "Adding internal www-data to group $DOCKER_GROUP"
@@ -344,6 +344,7 @@ fi
print_green "Initial startup of Nextcloud All-in-One complete!
You should be able to open the Nextcloud AIO Interface now on port 8080 of this server!
E.g. https://internal.ip.of.this.server:8080
⚠️ Important: do always use an ip-address if you access this port and not a domain as HSTS might block access to it later!
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"

View File

@@ -1,5 +1,5 @@
# syntax=docker/dockerfile:latest
FROM php:8.2.16-fpm-alpine3.19
FROM php:8.2.17-fpm-alpine3.19
ENV PHP_MEMORY_LIMIT 512M
ENV PHP_UPLOAD_LIMIT 10G
@@ -7,7 +7,7 @@ ENV PHP_MAX_TIME 3600
ENV SOURCE_LOCATION /usr/src/nextcloud
# AIO settings start # Do not remove or change this line!
ENV NEXTCLOUD_VERSION 28.0.3
ENV NEXTCLOUD_VERSION 28.0.4
ENV AIO_TOKEN 123456
ENV AIO_URL localhost
COPY supervisord.conf /supervisord.conf
@@ -117,6 +117,14 @@ RUN set -ex; \
echo 'max_input_time=${PHP_MAX_TIME}'; \
} > /usr/local/etc/php/conf.d/nextcloud.ini; \
\
{ \
echo 'session.save_handler = redis'; \
echo 'session.save_path = "tcp://${REDIS_HOST}:6379?auth=${REDIS_HOST_PASSWORD}"'; \
echo 'redis.session.locking_enabled = 1'; \
echo 'redis.session.lock_retries = -1'; \
echo 'redis.session.lock_wait_time = 10000'; \
} > /usr/local/etc/php/conf.d/redis-session.ini; \
\
mkdir -p /var/www/data; \
chown -R www-data:root /var/www; \
chmod -R g=u /var/www; \

View File

@@ -2,12 +2,12 @@
$CONFIG = array (
'apps_paths' => array (
0 => array (
'path' => OC::$SERVERROOT.'/apps',
'path' => '/var/www/html/apps',
'url' => '/apps',
'writable' => false,
),
1 => array (
'path' => OC::$SERVERROOT.'/custom_apps',
'path' => '/var/www/html/custom_apps',
'url' => '/custom_apps',
'writable' => true,
),

View File

@@ -6,6 +6,7 @@ if (getenv('REDIS_HOST')) {
'redis' => array(
'host' => getenv('REDIS_HOST'),
'password' => (string) getenv('REDIS_HOST_PASSWORD'),
// 'dbindex' => (int) getenv('REDIS_DB_INDEX'),
),
);

View File

@@ -19,17 +19,6 @@ run_upgrade_if_needed_due_to_app_update() {
fi
}
echo "Configuring Redis as session handler..."
cat << REDIS_CONF > /usr/local/etc/php/conf.d/redis-session.ini
session.save_handler = redis
session.save_path = "tcp://${REDIS_HOST}:${REDIS_HOST_PORT:=6379}?auth=${REDIS_HOST_PASSWORD}"
redis.session.locking_enabled = 1
redis.session.lock_retries = -1
# redis.session.lock_wait_time is specified in microseconds.
# Wait 10ms before retrying the lock rather than the default 2ms.
redis.session.lock_wait_time = 10000
REDIS_CONF
# Check permissions in ncdata
touch "$NEXTCLOUD_DATA_DIR/this-is-a-test-file" &>/dev/null
if ! [ -f "$NEXTCLOUD_DATA_DIR/this-is-a-test-file" ]; then
@@ -550,6 +539,11 @@ php /var/www/html/occ config:app:set notify_push base_endpoint --value="https://
# Collabora
if [ "$COLLABORA_ENABLED" = 'yes' ]; then
set -x
if echo "$COLLABORA_HOST" | grep -q "nextcloud-.*-collabora"; then
COLLABORA_HOST="$NC_DOMAIN"
fi
set +x
if ! [ -d "/var/www/html/custom_apps/richdocuments" ]; then
php /var/www/html/occ app:install richdocuments
elif [ "$(php /var/www/html/occ config:app:get richdocuments enabled)" != "yes" ]; then
@@ -557,10 +551,10 @@ if [ "$COLLABORA_ENABLED" = 'yes' ]; then
elif [ "$SKIP_UPDATE" != 1 ]; then
php /var/www/html/occ app:update richdocuments
fi
php /var/www/html/occ config:app:set richdocuments wopi_url --value="https://$NC_DOMAIN/"
php /var/www/html/occ config:app:set richdocuments wopi_url --value="https://$COLLABORA_HOST/"
# Make collabora more save
COLLABORA_IPv4_ADDRESS="$(dig "$NC_DOMAIN" A +short +search | grep '^[0-9.]\+$' | sort | head -n1)"
COLLABORA_IPv6_ADDRESS="$(dig "$NC_DOMAIN" AAAA +short +search | grep '^[0-9a-f:]\+$' | sort | head -n1)"
COLLABORA_IPv4_ADDRESS="$(dig "$COLLABORA_HOST" A +short +search | grep '^[0-9.]\+$' | sort | head -n1)"
COLLABORA_IPv6_ADDRESS="$(dig "$COLLABORA_HOST" AAAA +short +search | grep '^[0-9a-f:]\+$' | sort | head -n1)"
COLLABORA_ALLOW_LIST="$(php /var/www/html/occ config:app:get richdocuments wopi_allowlist)"
if [ -n "$COLLABORA_IPv4_ADDRESS" ]; then
if ! echo "$COLLABORA_ALLOW_LIST" | grep -q "$COLLABORA_IPv4_ADDRESS"; then
@@ -571,7 +565,7 @@ if [ "$COLLABORA_ENABLED" = 'yes' ]; then
fi
fi
else
echo "Warning: No ipv4-address found for $NC_DOMAIN."
echo "Warning: No ipv4-address found for $COLLABORA_HOST."
fi
if [ -n "$COLLABORA_IPv6_ADDRESS" ]; then
if ! echo "$COLLABORA_ALLOW_LIST" | grep -q "$COLLABORA_IPv6_ADDRESS"; then
@@ -582,7 +576,7 @@ if [ "$COLLABORA_ENABLED" = 'yes' ]; then
fi
fi
else
echo "No ipv6-address found for $NC_DOMAIN."
echo "No ipv6-address found for $COLLABORA_HOST."
fi
if [ -n "$COLLABORA_ALLOW_LIST" ]; then
PRIVATE_IP_RANGES='127.0.0.1/8,192.168.0.0/16,172.16.0.0/12,10.0.0.0/8,fd00::/8,::1'

View File

@@ -1,5 +1,5 @@
# syntax=docker/dockerfile:latest
FROM nats:2.10.11-scratch as nats
FROM nats:2.10.12-scratch as nats
FROM eturnal/eturnal:1.12.0 AS eturnal
FROM strukturag/nextcloud-spreed-signaling:1.2.3 as signaling
FROM alpine:3.19.1 as janus

View File

@@ -9,13 +9,13 @@ All containers that are in this directory are community maintained so the respon
## How to use this?
Before adding any additional container, make sure to create a backup via the AIO interface!
Afterwards, you might want to add additional community containers to the default AIO stack. You can do so by adding `--env AIO_COMMUNITY_CONTAINERS="container1 container2"` 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 match the folder names in this directory! ⚠️⚠️⚠️ Please review the folder for documentation on each of the containers before adding them! Not reviewing the documentation for each of them first might break starting the AIO containers because e.g. fail2ban only works on Linux and not on Docker Desktop!
Afterwards, you might want to add additional community containers to the default AIO stack. You can do so by adding `--env AIO_COMMUNITY_CONTAINERS="container1 container2"` 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 match the folder names in this directory! ⚠️⚠️⚠️ Please review the folder for documentation on each of the containers before adding them! Not reviewing the documentation for each of them first might break starting the AIO containers because e.g. fail2ban only works on Linux and not on Docker Desktop! **Hint:** If the containers where running already, in order to actually start the added container, you need to click on `Stop containers` and the `Update and start containers` in order to actually start it.
## How to add containers?
Simply submit a PR by creating a new folder in this directory: https://github.com/nextcloud/all-in-one/tree/main/community-containers with the name of your container. It must include a json file with the same name and with correct syntax and a readme.md with additional information. You might get inspired by caddy, fail2ban, local-ai, libretranslate, plex, pi-hole or vaultwarden (subfolders in this directory). For a full-blown example of the json file, see https://github.com/nextcloud/all-in-one/blob/main/php/containers.json. The json-schema that it validates against can be found here: https://github.com/nextcloud/all-in-one/blob/main/php/containers-schema.json.
### Is there a list of ideas for new community containers?
Yes, see [this list](https://github.com/nextcloud/all-in-one/discussions/categories/ideas?discussions_q=is%3Aopen+category%3AIdeas+label%3A%22help+wanted%22) for already existing ideas for new community containers. Feel free to pick one up and add it to this folder by following the instructions above.
Yes, see [this list](https://github.com/nextcloud/all-in-one/discussions/categories/ideas?discussions_q=is%3Aopen+category%3AIdeas+label%3A%22help+wanted%22+sort%3Atop) for already existing ideas for new community containers. Feel free to pick one up and add it to this folder by following the instructions above.
## How to remove containers from AIOs stack?
In some cases, you might want to remove some community containers from the AIO stack again. Here is how to do this.

View File

@@ -149,6 +149,7 @@ services:
- REMOVE_DISABLED_APPS=${REMOVE_DISABLED_APPS}
- APACHE_PORT=${APACHE_PORT}
- APACHE_IP_BINDING=${APACHE_IP_BINDING}
- IMAGINARY_SECRET=${IMAGINARY_SECRET}
stop_grace_period: 600s
restart: unless-stopped
networks:
@@ -322,6 +323,7 @@ services:
- "9000"
environment:
- TZ=${TIMEZONE}
- IMAGINARY_SECRET=${IMAGINARY_SECRET}
restart: unless-stopped
cap_add:
- SYS_NICE

View File

@@ -1,5 +1,6 @@
DATABASE_PASSWORD= # TODO! This needs to be a unique and good password!
FULLTEXTSEARCH_PASSWORD= # TODO! This needs to be a unique and good password!
IMAGINARY_SECRET= # TODO! This needs to be a unique and good password!
NC_DOMAIN=yourdomain.com # TODO! Needs to be changed to the domain that you want to use for Nextcloud.
NEXTCLOUD_PASSWORD= # TODO! This is the password of the initially created Nextcloud admin with username "admin".
ONLYOFFICE_SECRET= # TODO! This needs to be a unique and good password!

View File

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

View File

@@ -26,7 +26,11 @@ spec:
spec:
initContainers:
- name: init-volumes
{{- if or .Values.IMAGE_MIRROR_PREFIX .Values.ALPINE_IMAGE_ORG }}
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.ALPINE_IMAGE_ORG}}/alpine"
{{- else }}
image: alpine
{{- end }}
command:
- chmod
- "777"
@@ -61,7 +65,7 @@ spec:
value: nextcloud-aio-talk
- name: TZ
value: "{{ .Values.TIMEZONE }}"
image: nextcloud/aio-apache:20240308_092935-latest
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-apache:20240321_080708-latest"
name: nextcloud-aio-apache
ports:
- containerPort: {{ .Values.APACHE_PORT }}

View File

@@ -27,7 +27,11 @@ spec:
spec:
initContainers:
- name: init-subpath
{{- if or .Values.IMAGE_MIRROR_PREFIX .Values.ALPINE_IMAGE_ORG }}
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.ALPINE_IMAGE_ORG}}/alpine"
{{- else }}
image: alpine
{{- end }}
command:
- mkdir
- "-p"
@@ -37,7 +41,11 @@ spec:
- name: nextcloud-aio-clamav
mountPath: /nextcloud-aio-clamav
- name: init-volumes
{{- if or .Values.IMAGE_MIRROR_PREFIX .Values.ALPINE_IMAGE_ORG }}
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.ALPINE_IMAGE_ORG}}/alpine"
{{- else }}
image: alpine
{{- end }}
command:
- chown
- 100:100
@@ -52,7 +60,7 @@ spec:
value: "90"
- name: TZ
value: "{{ .Values.TIMEZONE }}"
image: nextcloud/aio-clamav:20240308_092935-latest
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-clamav:20240321_080708-latest"
name: nextcloud-aio-clamav
ports:
- containerPort: 3310

View File

@@ -37,7 +37,7 @@ spec:
value: --o:ssl.enable=false --o:ssl.termination=true --o:mount_jail_tree=false --o:logging.level=warning --o:home_mode.enable=true {{ .Values.COLLABORA_SECCOMP_POLICY }} --o:remote_font_config.url=https://{{ .Values.NC_DOMAIN }}/apps/richdocuments/settings/fonts.json
- name: server_name
value: "{{ .Values.NC_DOMAIN }}"
image: nextcloud/aio-collabora:20240308_092935-latest
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-collabora:20240321_080708-latest"
name: nextcloud-aio-collabora
ports:
- containerPort: 9980

View File

@@ -26,7 +26,11 @@ spec:
spec:
initContainers:
- name: init-subpath
{{- if or .Values.IMAGE_MIRROR_PREFIX .Values.ALPINE_IMAGE_ORG }}
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.ALPINE_IMAGE_ORG}}/alpine"
{{- else }}
image: alpine
{{- end }}
command:
- mkdir
- "-p"
@@ -39,7 +43,11 @@ spec:
- name: nextcloud-aio-database
mountPath: /nextcloud-aio-database
- name: init-volumes
{{- if or .Values.IMAGE_MIRROR_PREFIX .Values.ALPINE_IMAGE_ORG }}
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.ALPINE_IMAGE_ORG}}/alpine"
{{- else }}
image: alpine
{{- end }}
command:
- chown
- 999:999
@@ -63,7 +71,7 @@ spec:
value: nextcloud
- name: TZ
value: "{{ .Values.TIMEZONE }}"
image: nextcloud/aio-postgresql:20240308_092935-latest
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-postgresql:20240321_080708-latest"
name: nextcloud-aio-database
ports:
- containerPort: 5432

View File

@@ -27,7 +27,11 @@ spec:
spec:
initContainers:
- name: init-volumes
{{- if or .Values.IMAGE_MIRROR_PREFIX .Values.ALPINE_IMAGE_ORG }}
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.ALPINE_IMAGE_ORG}}/alpine"
{{- else }}
image: alpine
{{- end }}
command:
- chmod
- "777"
@@ -57,7 +61,7 @@ spec:
value: basic
- name: xpack.security.enabled
value: "false"
image: nextcloud/aio-fulltextsearch:20240308_092935-latest
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-fulltextsearch:20240321_080708-latest"
name: nextcloud-aio-fulltextsearch
ports:
- containerPort: 9200

View File

@@ -25,9 +25,11 @@ spec:
spec:
containers:
- env:
- name: IMAGINARY_SECRET
value: "{{ .Values.IMAGINARY_SECRET }}"
- name: TZ
value: "{{ .Values.TIMEZONE }}"
image: nextcloud/aio-imaginary:20240308_092935-latest
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-imaginary:20240321_080708-latest"
name: nextcloud-aio-imaginary
ports:
- containerPort: 9000

View File

@@ -26,7 +26,11 @@ spec:
spec:
initContainers:
- name: "delete-lost-found"
{{- if or .Values.IMAGE_MIRROR_PREFIX .Values.ALPINE_IMAGE_ORG }}
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.ALPINE_IMAGE_ORG}}/alpine"
{{- else }}
image: alpine
{{- end }}
command:
- rm
- "-rf"
@@ -37,7 +41,11 @@ spec:
- name: nextcloud-aio-nextcloud
mountPath: /nextcloud-aio-nextcloud
- name: init-volumes
{{- if or .Values.IMAGE_MIRROR_PREFIX .Values.ALPINE_IMAGE_ORG }}
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.ALPINE_IMAGE_ORG}}/alpine"
{{- else }}
image: alpine
{{- end }}
command:
- chmod
- "777"
@@ -104,6 +112,8 @@ spec:
value: "{{ .Values.IMAGINARY_ENABLED }}"
- name: IMAGINARY_HOST
value: nextcloud-aio-imaginary
- name: IMAGINARY_SECRET
value: "{{ .Values.IMAGINARY_SECRET }}"
- name: INSTALL_LATEST_MAJOR
value: "{{ .Values.INSTALL_LATEST_MAJOR }}"
- name: NC_DOMAIN
@@ -160,7 +170,7 @@ spec:
value: "{{ .Values.TIMEZONE }}"
- name: UPDATE_NEXTCLOUD_APPS
value: "{{ .Values.UPDATE_NEXTCLOUD_APPS }}"
image: nextcloud/aio-nextcloud:20240308_092935-latest
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-nextcloud:20240321_080708-latest"
name: nextcloud-aio-nextcloud
ports:
- containerPort: 9000

View File

@@ -26,7 +26,11 @@ spec:
spec:
initContainers:
- name: init-volumes
{{- if or .Values.IMAGE_MIRROR_PREFIX .Values.ALPINE_IMAGE_ORG }}
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.ALPINE_IMAGE_ORG}}/alpine"
{{- else }}
image: alpine
{{- end }}
command:
- chmod
- "777"
@@ -52,7 +56,7 @@ spec:
value: nextcloud-aio-redis
- name: REDIS_HOST_PASSWORD
value: "{{ .Values.REDIS_PASSWORD }}"
image: nextcloud/aio-notify-push:20240308_092935-latest
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-notify-push:20240321_080708-latest"
name: nextcloud-aio-notify-push
ports:
- containerPort: 7867

View File

@@ -27,7 +27,11 @@ spec:
spec:
initContainers:
- name: init-volumes
{{- if or .Values.IMAGE_MIRROR_PREFIX .Values.ALPINE_IMAGE_ORG }}
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.ALPINE_IMAGE_ORG}}/alpine"
{{- else }}
image: alpine
{{- end }}
command:
- chmod
- "777"
@@ -45,7 +49,7 @@ spec:
value: "{{ .Values.ONLYOFFICE_SECRET }}"
- name: TZ
value: "{{ .Values.TIMEZONE }}"
image: nextcloud/aio-onlyoffice:20240308_092935-latest
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-onlyoffice:20240321_080708-latest"
name: nextcloud-aio-onlyoffice
ports:
- containerPort: 80

View File

@@ -26,7 +26,11 @@ spec:
spec:
initContainers:
- name: init-volumes
{{- if or .Values.IMAGE_MIRROR_PREFIX .Values.ALPINE_IMAGE_ORG }}
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.ALPINE_IMAGE_ORG}}/alpine"
{{- else }}
image: alpine
{{- end }}
command:
- chmod
- "777"
@@ -40,7 +44,7 @@ spec:
value: "{{ .Values.REDIS_PASSWORD }}"
- name: TZ
value: "{{ .Values.TIMEZONE }}"
image: nextcloud/aio-redis:20240308_092935-latest
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-redis:20240321_080708-latest"
name: nextcloud-aio-redis
ports:
- containerPort: 6379

View File

@@ -37,7 +37,7 @@ spec:
value: "{{ .Values.TURN_SECRET }}"
- name: TZ
value: "{{ .Values.TIMEZONE }}"
image: nextcloud/aio-talk:20240308_092935-latest
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-talk:20240321_080708-latest"
name: nextcloud-aio-talk
ports:
- containerPort: {{ .Values.TALK_PORT }}

View File

@@ -33,7 +33,7 @@ spec:
value: "{{ .Values.RECORDING_SECRET }}"
- name: TZ
value: "{{ .Values.TIMEZONE }}"
image: nextcloud/aio-talk-recording:20240308_092935-latest
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/aio-talk-recording:20240321_080708-latest"
name: nextcloud-aio-talk-recording
ports:
- containerPort: 1234

View File

@@ -59,7 +59,11 @@ find ./ -name '*networkpolicy.yaml' -exec sed -i "s|manual-install-nextcloud-aio
cat << EOL > /tmp/initcontainers
initContainers:
- name: init-volumes
{{- if or .Values.IMAGE_MIRROR_PREFIX .Values.ALPINE_IMAGE_ORG }}
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.ALPINE_IMAGE_ORG}}/alpine"
{{- else }}
image: alpine
{{- end }}
command:
- chmod
- "777"
@@ -68,14 +72,22 @@ EOL
cat << EOL > /tmp/initcontainers.database
initContainers:
- name: init-subpath
{{- if or .Values.IMAGE_MIRROR_PREFIX .Values.ALPINE_IMAGE_ORG }}
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.ALPINE_IMAGE_ORG}}/alpine"
{{- else }}
image: alpine
{{- end }}
command:
- mkdir
- "-p"
- /nextcloud-aio-database/data
volumeMountsInitContainer:
- name: init-volumes
{{- if or .Values.IMAGE_MIRROR_PREFIX .Values.ALPINE_IMAGE_ORG }}
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.ALPINE_IMAGE_ORG}}/alpine"
{{- else }}
image: alpine
{{- end }}
command:
- chown
- 999:999
@@ -85,14 +97,22 @@ EOL
cat << EOL > /tmp/initcontainers.clamav
initContainers:
- name: init-subpath
{{- if or .Values.IMAGE_MIRROR_PREFIX .Values.ALPINE_IMAGE_ORG }}
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.ALPINE_IMAGE_ORG}}/alpine"
{{- else }}
image: alpine
{{- end }}
command:
- mkdir
- "-p"
- /nextcloud-aio-clamav/data
volumeMountsInitContainer:
- name: init-volumes
{{- if or .Values.IMAGE_MIRROR_PREFIX .Values.ALPINE_IMAGE_ORG }}
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.ALPINE_IMAGE_ORG}}/alpine"
{{- else }}
image: alpine
{{- end }}
command:
- chown
- 100:100
@@ -102,14 +122,22 @@ EOL
cat << EOL > /tmp/initcontainers.nextcloud
initContainers:
- name: "delete-lost-found"
{{- if or .Values.IMAGE_MIRROR_PREFIX .Values.ALPINE_IMAGE_ORG }}
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.ALPINE_IMAGE_ORG}}/alpine"
{{- else }}
image: alpine
{{- end }}
command:
- rm
- "-rf"
- "/nextcloud-aio-nextcloud/lost+found"
volumeMountsInitRmLostFound:
- name: init-volumes
{{- if or .Values.IMAGE_MIRROR_PREFIX .Values.ALPINE_IMAGE_ORG }}
image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.ALPINE_IMAGE_ORG}}/alpine"
{{- else }}
image: alpine
{{- end }}
command:
- chmod
- "777"
@@ -272,6 +300,8 @@ EOL
# shellcheck disable=SC1083
find ./ -name '*apache-deployment.yaml' -exec sed -i "/^.*\- env:/r /tmp/additional-apache.config" \{} \;
# shellcheck disable=SC1083
find ./ -name '*deployment.yaml' -exec sed -i '/image: nextcloud/s/$/"/;s|image: nextcloud/|image: "{{ .Values.IMAGE_MIRROR_PREFIX }}{{ .Values.NEXTCLOUD_IMAGE_ORG }}/|;' \{} \;
cd ../
mkdir -p ../helm-chart/
@@ -326,6 +356,10 @@ SMTP_NAME: # (empty by default): The username for the authentication.
SMTP_PASSWORD: # (empty by default): The password for the authentication.
MAIL_FROM_ADDRESS: # (not set by default): Set the local-part for the 'from' field in the emails sent by Nextcloud.
MAIL_DOMAIN: # (not set by default): Set a different domain for the emails than the domain where Nextcloud is installed.
IMAGE_MIRROR_PREFIX: # Setting this allows you to pull Nextcloud images through a mirror registry.
NEXTCLOUD_IMAGE_ORG: nextcloud # Setting this allows you to change the image's org name in case a different image needs to be used e.g. for compliance reasons.
ALPINE_IMAGE_ORG: # Setting this allows you to change the image's org name in case a different image needs to be used e.g. for compliance reasons.
ADDITIONAL_CONFIG
mv /tmp/sample.conf ../helm-chart/values.yaml

View File

@@ -1,5 +1,6 @@
DATABASE_PASSWORD: # TODO! This needs to be a unique and good password!
FULLTEXTSEARCH_PASSWORD: # TODO! This needs to be a unique and good password!
IMAGINARY_SECRET: # TODO! This needs to be a unique and good password!
NC_DOMAIN: yourdomain.com # TODO! Needs to be changed to the domain that you want to use for Nextcloud.
NEXTCLOUD_PASSWORD: # TODO! This is the password of the initially created Nextcloud admin with username admin.
ONLYOFFICE_SECRET: # TODO! This needs to be a unique and good password!
@@ -60,3 +61,7 @@ SMTP_NAME: # (empty by default): The username for the authentication.
SMTP_PASSWORD: # (empty by default): The password for the authentication.
MAIL_FROM_ADDRESS: # (not set by default): Set the local-part for the 'from' field in the emails sent by Nextcloud.
MAIL_DOMAIN: # (not set by default): Set a different domain for the emails than the domain where Nextcloud is installed.
IMAGE_MIRROR_PREFIX: # Setting this allows you to pull Nextcloud images through a mirror registry.
NEXTCLOUD_IMAGE_ORG: nextcloud # Setting this allows you to change the image's org name in case a different image needs to be used e.g. for compliance reasons.
ALPINE_IMAGE_ORG: # Setting this allows you to change the image's org name in case a different image needs to be used e.g. for compliance reasons.

View File

@@ -1,2 +1,2 @@
<?xml version="1.0" encoding="UTF-8"?>
<files psalm-version="5.22.2@d768d914152dbbf3486c36398802f74e80cfde48"/>
<files psalm-version="5.23.1@8471a896ccea3526b26d082f4461eeea467f10a4"/>

View File

@@ -742,7 +742,7 @@ class ConfigurationManager
// Trim all unwanted chars on both sites
$entry = trim($entry);
if ($entry !== "") {
if (!preg_match("#^/[.0-1a-zA-Z/_-]+$#", $entry) && !preg_match("#^[.0-1a-zA-Z_-]+$#", $entry)) {
if (!preg_match("#^/[.0-9a-zA-Z/_-]+$#", $entry) && !preg_match("#^[.0-9a-zA-Z_-]+$#", $entry)) {
throw new InvalidSettingConfigurationException("You entered unallowed characters! Problematic is " . $entry);
}
$validDirectories .= rtrim($entry, '/') . PHP_EOL;

View File

@@ -879,7 +879,7 @@ class DockerActionManager
} catch (RequestException $e) {
// 409 is undocumented and gets thrown if the network already exists.
if ($e->getCode() !== 409) {
throw $e;
throw new \Exception("Could not create the nextcloud-aio network: " . $e->getMessage());
}
}

View File

@@ -16,7 +16,7 @@
</header>
<div class="content">
<h1>Nextcloud AIO v8.0.0</h1>
<h1>Nextcloud AIO v8.1.0</h1>
{# Add 2nd tab warning #}
<script type="text/javascript" src="second-tab-warning.js"></script>
@@ -153,7 +153,7 @@
<input class="button" type="submit" value="Check backup integrity"/><br/>
</form>
{% endif %}
Choose the backup that you want to restore and click on the button below to restore the selected backup. This will restore the whole AIO instance from backup. Please not that the current AIO password will be kept and the AIO password not restored from backup!<br><br>
Choose the backup that you want to restore and click on the button below to restore the selected backup. This will restore the whole AIO instance from backup. Please note that the current AIO password will be kept and the previous AIO password will not be restored from backup!<br><br>
<form method="POST" action="/api/docker/restore" class="xhr" id="restore_selection">
<input type="hidden" name="{{csrf.keys.name}}" value="{{csrf.name}}">
<input type="hidden" name="{{csrf.keys.value}}" value="{{csrf.value}}">
@@ -494,7 +494,7 @@
<input type="hidden" name="delete_daily_backup_time" value="yes"/>
<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="Disable daily backups" />
<input class="button" type="submit" value="Disable or change daily backups" />
</form>
{% endif %}

View File

@@ -119,7 +119,8 @@ The following instructions are meant for installations without a web server or r
Note: You may be interested in adjusting Nextclouds datadir to store the files in a different location than the default docker volume. See [this documentation](https://github.com/nextcloud/all-in-one#how-to-change-the-default-location-of-nextclouds-datadir) on how to do it.
3. After the initial startup, you should be able to open the Nextcloud AIO Interface now on port 8080 of this server.<br>
E.g. `https://ip.address.of.this.server:8080`<br><br>
E.g. `https://ip.address.of.this.server:8080`<br>
⚠️ **Important:** do always use an ip-address if you access this port and not a domain as HSTS might block access to it later! (It is also expected that this port uses a self-signed certificate due to security concerns which you need to accept in your browser)<br><br>
If your firewall/router has port 80 and 8443 open/forwarded and you point a domain to your server, you can get a valid certificate automatically by opening the Nextcloud AIO Interface via:<br>
`https://your-domain-that-points-to-this-server.tld:8443`
4. Please do not forget to open port `3478/TCP` and `3478/UDP` in your firewall/router for the Talk container!
@@ -143,7 +144,7 @@ Only those (if you access the Mastercontainer Interface internally via port 8080
- `3478/TCP` and `3478/UDP` for the Talk container
### Explanation of used ports:
- `8080/TCP`: Mastercontainer Interface with self-signed certificate (works always, also if only access via IP-address is possible, e.g. `https://ip.address.of.this.server:8080/`)
- `8080/TCP`: Mastercontainer Interface with self-signed certificate (works always, also if only access via IP-address is possible, e.g. `https://ip.address.of.this.server:8080/`) ⚠️ **Important:** do always use an ip-address if you access this port and not a domain as HSTS might block access to it later! (It is also expected that this port uses a self-signed certificate due to security concerns which you need to accept in your browser)
- `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
@@ -386,6 +387,7 @@ Not directly but you have multiple options to achieve this:
- Mount a network FS like SSHFS, SMB or NFS in the directory that you enter in AIO as backup directory
- Use rsync or rclone for syncing the borg backup archive that AIO creates locally to a remote target (make sure to lock the backup archive correctly before starting the sync; search for "aio-lockfile"; you can find a local example script here: https://github.com/nextcloud/all-in-one#sync-the-backup-regularly-to-another-drive)
- You can find a well written guide that uses rclone and e.g. BorgBase for remote backups here: https://github.com/nextcloud/all-in-one/discussions/2247
- Here is another one that utilizes borgmatic and BorgBase for remote backups: https://github.com/nextcloud/all-in-one/discussions/4391
- create your own backup solution using a script and borg, borgmatic or any other to backup tool for backing up to a remote target (make sure to stop and start the AIO containers correctly following https://github.com/nextcloud/all-in-one#how-to-enable-automatic-updates-without-creating-a-backup-beforehand)
---

View File

@@ -699,7 +699,9 @@ Simply translate the docker run command into a docker-compose file. You can have
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!
After starting AIO, you should be able to access the AIO Interface via `https://ip.address.of.the.host:8080`.<br>
⚠️ **Important:** do always use an ip-address if you access this port and not a domain as HSTS might block access to it later! (It is also expected that this port uses a self-signed certificate due to security concerns which you need to accept in your browser)<br>
Enter your domain in the AIO interface that you've used 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!
## 5. Optional: get a valid certificate for the AIO interface