This playbook tries to get you up and running with minimal effort - installing all required services (Nextcloud, Postgres, Traefik, etc).
Sometimes, you're using a server to host multiple services. In such cases these are undesirable:
-
this playbook overtaking your whole server (more specifically ports
tcp/80
andtcp/443
) with its own Traefik instance -
multiple playbooks trying to install Docker, etc.
Below, we offer some suggestions for how to make this playbook more interoperable. Feel free to cherry-pick the parts that make sense for your set up.
If you're installing Traefik on your server in another way:
# Tell the playbook you're using Traefik installed in another way.
# It won't bother installing Traefik.
nextcloud_playbook_reverse_proxy_type: other-traefik-container
# Tell the playbook to attach services which require reverse-proxying to an additional network by default (e.g. traefik)
# This needs to match your Traefik network.
nextcloud_playbook_reverse_proxyable_services_additional_network: traefik
All services will have container labels attached, so that a Traefik instance can reverse-proxy to them. See roles/custom/nextcloud_reverse_proxy_companion/templates/labels.j2
for an example.
Also, refer to the configuring the reverse-proxy documentation page for more information.
If you're installing Docker on your server in another way, disable this component from the playbook:
nextcloud_playbook_docker_installation_enabled: false
If you're installing PostgreSQL on your server in another way or wish to use an external Postgres server or another type of database, disable this component from the playbook:
nextcloud_playbook_postgres_installation_enabled: false
Also, refer to the configuring the database documentation page for more information on using another database.
If you're installing systemd-timesyncd
or ntp
on your server in another way, disable this component from the playbook:
devture_timesync_installation_enabled: false