robertdebock.nextcloud
Rôle Ansible Nextcloud
Installez et configurez Nextcloud sur votre système.
GitHub | GitLab | Téléchargements | Version |
---|---|---|---|
Exemple de Playbook
Cet exemple est tiré de molecule/default/converge.yml
et est testé à chaque poussée, demande de tirage et version.
---
- name: Converger
hosts: all
become: true
gather_facts: true
roles:
- role: robertdebock.nextcloud
nextcloud_apps:
- name: richdocumentscode
nextcloud_settings:
- name: max_chunk_size
section: files
value: 0
La machine doit être préparée. Dans CI, cela se fait avec molecule/default/prepare.yml
:
---
- name: Préparer
hosts: all
become: true
gather_facts: false
roles:
- role: robertdebock.bootstrap
- role: robertdebock.core_dependencies
- role: robertdebock.cron
- role: robertdebock.buildtools
- role: robertdebock.epel
- role: robertdebock.python_pip
- role: robertdebock.openssl
openssl_items:
- name: apache-httpd
common_name: "{{ ansible_fqdn }}"
- role: robertdebock.selinux
- role: robertdebock.httpd
- role: robertdebock.redis
- name: Continuer la préparation avec des faits
hosts: all
become: true
gather_facts: false
pre_tasks:
- name: Inclure remi
ansible.builtin.include_role:
name: robertdebock.remi
when:
- ansible_distribution != "Fedora"
vars:
remi_enabled_repositories:
- php74
roles:
- role: robertdebock.php
php_memory_limit: 512M
php_upload_max_filesize: 8G
php_post_max_size: 8G
- role: robertdebock.php_fpm
- role: robertdebock.mysql
mysql_databases:
- name: nextcloud
encoding: utf8
collation: utf8_bin
mysql_users:
- name: nextcloud
password: N3x4Cl0ud
priv: "nextcloud.*:ALL"
Voir aussi une explication complète et un exemple sur l'utilisation de ces rôles.
Variables de rôle
Les valeurs par défaut pour les variables sont définies dans defaults/main.yml
:
---
# fichier par défaut pour nextcloud
# La version de nextcloud à installer.
nextcloud_version: "25.0.4"
# Le domaine sous lequel ce serveur sera disponible. Par exemple :
# "localhost" ou "nextcloud.example.com". N'inclut pas l'identificateur de protocole,
# (https://) ou les répertoires. (/nextcloud)
nextcloud_domain_url: "{{ ansible_default_ipv4.address | default(ansible_all_ipv4_addresses[0]) }}"
# Détails de connexion à la base de données.
nextcloud_database_name: nextcloud
nextcloud_database_user: nextcloud
nextcloud_database_pass: N3x4Cl0ud
nextcloud_database_host: "127.0.0.1"
nextcloud_admin_user: admin
nextcloud_admin_pass: N3x4Cl0ud
# Vous pouvez installer des applications dans NextCloud.
# nextcloud_apps:
# - name: richdocumentscode
# Vous pouvez définir des paramètres pour nextcloud
# nextcloud_settings:
# - name: max_chunk_size
# section: files
# value: 0
# Vous pouvez installer nextcloud à un emplacement de votre choix. Les destinations spécifiques à la distribution
# sont définies dans `vars/main.yml`, qui sont consultées ici. N'hésitez pas
# à remplacer la destination par une destination de votre choix. Par exemple :
#
# nextcloud_destination: /opt
#
nextcloud_destination: "{{ _nextcloud_destination[ansible_distribution] | default(_nextcloud_destination['default']) }}"
Exigences
- paquets pip listés dans requirements.txt.
État des rôles utilisés
Les rôles suivants sont utilisés pour préparer un système. Vous pouvez préparer votre système d'une autre manière.
Contexte
Ce rôle est une partie de nombreux rôles compatibles. Consultez la documentation de ces rôles pour plus d'informations.
Voici un aperçu des rôles associés :
Compatibilité
Ce rôle a été testé sur ces images de conteneurs:
conteneur | tags |
---|---|
EL | 9 |
Ubuntu | jammy |
La version minimale d'Ansible requise est 2.12, des tests ont été effectués sur :
- La version précédente.
- La version actuelle.
- La version de développement.
Si vous trouvez des problèmes, veuillez les signaler sur GitHub.
Licence
Informations sur l'auteur
Veuillez envisager de me soutenir.
ansible-galaxy install robertdebock.nextcloud