diff --git a/Containers/apache/Caddyfile b/Containers/apache/Caddyfile index cbe309b2..ed15101c 100644 --- a/Containers/apache/Caddyfile +++ b/Containers/apache/Caddyfile @@ -51,9 +51,6 @@ https://{$ADDITIONAL_TRUSTED_DOMAIN}:443, reverse_proxy {$TALK_HOST}:8081 } - # Others - import /mnt/data/caddy-imports/* - # Nextcloud route { rewrite /.well-known/carddav /remote.php/dav/ diff --git a/Containers/apache/start.sh b/Containers/apache/start.sh index 9b89c2b5..49270210 100644 --- a/Containers/apache/start.sh +++ b/Containers/apache/start.sh @@ -63,15 +63,6 @@ caddy fmt --overwrite /tmp/Caddyfile # Add caddy path mkdir -p /mnt/data/caddy/ -# Add caddy import path -mkdir -p /mnt/data/caddy-imports - -# Remove falsely added Nextcloud conf -rm -f /mnt/data/caddy-imports/nextcloud - -# Make sure that the caddy-imports dir is not empty -echo "# empty file so that caddy does not print a warning" > /mnt/data/caddy-imports/empty - # Fix apache startup rm -f /usr/local/apache2/logs/httpd.pid diff --git a/Containers/nextcloud/Dockerfile b/Containers/nextcloud/Dockerfile index 0f444f35..1a8b4521 100644 --- a/Containers/nextcloud/Dockerfile +++ b/Containers/nextcloud/Dockerfile @@ -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.5 +ENV NEXTCLOUD_VERSION 28.0.6 ENV AIO_TOKEN 123456 ENV AIO_URL localhost # AIO settings end # Do not remove or change this line! diff --git a/Containers/talk/Dockerfile b/Containers/talk/Dockerfile index 800aea53..92a9f284 100644 --- a/Containers/talk/Dockerfile +++ b/Containers/talk/Dockerfile @@ -1,7 +1,7 @@ # syntax=docker/dockerfile:latest FROM nats:2.10.16-scratch as nats FROM eturnal/eturnal:1.12.0 AS eturnal -FROM strukturag/nextcloud-spreed-signaling:1.3.0 as signaling +FROM strukturag/nextcloud-spreed-signaling:1.3.1 as signaling FROM alpine:3.19.1 as janus ARG JANUS_VERSION=v0.14.2 diff --git a/Containers/talk/server.conf.in b/Containers/talk/server.conf.in index 6b61b7b8..b748cacd 100644 --- a/Containers/talk/server.conf.in +++ b/Containers/talk/server.conf.in @@ -35,7 +35,8 @@ debug = false #allowsubscribeany = false # Comma separated list of trusted proxies (IPs or CIDR networks) that may set -# the "X-Real-Ip" or "X-Forwarded-For" headers. +# the "X-Real-Ip" or "X-Forwarded-For" headers. If both are provided, the +# "X-Real-Ip" header will take precedence (if valid). # Leave empty to allow loopback and local addresses. #trustedproxies = diff --git a/multiple-instances.md b/multiple-instances.md index 32e1a462..f98f867a 100644 --- a/multiple-instances.md +++ b/multiple-instances.md @@ -214,7 +214,7 @@ apt install --no-install-recommends qemu-system qemu-utils libvirt-clients libvi
virsh console --domain [VM_NAME]
ssh [NONROOT_USER]@[IP_ADDRESS] # By default, OpenSSH does not allow logging in as root
virsh destroy --domain [VM_NAME] ; virsh undefine --nvram --domain [VM_NAME] && rm -rfi /var/lib/libvirt/images/[VM_NAME].qcow2
virsh attach-device --live --domain [VM_NAME] --file [USB_DEVICE_DEFINITION.xml]
virsh console --domain [VM_NAME]
# (Login to the VM with root privileges)
diff --git a/php/templates/containers.twig b/php/templates/containers.twig
index d8fab230..bb9d7356 100644
--- a/php/templates/containers.twig
+++ b/php/templates/containers.twig
@@ -78,7 +78,7 @@
{% if is_backup_container_running == false and domain == "" %}
{% if isDomaincheckRunning == false %}
Domaincheck container is not running
- 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 reverse proxy documentation. Advice: have a detailed look at the changed docker run command for AIO.
+ 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 reverse proxy documentation. Advice: have a detailed look at the changed docker run command for AIO.
{% elseif is_mastercontainer_update_available == true %}
Mastercontainer update
⚠️ A mastercontainer update is available. Please click on the button below to update it. Afterwards, you will be able to proceed with the setup.
@@ -94,13 +94,13 @@
{{ include('includes/aio-config.twig') }}
New AIO instance
{% if apache_port == '443' %}
- AIO is currently in "normal mode" which means that it handles the TLS proxying itself. This also means that it cannot be installed behind a web server or reverse proxy (like Apache, Nginx, Cloudflare Tunnel and else). If you want to run AIO behind a web server or reverse proxy (like Apache, Nginx, Cloudflare Tunnel and else), see the reverse proxy documentation. Advice: have a detailed look at the changed docker run command for AIO.
+ AIO is currently in "normal mode" which means that it handles the TLS proxying itself. This also means that it cannot be installed behind a web server or reverse proxy (like Apache, Nginx, Cloudflare Tunnel and else). If you want to run AIO behind a web server or reverse proxy (like Apache, Nginx, Cloudflare Tunnel and else), see the reverse proxy documentation. Advice: have a detailed look at the changed docker run command for AIO.
{% else %}
AIO is currently in "reverse proxy mode" which means that it can be installed behind a web server or reverse proxy (like Apache, Nginx, Cloudflare Tunnel and else) and does not do the TLS proxying itself.
{% endif %}
Please type the domain that will be used for Nextcloud below in order to create a new AIO instance.
{% if skip_domain_validation == true %}
- Please note: The domain validation is disabled so any domain will be accepted here! Make sure you do not make a typo here as you will not be able to change it afterwards!
+ Please note: The domain validation is disabled so any domain will be accepted here! Make sure you do not make a typo here as you will not be able to change it afterwards!
{% endif %}
@@ -388,10 +389,10 @@
{% if backup_exit_code > 0 %}
Last {{ borg_backup_mode }} failed! (Logs)
{% if borg_backup_mode == "check" %}
- The backup check was not successful. This might indicate a corrupt archive (look at the logs). If that should be the case, you can try to fix it by following this documentation
+ The backup check was not successful. This might indicate a corrupt archive (look at the logs). If that should be the case, you can try to fix it by following this documentation
Reveal repair option
- Below is the option to repair the integrity of your backup. Please note: Please only use this after you have read the documentation above! (It will run the command 'borg check --repair' for you.)
+ Below is the option to repair the integrity of your backup. Please note: Please only use this after you have read the documentation above! (It will run the command 'borg check --repair' for you.)
@@ -400,7 +401,7 @@
{% endif %}
{% if has_backup_run_once == false %}
- You may change the backup path again since the initial backup was not successful. After submitting the new value, you need to click on Create Backup to test the new value.
+ You may change the backup path again since the initial backup was not successful. After submitting the new value, you need to click on Create Backup to test the new value.
@@ -423,16 +424,16 @@
Click here to reveal all backup options (including an option for automatic updates)
{% endif %}
Backup information
- This is your encryption password for backups: {{ borgbackup_password }}
+ This is your encryption password for backups: {{ borgbackup_password }}
Please save this password in a safe place. You won't be able to restore from backup if you lose this password!
All important data from your Nextcloud AIO instance such as the database, your files and the mastercontainer's configuration files, will be backed up.
- The backup uses a tool called BorgBackup, a well-known server backup tool that efficiently backs up your files and encrypts them on the fly.
+ The backup uses a tool called BorgBackup, a well-known server backup tool that efficiently backs up your files and encrypts them on the fly.
By using this tool, backups are incremental, differential, compressed and encrypted – so only the first backup will take a while. Further backups should be fast as only changes are taken into account.
- Backups will be created in the following directory on the host: {{ borg_backup_host_location }}/borg
+ Backups will be created in the following directory on the host: {{ borg_backup_host_location }}/borg
Be aware that this solution does not backup files and folders that are mounted into Nextcloud using the external storage app, but you can add further Docker volumes and host paths that you want to back up after the initial backup is done.
- For information about backup retention, see this.
+ For information about backup retention, see this.
Daily backups can be enabled after the initial backup is done. Enabling this also allows you to enable an option to update all containers, Nextcloud, and its apps automatically.
- For further documentation and options on this backup solution refer to this section and below.
+ For further documentation and options on this backup solution refer to this section and below.
{% if isApacheStarting != true %}
Backup creation
@@ -445,7 +446,7 @@
{% if has_backup_run_once == false %}
Reset backup host location
- If the configured backup host location {{ borg_backup_host_location }} is wrong, you can reset it by clicking on the button below.
+ If the configured backup host location {{ borg_backup_host_location }} is wrong, you can reset it by clicking on the button below.
@@ -478,7 +479,7 @@
Daily backup and automatic updates
{% if daily_backup_time == "" %}
- By entering a time below, you can enable daily backups. It will create them at the entered time in 24h format. E.g. 04:00 will create backups at 4 am UTC and 16:00 at 4 pm UTC. When creating the backup, containers will be stopped and restarted after the backup is complete.
+ By entering a time below, you can enable daily backups. It will create them at the entered time in 24h format. E.g. 04:00 will create backups at 4 am UTC and 16:00 at 4 pm UTC. When creating the backup, containers will be stopped and restarted after the backup is complete.
@@ -488,7 +489,7 @@
{% else %}
- Daily backups will be created at {{ daily_backup_time }} UTC. A notification about the result of the backup will be sent.
+ Daily backups will be created at {{ daily_backup_time }} UTC. A notification about the result of the backup will be sent.
{% if automatic_updates == true %}
Also your containers, the mastercontainer and, on Saturdays, your Nextcloud apps will be automatically updated.
{% endif %}
@@ -509,8 +510,8 @@
- Each line and entry needs to start with a slash or letter/digit. Only a-z, A-Z, ., 0-9, _, -, and / are allowed. If the entry begins with a letter/digit slashes are not supported. Two valid entries are /directory/on/the/host and my_custom_docker_volume. You need to make sure that all given directories exist or the backup container will fail to start!
- Be sure to individually specify all storage that you want to back up as storage will not be mounted recursively. E.g. providing / as additional backup directory will only back up files and folders that are stored on the root partition and not on the EFI partition or any other. Excluded by the backup will be caches and a few other directories. If you want to back up the root partition you should make sure to stop all services before the backup so it can run correctly. For automating this see this documentation
+ Each line and entry needs to start with a slash or letter/digit. Only a-z, A-Z, ., 0-9, _, -, and / are allowed. If the entry begins with a letter/digit slashes are not supported. Two valid entries are /directory/on/the/host and my_custom_docker_volume. You need to make sure that all given directories exist or the backup container will fail to start!
+ Be sure to individually specify all storage that you want to back up as storage will not be mounted recursively. E.g. providing / as additional backup directory will only back up files and folders that are stored on the root partition and not on the EFI partition or any other. Excluded by the backup will be caches and a few other directories. If you want to back up the root partition you should make sure to stop all services before the backup so it can run correctly. For automating this see this documentation
Please note that the chosen directories/volumes will not be restored when you restore your instance, so this would need to be done manually.
{% if additional_backup_directories != "" %}
This option is currently set. You can disable it again by clearing the field and submitting your changes.
@@ -539,18 +540,18 @@
- The new passphrase needs to be at least 24 characters long. Allowed characters are the latin characters a-z, A-Z, 0-9 and spaces.
+ The new passphrase needs to be at least 24 characters long. Allowed characters are the latin characters a-z, A-Z, 0-9 and spaces.
{% endif %}
{% endif %}
{% endif %}
{% if is_backup_container_running == false %}
Optional containers
- In this section you can enable or disable optional containers. There are further community containers available that are not listed below. See this documentation how to add them.
+ In this section you can enable or disable optional containers. There are further community containers available that are not listed below. See this documentation how to add them.
{% if isAnyRunning == true %}
- Please note: You can enable or disable the options below only when your containers are stopped.
+ Please note: You can enable or disable the options below only when your containers are stopped.
{% else %}
- Please note: Make sure to save your changes by clicking Save changes below the list of optional containers. The changes will not be auto-saved.
+ Please note: Make sure to save your changes by clicking Save changes below the list of optional containers. The changes will not be auto-saved.
{% endif %}
@@ -569,7 +570,7 @@
{% if is_fulltextsearch_enabled == true %}
{% else %}
-
+
{% endif %}
{% if is_imaginary_enabled == true %}
@@ -599,7 +600,7 @@
- Minimal system requirements: When any optional container is enabled, at least 2GB RAM, a dual-core CPU and 40GB system storage are required. When enabling ClamAV, Nextcloud Talk Recording-server or Fulltextsearch, at least 3GB RAM are required. For Talk Recording-server additional 2 vCPUs are required. When enabling everything, at least 5GB RAM and a quad-core CPU are required. Recommended are at least 1GB more RAM than the minimal requirement. For further advices and recommendations see this documentation
+ Minimal system requirements: When any optional container is enabled, at least 2GB RAM, a dual-core CPU and 40GB system storage are required. When enabling ClamAV, Nextcloud Talk Recording-server or Fulltextsearch, at least 3GB RAM are required. For Talk Recording-server additional 2 vCPUs are required. When enabling everything, at least 5GB RAM and a quad-core CPU are required. Recommended are at least 1GB more RAM than the minimal requirement. For further advices and recommendations see this documentation
{% if isAnyRunning == true or is_x64_platform == false %}
{% endif %}
@@ -624,9 +625,9 @@
- You need to make sure that the dictionaries that you enter are valid. An example is de_DE en_GB en_US es_ES fr_FR it nl pt_BR pt_PT ru.
+ You need to make sure that the dictionaries that you enter are valid. An example is de_DE en_GB en_US es_ES fr_FR it nl pt_BR pt_PT ru.
{% else %}
- The dictionaries for Collabora are currently set to {{ collabora_dictionaries }}. You can reset them again by clicking on the button below.
+ The dictionaries for Collabora are currently set to {{ collabora_dictionaries }}. You can reset them again by clicking on the button below.
@@ -639,9 +640,9 @@
Timezone change
{% if isAnyRunning == true %}
{% if timezone != "" %}
- The timezone for Nextcloud is currently set to {{ timezone }}.
+ The timezone for Nextcloud is currently set to {{ timezone }}.
{% endif %}
- Please note: You can change the timezone when your containers are stopped.
+ Please note: You can change the timezone when your containers are stopped.
{% else %}
{% if timezone == "" %}
To get the correct time values for certain Nextcloud features, set the timezone for Nextcloud to the one that your users mainly use. Please note that this setting does not apply to the mastercontainer and any backup option.
@@ -652,9 +653,9 @@
- You need to make sure that the timezone that you enter is valid. An example is Europe/Berlin. You can get valid values by looking at the 'TZ identifier' column of this list: click here. The default is Etc/UTC if nothing is entered.
+ You need to make sure that the timezone that you enter is valid. An example is Europe/Berlin. You can get valid values by looking at the 'TZ identifier' column of this list: click here. The default is Etc/UTC if nothing is entered.
{% else %}
- The timezone for Nextcloud is currently set to {{ timezone }}. You can change the timezone by clicking on the button below.
+ The timezone for Nextcloud is currently set to {{ timezone }}. You can change the timezone by clicking on the button below.
@@ -665,6 +666,10 @@
{% endif %}
{% endif %}
{% endif %}
+ {% if is_backup_container_running == false %}
+ How to reset the AIO instance?
+ If something should be going wrong, for example during the initial installation, you can reset the instance by following this documentation. Make sure to create a backup first and note down the path as well as the encryption password if this instance is already productively used so that you can restore your data on a fresh AIO instance.
+ {% endif %}
{% endif %}
{% if isApacheStarting == true or is_backup_container_running == true or isWatchtowerRunning == true or is_daily_backup_running == true %}
diff --git a/php/templates/includes/aio-config.twig b/php/templates/includes/aio-config.twig
index cf4fbb49..e3c34d62 100644
--- a/php/templates/includes/aio-config.twig
+++ b/php/templates/includes/aio-config.twig
@@ -2,7 +2,7 @@
Click here to view the current AIO config and documentation links
{% if was_start_button_clicked == true %}
Nextclouds config.php file is stored in the nextcloud_aio_nextcloud Docker volume and can be edited by following the config.php documentation.
- You can run Nextcloud's usual occ commands by following the occ documentation.
+ You can run Nextcloud's usual occ commands by following the occ documentation.
{% endif %}
{% if nextcloud_datadir starts with '/' %}
@@ -32,5 +32,5 @@
{% endif %}
See the NEXTCLOUD_ENABLE_DRI_DEVICE documentation on how to change this.
- For further documentation on AIO, refer to this page. You can use the browser search [CTRL]+[F] to search through the documentation. Additional documentation can be found here.
+ For further documentation on AIO, refer to this page. You can use the browser search [CTRL]+[F] to search through the documentation. Additional documentation can be found here.
diff --git a/php/templates/includes/backup-dirs.twig b/php/templates/includes/backup-dirs.twig
index 53cf3879..bbc11eb8 100644
--- a/php/templates/includes/backup-dirs.twig
+++ b/php/templates/includes/backup-dirs.twig
@@ -1,6 +1,6 @@
-The folder path that you enter must start with / and must not end with /.
-An example for Linux is /mnt/backup.
-On Synology it could be /volume1/docker/nextcloud/backup.
-For macOS it may be /var/backup.
-On Windows it might be /run/desktop/mnt/host/c/backup. (This path is equivalent to 'C:\backup' on your Windows host so you need to translate the path accordingly. Hint: the path that you enter needs to start with '/run/desktop/mnt/host/'. Append to that the exact location on your windows host, e.g. 'c/backup' which is equivalent to 'C:\backup'.) ⚠️ Please note: This does not work with external drives like USB or network drives and only with internal drives like SATA or NVME drives.
-Another option is to enter a specific volume name here: nextcloud_aio_backupdir. This volume needs to be created beforehand manually by you in order to be able to use it. See this documentation for an example.
+The folder path that you enter must start with / and must not end with /.
+An example for Linux is /mnt/backup.
+On Synology it could be /volume1/docker/nextcloud/backup.
+For macOS it may be /var/backup.
+On Windows it might be /run/desktop/mnt/host/c/backup. (This path is equivalent to 'C:\backup' on your Windows host so you need to translate the path accordingly. Hint: the path that you enter needs to start with '/run/desktop/mnt/host/'. Append to that the exact location on your windows host, e.g. 'c/backup' which is equivalent to 'C:\backup'.) ⚠️ Please note: This does not work with external drives like USB or network drives and only with internal drives like SATA or NVME drives.
+Another option is to enter a specific volume name here: nextcloud_aio_backupdir. This volume needs to be created beforehand manually by you in order to be able to use it. See this documentation for an example.
diff --git a/php/templates/login.twig b/php/templates/login.twig
index a1864ef8..5e68ffba 100644
--- a/php/templates/login.twig
+++ b/php/templates/login.twig
@@ -15,8 +15,8 @@
{% else %}
- The login is blocked since Nextcloud is running.
Please use the automatic login from your Nextcloud.
- If that is not possible, you can unblock the login by running
sudo docker stop nextcloud-aio-apache
+ The login is blocked since Nextcloud is running.Please use the automatic login from your Nextcloud.
+ If that is not possible, you can unblock the login by running
sudo docker stop nextcloud-aio-apache
{% endif %}
diff --git a/php/templates/setup.twig b/php/templates/setup.twig
index 66cb98b1..1069980c 100644
--- a/php/templates/setup.twig
+++ b/php/templates/setup.twig
@@ -6,7 +6,7 @@
All-in-One setup
The official Nextcloud installation method. Nextcloud All-in-One provides easy deployment and maintenance with most features included in this one Nextcloud instance.
- ⚠️ Please note down the passphrase to access the AIO interface and don't lose it!
+ ⚠️ Please note down the passphrase to access the AIO interface and don't lose it!
Passphrase
{{ password }}
Open Nextcloud AIO login ↗
diff --git a/reverse-proxy.md b/reverse-proxy.md
index 8003be5e..d76e0c6c 100644
--- a/reverse-proxy.md
+++ b/reverse-proxy.md
@@ -82,6 +82,7 @@ Add this as a new Apache site config:
# Reverse proxy based on https://httpd.apache.org/docs/current/mod/mod_proxy_wstunnel.html
RewriteEngine On
ProxyPreserveHost On
+ RequestHeader set X-Real-IP %{REMOTE_ADDR}s
AllowEncodedSlashes NoDecode
ProxyPass / http://localhost:11000/ nocanon