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

Nextcloud AIO Beta v0.5.0

This is beta software and not production ready.

{% set isAnyRunning = false %} {% set isWatchtowerRunning = false %} {% set isBackupContainerRunning = false %} {% set isRestoreRunning = false %} {% set isBackupOrRestoreRunning = false %} {% set isApacheStarting = false %} {% for container in containers %} {% if class(container.GetRunningState()) == 'AIO\\Container\\State\\RunningState' and container.GetIdentifier() != 'nextcloud-aio-domaincheck' and container.GetIdentifier() != 'nextcloud-aio-borgbackup' and container.GetIdentifier() != 'nextcloud-aio-watchtower' %} {% set isAnyRunning = 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 %} Initial Nextcloud username: admin
Initial Nextcloud password: {{ nextcloud_password }}

Open your Nextcloud ↗
{% else %} Containers are currently starting.

Reload ↻
{% 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. 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 is_mastercontainer_update_available == true %} {% if isBackupOrRestoreRunning == false %}

Mastercontainer update

{% 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 %} {% 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/ or /media/ or be equal to /var/backups. So e.g. /mnt/backup or /var/backups {% 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 %} 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

{% if isApacheStarting != true %}
{% if has_backup_run_once == true %} 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.


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 %} {% endif %} {% endif %} {% endif %} {% if isApacheStarting == true or isBackupContainerRunning == true or isWatchtowerRunning == true %} {% endif %}
{% endblock %}