Nextcloud AIO Beta
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 updpate currently running. It will restart the mastercontainer soon which will make it unavailable for a moment. Please wait until thats done.
Reload ↻
{% else %} {% if isBackupOrRestoreRunning == false and domain == "" %} 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-adress, you can use e.g. DDclient with a compatible domain provider for DNS updates. {% 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
-
{# @var containers \AIO\Container\Container[] #}
{% for container in containers %}
{% if container.GetIdentifier() != 'nextcloud-aio-borgbackup' and container.GetIdentifier() != 'nextcloud-aio-watchtower' and container.GetIdentifier() != 'nextcloud-aio-domaincheck' %}
- {% if class(container.GetStartingState()) == 'AIO\\Container\\State\\StartingState' %} {{container.GetDisplayName()}} (Starting) {% elseif class(container.GetRunningState()) == 'AIO\\Container\\State\\RunningState' %} {{container.GetDisplayName()}} (Running) {% else %} {{container.GetDisplayName()}} (Stopped) {% endif %} {% endif %} {% endfor %}
{% else %} You are up-to-date.
{% endif %} {% endif %} {% if isAnyRunning == true %} {% if isApacheStarting != true %} {% 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 was_start_button_clicked == false or has_update_available == false %} {% else %} {% endif %} {% endif %} {% endif %} {% if is_mastercontainer_update_available == true %} {% if isBackupOrRestoreRunning == false %}
Mastercontainer update
A new mastercontainer is available. Please click on the button below to update it.{% 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/ so e.g. /mnt/backup {% endif %} {% if borg_backup_host_location != "" %}
Backup and restore
{% if has_backup_run_once == true and 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 }} succesful on {{ last_backup_time }}! (Logs)
{% else %} Last {{ borg_backup_mode }} succesful! (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.
Click on the button below to restore the last backup from {{ last_backup_time }}. This will overwrite all your files with the state of the backup. It 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 %}