{% extends "layout.twig" %} {% block body %}

Nextcloud AIO Beta v0.8.0

This is beta software and not production ready.

{% set isAnyRunning = false %} {% set isAnyRestarting = false %} {% set isWatchtowerRunning = false %} {% set isBackupContainerRunning = false %} {% set isRestoreRunning = false %} {% set isBackupOrRestoreRunning = false %} {% set isApacheStarting = false %} {% for container in containers %} {% if container.GetIdentifier() not in ['nextcloud-aio-domaincheck', 'nextcloud-aio-borgbackup', 'nextcloud-aio-watchtower'] and class(container.GetRunningState()) == 'AIO\\Container\\State\\RunningState' %} {% set isAnyRunning = true %} {% endif %} {% if container.GetIdentifier() not in ['nextcloud-aio-domaincheck', 'nextcloud-aio-borgbackup', 'nextcloud-aio-watchtower'] and class(container.GetRestartingState()) == 'AIO\\Container\\State\\RestartingState' %} {% set isAnyRestarting = true %} {% endif %} {% if container.GetIdentifier() == 'nextcloud-aio-watchtower' and class(container.GetRunningState()) == 'AIO\\Container\\State\\RunningState' %} {% set isWatchtowerRunning = true %} {% endif %} {% if container.GetIdentifier() == 'nextcloud-aio-apache' and class(container.GetStartingState()) == 'AIO\\Container\\State\\StartingState' %} {% set isApacheStarting = true %} {% endif %} {% if container.GetIdentifier() == 'nextcloud-aio-borgbackup' and class(container.GetRunningState()) == 'AIO\\Container\\State\\RunningState' %} {% set isBackupContainerRunning = true %} {% if borg_backup_mode == 'restore' %} {% set isRestoreRunning = true %} {% endif %} {% if borg_backup_mode == 'backup' or borg_backup_mode == 'restore' %} {% set isBackupOrRestoreRunning = true %} {% endif %} {% endif %} {% endfor %} {% if isWatchtowerRunning == true %} Mastercontainer update currently running. It will restart the mastercontainer soon which will make it unavailable for a moment. Please wait until that's done.

Reload ↻
{% else %} {% if isBackupOrRestoreRunning == false and domain == "" %} {% if 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.

{% else %} Please type in the domain that will be used for Nextcloud:

Make sure that this server is reachable on Port 443 and you've correctly set up the DNS config for the domain that you enter.

If you have a dynamic IP-address, you can use e.g. DDclient with a compatible domain provider for DNS updates. {% endif %} {% endif %} {% if domain != "" %} {% if isAnyRunning == true %} {% if isApacheStarting != true %}
Click here to reveal the initial Nextcloud credentials

Initial Nextcloud username: admin
Initial Nextcloud password: {{ nextcloud_password }}

Open your Nextcloud ↗
{% else %} {% if isAnyRestarting == false %} Containers are currently starting.

Reload ↻

{% else %} It seems like at least one container is currently restarting which means it is not able to start correctly.

To break out this endless loop, you can stop the containers below and investigate the issue by having a look at the container logs before starting them again.

{% endif %} {% endif %} {% endif %} {% if was_start_button_clicked == true %}

Containers

{% if has_update_available == true %} {% if is_mastercontainer_update_available == false %} ⚠ Container updates are available. Click on 'Stop Containers' and 'Start Containers' to update them. You should consider creating a backup first.

{% endif %} {% else %} {% if is_mastercontainer_update_available == false %} Your containers are up-to-date.

{% endif %} {% endif %} {% endif %} {% if isAnyRunning == true %} {% if isApacheStarting != true %} {% if is_mastercontainer_update_available == true %} ⚠ A mastercontainer update is available. Please click on the button below to stop your containers in order to be able to update the mastercontainer.

{% endif %}
{% endif %} {% else %} {% if isRestoreRunning == true %} Restore currently running. Cannot start the containers until that's done.

{% elseif has_update_available == true and isBackupOrRestoreRunning == true %} Restore or Backup currently running and container update available. Cannot start the containers until that's done.

{% 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!

{% endif %} {% if is_mastercontainer_update_available == true %} ⚠ Please update your mastercontainer. (The update button is in the Mastercontainer section below the Backup section. Click here to go there.) Afterwards, you will be able to start your containers again.

{% else %} {% if was_start_button_clicked == false or has_update_available == false %}
{% else %}
{% endif %} {% endif %} {% endif %} {% endif %} {% if was_start_button_clicked == true %} {% if isBackupOrRestoreRunning == false and borg_backup_host_location == "" and isApacheStarting != true %}

Backup and restore

Please type in the directory where backups will get created on the host system:

The folder path that you enter must start with /mnt/, /media/ or /host_mnt/ or be equal to /var/backups.
So e.g. /mnt/backup on Linux and macOS or /host_mnt/c/backup/directory on Windows. (This Windows example would be equivalent to 'C:\backup\directory' on the Windows host. So you need to translate the path that you want to use into the correct format.) {% endif %} {% if borg_backup_host_location != "" %}

Backup and restore

{% if isBackupContainerRunning == false %} {% if backup_exit_code > 0 %} Last {{ borg_backup_mode }} failed! (
Logs)

{% elseif backup_exit_code == 0 %} {% if borg_backup_mode == "backup" %} Last {{ borg_backup_mode }} successful on {{ last_backup_time }}! (Logs)

{% else %} Last {{ borg_backup_mode }} successful! (Logs)

{% endif %} {% endif %} {% endif %} {% if isBackupContainerRunning == false %}

Backup information

{% if has_backup_run_once == true %}
Click here to reveal the backup information

{% endif %} This is your encryption password for backups: {{ borgbackup_password }}

Please save it at a safe place since you won't be able to restore from backup if you loose this password!

Backed up will get all important data of your Nextcloud AIO instance like the database, your files and configuration files of the mastercontainer and else.

The backup itself will use a tool that is called BorgBackup which is a well-known server backup tool that efficiently backs up your files and encrypts them on the fly.

Backups get created in the following directory on the host: {{ borg_backup_host_location }}/borg

Be aware that this solution does not back up files and folders that are mounted into Nextcloud using the external storage app.

{% if has_backup_run_once == true %}
{% endif %} {% if isApacheStarting != true %}

Backup creation

Clicking on the button below will create a backup.

{% if has_backup_run_once == true %}

Backup check

Click on the button below to perform a backup integrity check. This is an option that verifies that your backup is intact but it should't be needed in most situtations.


Backup restore

Choose the backup that you want to restore and click on the button below to restore the selected backup. This will overwrite all your files with the state of the backup so you should consider creating a backup first. It also makes sense to run an integrity check before restoring your files but is not mandatory since it shouldn't be needed in most situations.

{% endif %} {% endif %} {% else %} Backup container currently running. (
Logs)

Reload ↻
{% endif %} {% endif %} {% if isBackupContainerRunning == false %}

Mastercontainer

You are currently running the {{ current_channel }} channel. (Logs)

{% if is_mastercontainer_update_available == true %} {% if isAnyRunning == false %} ⚠ A mastercontainer update is available. Please click on the button below to update it.

{% else %} ⚠ A mastercontainer update is available. Please stop your containers in order to be able to update the mastercontainer.

{% endif %} {% if current_channel starts with 'latest' %} You can find the changelog here

{% elseif current_channel starts with 'beta' %} You can find the changelog here

{% elseif current_channel starts with 'develop' %} You can find all changes here

{% endif %} {% endif %} {% if isApacheStarting == false %}

AIO password change

Click here to change your AIO password

You can change your AIO password below:

The new password 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 isBackupContainerRunning == false %}

Optional

In this section, you can find optional addons.

You can change the state of them when your containers are stopped.

{% if is_clamav_enabled == true %} {% else %} {% endif %} {% if is_collabora_enabled == true %} {% else %} {% endif %} {% if is_onlyoffice_enabled == true %} {% else %} {% endif %} {% if is_talk_enabled == true %} {% else %} {% endif %}
{% if isAnyRunning == true or is_x64_platform == false %} {% endif %} {% if isAnyRunning == true %} {% endif %} {% endif %} {% endif %} {% endif %} {% if isApacheStarting == true or isBackupContainerRunning == true or isWatchtowerRunning == true %} {% endif %}
{% endblock %}