all-in-one/tests/QA/060-environmental-variables.md
Simon L. cd3a33a800
Merge pull request #5484 from apparle/apache_additional_network
Specifying additional docker network for Apache container
2024-11-07 09:37:56 +01:00

6.2 KiB

Environmental variables

  • When starting the mastercontainer with --env APACHE_PORT=11000 on a clean instance, the domaincheck container should be started with that same port published. That makes sure that also the Apache container will use that port later on. Using a value here that is not a port will not allow the mastercontainer to start correctly. However @INTERNAL is also an allowed value which skips publishing the port on the host for internal usage inside a bridged network for example.
  • When starting the mastercontainer with --env APACHE_IP_BINDING=127.0.0.1 on a clean instance, the domaincheck container's apache port should only listen on localhost on the host. Using a value here that is not a number or dot will not allow the mastercontainer to start correctly.
  • When starting the mastercontainer with --env APACHE_ADDITIONAL_NETWORK=frontend_net on a clean instance, the domaincheck and subsequently the apache containers should be connected to the specified frontend_net docker network, in addition to the default nextcloud-aio network. Specifying the network that doesn't already exist will not allow the mastercontainer to start correctly.
  • When starting the mastercontainer with --env TALK_PORT=3479 on a clean instance, the talk container should use this port later on. Using a value here that is not a port will not allow the mastercontainer to start correctly. Also it should stop if apache_port and talk_port are set to the same value.
  • Make also sure that reverse proxies work by following https://github.com/nextcloud/all-in-one/blob/main/reverse-proxy.md#reverse-proxy-documentation and following 001-initial-setup.md and 002-new-instance.md
  • When starting the mastercontainer with --env SKIP_DOMAIN_VALIDATION=true on a clean instance, it should skip the domain verification. So it should accept any domain that you type in then.
  • When starting the mastercontainer with --env NEXTCLOUD_DATADIR="/mnt/testdata" it should map that location from /mnt/testdata to /mnt/ncdata inside the Nextcloud container. Not having adjusted the permissions correctly before starting the Nextcloud container the first time will not allow the Nextcloud container to start correctly. See https://github.com/nextcloud/all-in-one#how-to-change-the-default-location-of-nextclouds-datadir for allowed values.
  • When starting the mastercontainer with --env NEXTCLOUD_MOUNT="/mnt/" it should map /mnt/ to /mnt/ inside the Nextcloud container. See https://github.com/nextcloud/all-in-one#how-to-allow-the-nextcloud-container-to-access-directories-on-the-host for allowed values.
  • When starting the mastercontainer with --env NEXTCLOUD_UPLOAD_LIMIT=11G it should change Nextclouds upload limit to 11G. See https://github.com/nextcloud/all-in-one#how-to-adjust-the-upload-limit-for-nextcloud for allowed values.
  • When starting the mastercontainer with --env NEXTCLOUD_MEMORY_LIMIT=1024M it should change Nextclouds PHP memory limit to 1024M. See https://github.com/nextcloud/all-in-one#how-to-adjust-the-php-memory-limit-for-nextcloud for allowed values.
  • When starting the mastercontainer with --env NEXTCLOUD_MAX_TIME=4000 it should change Nextclouds upload max time 4000s. See https://github.com/nextcloud/all-in-one#how-to-adjust-the-max-execution-time-for-nextcloud for allowed values.
  • When starting the mastercontainer with --env BORG_RETENTION_POLICY="--keep-within=1d --keep-weekly=1 --keep-monthly=1" it should change borgs retention policy to the defined one. This can be checked when creating a backup and looking at the logs.
  • When starting the mastercontainer with --env WATCHTOWER_DOCKER_SOCKET_PATH="$XDG_RUNTIME_DIR/docker.sock" it should map $XDG_RUNTIME_DIR/docker.sock to /var/run/docker.sock inside the watchtower container which allow to update the mastercontainer on docker rootless.
  • When starting the mastercontainer with --env AIO_DISABLE_BACKUP_SECTION=true it should hide the backup section that gets shown after AIO is set up (everything of 020-backup-and-restore) and simply show that the backup section is disabled.
  • When starting the mastercontainer with --env NEXTCLOUD_TRUSTED_CACERTS_DIR=/path/to/my/cacerts, the resulting nextcloud container should trust all the Certification Authorities, whose certificates are included in the directory /path/to/my/cacerts on the host. See https://github.com/nextcloud/all-in-one#how-to-trust-user-defined-certification-authorities-ca
  • When starting the mastercontainer with --env COLLABORA_SECCOMP_DISABLED=true, the resulting collabora container should have --o:security.seccomp=false applied to it.
  • When starting the mastercontainer with --env NEXTCLOUD_STARTUP_APPS=deck, the resulting Nextcloud should have only installed the deck app and not the other apps that get installed by default. Default are deck twofactor_totp tasks calendar contacts notes.
  • When starting the mastercontainer with --env NEXTCLOUD_ADDITIONAL_APKS=zip, the resulting Nextcloud container should have the zip package installed and not imagemagick.
  • When starting the mastercontainer with --env NEXTCLOUD_ADDITIONAL_PHP_EXTENSIONS=inotify, the resulting Nextcloud container should have the inotify extension installed and not the imagick extension.
  • When starting the mastercontainer with --env NEXTCLOUD_ENABLE_DRI_DEVICE=true, the resulting Nextcloud container should have the /dev/dri device mounted into the container. (Only works if a /dev/dri device is present on the host)
  • When starting the mastercontainer with --env NEXTCLOUD_KEEP_DISABLED_APPS=true it should keep apps in Nextcloud that are disabled in the AIO interface. For example if Collabora is disabled in the AIO interface and you install the richdocuments app in Nextcloud, a restart should not uninstall the richdocuments app in Nextcloud anymore.
  • When starting the mastercontainer with --env AIO_COMMUNITY_CONTAINERS="fail2ban", it should add the fail2ban container to the container stack and show it in the AIO interface as well as start it, etc.

You can now continue with 070-timezone-change.md