nextcloud
Ansible роль nextcloud
Установите и настройте Nextcloud на вашей системе.
GitHub | GitLab | Скачивания | Версия |
---|---|---|---|
Пример Playbook
Этот пример взят из molecule/default/converge.yml
и тестируется при каждом пуше, запросе на изменение и релизе.
---
- name: Converge
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
Машина должна быть подготовлена. В CI это делается с помощью molecule/default/prepare.yml
:
---
- name: Prepare
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: Continue prepare with facts
hosts: all
become: true
gather_facts: false
pre_tasks:
- name: Include 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"
Также смотрите полное объяснение и пример о том, как использовать эти роли.
Переменные роли
По умолчанию значения переменных устанавливаются в defaults/main.yml
:
---
# файл по умолчанию для nextcloud
# Версия nextcloud для установки.
nextcloud_version: "25.0.4"
# Домен, под которым этот сервер будет доступен. Например:
# "localhost" или "nextcloud.example.com". Не включает протокол,
# (https://) или директории. (/nextcloud)
nextcloud_domain_url: "{{ ansible_default_ipv4.address | default(ansible_all_ipv4_addresses[0]) }}"
# Подробности для подключения к базе данных.
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
# Вы можете установить приложения в NextCloud.
# nextcloud_apps:
# - name: richdocumentscode
# Вы можете установить параметры для nextcloud
# nextcloud_settings:
# - name: max_chunk_size
# section: files
# value: 0
# Вы можете установить nextcloud в любое желаемое место. Специфические
# для дистрибутивов назначения указаны в `vars/main.yml`, которые ищутся здесь. Не стесняйтесь
# переопределять место назначения на то, которое вам подходит. Например:
#
# nextcloud_destination: /opt
#
nextcloud_destination: "{{ _nextcloud_destination[ansible_distribution] | default(_nextcloud_destination['default']) }}"
Требования
- Пакеты pip, перечисленные в requirements.txt.
Состояние используемых ролей
Следующие роли используются для подготовки системы. Вы можете подготовить свою систему другим способом.
Контекст
Эта роль является частью многих совместимых ролей. Посмотрите на документацию этих ролей для дальнейшей информации.
Вот обзор связанных ролей:
Совместимость
Эта роль была протестирована на этих образах контейнера:
контейнер | теги |
---|---|
EL | 9 |
Ubuntu | jammy |
Минимальная версия Ansible, необходимая для работы, – 2.12, тесты проводились на:
- Предыдущей версии.
- Текущей версии.
- Разработческой версии.
Если вы обнаружите ошибки, пожалуйста, сообщите об этом в GitHub.
Лицензия
Информация об авторе
Пожалуйста, подумайте о спонсировании меня.
ansible-galaxy install robertdebock/ansible-role-nextcloud