thorian93.matomo
Ansible角色:Matomo
此角色在Debian和Ubuntu服务器上进行基本的Matomo设置。
配置需要通过网络界面进行初始设置。
已知问题
没有。
需求
没有特别的要求;请注意,此角色需要root权限,因此可以在playbook中以全局become: yes
运行,或者在playbook中像这样调用角色:
- hosts: foobar
roles:
- role: thorian93.matomo
become: yes
角色变量
下面列出了可用变量及其默认值(请参见defaults/main.yml
):
matomo_version: ''
设置此项以使用显式版本(例如 4.2.1
)。默认情况下安装最新版本。
matomo_external_url: "{{ inventory_hostname }}"
Matomo可用的外部URL。
matomo_use_proxy: false
定义Matomo是否需要通过代理访问互联网。
matomo_create_self_signed_cert: true
matomo_self_signed_cert_subj: "/C=DE/ST=FOO/L=BAR/O=Org/CN={{ matomo_external_url }}"
matomo_self_signed_certificate_key: "/etc/{{ apache2_http_name }}/ssl/matomo.key"
matomo_self_signed_certificate: "/etc/{{ apache2_http_name }}/ssl/matomo.crt"
根据您的需要配置自签名证书。
matomo_custom_cert: false
matomo_custom_cert_file: /etc/{{ apache2_http_name }}/ssl/custom.crt
matomo_custom_cert_key: /etc/{{ apache2_http_name }}/ssl/custom.key
如果您希望使用自己的证书,可以在此处定义。
matomo_certificate_key: "{{ certbot_cert_path }}/privkey.pem"
matomo_certificate: "{{ certbot_cert_path }}/cert.pem"
matomo_certificate_chain: "{{ certbot_cert_path }}/fullchain.pem"
如果matomo_create_self_signed_cert
和matomo_custom_cert
均设置为false,则将使用thorian93.certbot来获取证书。
matomo_db_system: "mysql"
matomo_db_name: "matomo"
matomo_db_user: "matomo"
matomo_db_pw: "matomo"
配置数据库设置。目前仅支持MySQL/MariaDB。确保更改默认用户名和密码。
matomo_redirect_http_to_https: true
配置Matomo是否应默认将所有传入请求重定向到HTTPS。
matomo_backup: false
matomo_backup_dir: "/tmp/matomo"
为Matomo配置备份。
matomo_log_dir: "/tmp/matomo/logs"
用于自定义日志的目录,例如用于备份。
matomo_web_dir: "/var/www/matomo"
定义Matomo的web根目录。
matomo_scripts_dir: "{{ matomo_web_dir }}/scripts"
放置自定义脚本的目录,例如用于备份。
matomo_php_options:
- line: "php_value open_basedir {{ matomo_web_dir }}:/usr/share/php:/usr/share/pear"
regexp: "^php_value open_basedir"
定义Matomo的PHP选项。这里给出的默认值对于Matomo正常工作是必要的。
matomo_mysql_options:
- line: "max_allowed_packet = 64M"
regexp: "^max_allowed_packet.*"
定义Matomo的MySQL选项。这里给出的默认值对于Matomo正常工作是必要的。
依赖
- thorian93.ansible-role-apache2
- thorian93.ansible-role-php
- thorian93.ansible-role-certbot - 当没有使用自定义或自签名证书时
- geerlingguy.mysql
操作系统兼容性
此角色确保不在不支持或未经测试的操作系统上使用,方法是检查正确的发行版名称和主版本号是否存在于名为<role-name>_stable_os
的专用变量中。您可以在角色的默认变量文件defaults/main.yml
中找到该变量:
role_stable_os:
- Debian 10
- Ubuntu 18
- CentOS 7
- Fedora 30
如果发行版和主版本号的组合与目标系统不匹配,则角色将失败。要允许角色工作,请将发行版名称和主版本名称添加到该变量中,您就可以开始使用了。但请先测试新的组合!
感谢HarryHarcourt提供这个想法!
示例Playbook
---
- name: "运行角色."
hosts: all
become: yes
roles:
- ansible-role-matomo
贡献
如果您发现任何错误、问题或有改进的建议,请随时提出问题。如果您想询问或讨论某些内容,也可以随时与我联系。
免责声明
此角色按原样提供,我无法保证角色按预期工作,也不对由于此角色造成的任何损害或错误配置负责。在使用之前请仔细研究角色。
许可证
MIT
作者信息
该角色由Thorian93于2020年创建。
ansible-galaxy install thorian93.matomo