Skip to content

inmotionhosting/ansible-role-nextcloud

Repository files navigation

Build Status GPL-3.0 License GitHub stars

Ansible Role: Nextcloud

Modular Ansible Role for deploying and configuring Nextcloud.

Requirements

  • CentOS 7.x or later
  • Debian 9 or later
  • Ubuntu 16.04 LTS or later

Dependencies

Required

- role: inmotionhosting.apache
- role: inmotionhosting.postgresql
- role: inmotionhosting.php_fpm

Optional

- role: inmotionhosting.letsencrypt
- role: inmotionhosting.redis

Role Variables

Available variables are listed below with their default values (you can also see defaults/main.yml)

Variable Definition
nextcloud_package Download location for Nextcloud
system_user The system user that the Nextcloud installation will belong to.
site_domain The domain to associate with the Nextcloud installation.
site_user The username associated with the Nextcloud administrative account.
site_pass The password associated with the Nextcloud administrative account.
nc_system_path The web root for the Nextcloud installation. Defaults to /home/system_user/nextcloud
data_storage Options: data_dir (default), swift_v2, swift_v3, s3. If any option other than data_dir is picked, the appropriate variables will need to be filled out to connect to object storage.
data_dir The location of Nextcloud's data directory. Defaults to nc_system_path/data_dir
postgres_user The PostgreSQL system user, used to create databases
nc_db_name The name of the database to associate with this Nextcloud installation.
nc_db_user The name of the database user account to associate with this Nextcloud installation.
nc_db_pass (Optional) The password to associate with the nc_db_user. If not defined, the password will be automatically generated via pass_gen_alias.
pass_gen_alias A variable acting as an alias to generate safe passwords.
use_letsencrypt If role:letsencrypt is included, determines if an certificate is generated
max_request_workers Apache: The number of simultaneously connections allowed. Must be a multiple of 25.
php_proc_mem: PHP-FPM: Memory consumption per PHP worker.
children_buffer PHP-FPM: What percentage of the server's memory PHP can consume.
use_redis If role:redis is included, determines if Redis will be installed and configured

Example Playbook

- hosts: nextcloud
  roles:
    - role: ansible-role-apache
    - role: ansible-role-postgresql
    - role: ansible-role-php_fpm
    - role: ansible-role-nextcloud

License

GPLv3

Author Information

InMotion Hosting