Zabbix 搭建文档
概述
计划使用 docker 搭建 Zabbix 监控系统。
安装 Docker
部署 Mariadb-Server
一、建立数据库本地目录
|
|
二、运行 Mariadb-Server Docker
|
|
这里会产生一个问题,由于默认的 mariadb 是使用
latin1
字符集来创建数据库,这时候我们在 Zabbix 录入中文字符的时候会导致出错,故此需要进入 mariadb-docker 内删除新建好的zabbix
数据库,再使用utf8
新建数据库。
|
|
此时,数据库已经以 utf8 新建好了。
|
|
2017年07月15日更新
怪自己看文档不仔细,今天扒 zabbix 的部署文档发现,我应该运行 mariadb 容器的时候就要定义数据库字符编码。
Zabbix Documentation 3.2-5 Installation from containers
注意,这里我是使用 mariadb,和 zabbix 官方文档使用是 mysql 的 docker,参数会有所不同。
|
|
部署 Zabbix-Server-MySQL Docker
|
|
部署 Zabbix-WEB-nginx-MySQL Docerk
由于 Zabbix 图形字体中文显示会产生乱码,故此需要将中文字体放入 Zabbix 的 WEB 目录中,并修改一个 php 文件才可以修正中文乱码问题。
一、下载官方 zabbix-web-nginx-mysql 镜像
docker pull zabbix-web-nginx-mysql
二、上传中文字体 simhei.ttf(本例使用黑体字体)
|
|
三、编写 Dockerfile 文件
|
|
四、构建镜像
|
|
五、运行镜像
|
|
遇到的坑
数据库编码格式导致中文输入字符无法保存
由于之前使用的 docker 创建的 zabbix 数据库默认是以latin1
字符编码创建的,故此在问题输入『消息』的时候会报字符编码错误。
那么数据库里面已经有原始数据存在,所以我需要将数据导出,再将数据转换成utf8
编码。
|
|