aalaesar.install_nextcloud
Nextcloud 管理的 Ansible 集合
这个仓库托管了 nextcloud.admin
Ansible 集合(前称角色 aalaesar.install_nextcloud
)。
该集合包含各种 Ansible 内容,以帮助自动化 Nextcloud 的管理以及实例的配置和维护。
Ansible 版本兼容性
此集合已在以下 Ansible 版本上进行测试:**>=2.14.0**。
集合中的插件和模块可能仅与特定 Ansible 版本兼容。
Python 支持
- 在 3.11+ 上测试成功
支持的 Nextcloud 版本
该集合支持的 Nextcloud 版本为:25
、26
、27(最新)
包含的内容
模块
名称 | 描述 |
---|---|
nextcloud.admin.run_occ | 使用给定参数运行 occ 命令行工具 |
角色
名称 | 描述 |
---|---|
nextcloud.admin.backup (beta) | 创建 Nextcloud 服务器的备份 - 前称 aalaesar.backup_nextcloud |
nextcloud.admin.install_nextcloud | 为 Debian/Ubuntu 服务器安装和配置一个 Nextcloud 实例 - 前称 aalaesar.install_nextcloud |
安装和使用
依赖项
netaddr Python 库
该集合中的内容需要 网络地址操作库 来操作网络地址。您可以通过以下命令安装:
pip3 install netaddr
需要的独立角色
默认情况下,某些角色依赖于其他命名空间的独立角色(可以禁用此功能)。
由于一些限制,ansible-galaxy 不会自动安装它们,需要在之后安装。
安装集合后,运行命令 ansible-galaxy role install -r <该集合文件夹>/requirements.yml
。
另外,您也可以在安装集合之前,将 此文件 的内容添加到您自己的 requirements.yml
文件中。
从 Ansible Galaxy 安装该集合
使用 Nextcloud 集合之前,您需要通过 Ansible Galaxy CLI 安装它:
ansible-galaxy collection install nextcloud.admin
您还可以将其包含在 requirements.yml
文件中,并通过 ansible-galaxy collection install -r requirements.yml
安装,格式如下:
---
collections:
- name: nextcloud.admin
version: 2.0.0
在剧本中使用 Nextcloud 集合的模块
建议在使用本集合的内容时,使用它们的完全限定集合命名空间(FQCN),例如 nextcloud.admin.run_occ
:
---
- hosts: nextcloud_host
gather_facts: false
become: true
tasks:
- name: 列出已安装的应用
nextcloud.admin.run_occ:
nextcloud_path: /var/www/nextcloud
command: app:list
如果您从 <2.0.0 版本升级旧剧本,可以通过在剧本中定义 collections
来减少更改,引用此集合的角色为 install_nextcloud
,而不是 nextcloud.admin.install_nextcloud
,如以下示例所示:
---
- hosts: localhost
gather_facts: false
connection: local
collections:
- nextcloud.admin
tasks:
- name: 部署 Nextcloud 及其依赖项
include_role:
name: install_nextcloud
# 以前:
# name: aalaesar.install_nextcloud
有关如何使用的文档:
- 单个模块: 请在安装此集合后使用
ansible-doc
命令。 - 包含的角色: 按照 Ansible 的标准,Ansible 角色在各自的 README 文件中有文档。
测试和开发
如果您想为此集合开发新内容或改进现有内容,最简单的方式是将其克隆到配置的 COLLECTIONS_PATHS
之一,并在其中进行工作。
使用 molecule
进行测试
tests
目录包含在各种场景下运行集成测试的剧本。
molecule
目录中也包含集成测试。
发布新版本
新标签会自动构建并推送到 Ansible Galaxy。
许可证
BSD
请参阅 LICENCE 以查看完整文本。
Install Nextcloud server like you want ! Apache2 or Nginx ? MariaDB or PostgresQL ? You choose, you watch, it works !
ansible-galaxy install aalaesar.install_nextcloud