目录
一、关闭防火墙:
systemctl stop firewalld.service #停止firewalld服务
systemctl disable firewalld.service #设置开机默认不启动
二、关闭selinux:
getenforce #查看状态
sed -i ‘s/SELINUX=enforcing/SELINUX=disabled/’ /etc/selinux/config
三、安装docker:
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager –add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo(阿里仓库)
yum install docker-ce
systemctl start docker
systemctl enable docker
四、运行Zabbix镜像
(1) 运行mysql
docker run --name mysql-server -t
-e MYSQL_DATABASE="zabbix"
-e MYSQL_USER="zabbix"
-e MYSQL_PASSWORD="zabbix@123"
-e MYSQL_ROOT_PASSWORD="zabbix@123"
-d mysql:5.7
--character-set-server=utf8 --collation-server=utf8_bin
由于MySQL登录认证机制有所改变,需要在数据库中执行以下命令,否则zabbix-server或工具将无法连接数据库,页面无法访问:
# docker exec -it mysql-server mysql -u root -p
mysql> grant all privileges on *.* to root@'%' identified by 'zabbix@123';
mysql> grant all privileges on *.* to zabbix@'%' identified by 'zabbix@123';
mysql> flush privileges; #刷新权限
# 重启容器
查看mysql容器的IP
# docker inspect mysql-server|grep IPAddress
2) 启动Zabbix Java gateway实例,用于监控jvm/tomcat性
# docker run --name zabbix-java-gateway -t -d zabbix/zabbix-java-gateway:latest
3) 启动Zabbix server实例,并关联这个实例到已创建的MySQL服务器实例
docker run --name zabbix-server-mysql -t
-e DB_SERVER_HOST="mysql-server"
-e MYSQL_DATABASE="zabbix"
-e MYSQL_USER="zabbix"
-e MYSQL_PASSWORD="zabbix@123"
-e MYSQL_ROOT_PASSWORD="zabbix@123"
-e ZBX_JAVAGATEWAY="zabbix-java-gateway"
--link mysql-server:mysql
--link zabbix-java-gateway:zabbix-java-gateway
-p 10051:10051
-d zabbix/zabbix-server-mysql:latest
4) 启动Zabbix web 接口,并将它与MySQL服务器实例和Zabbix server实例关联
docker run --name zabbix-web-nginx-mysql -t
-e DB_SERVER_HOST="mysql-server"
-e MYSQL_DATABASE="zabbix"
-e MYSQL_USER="zabbix"
-e MYSQL_PASSWORD="zabbix@123"
-e MYSQL_ROOT_PASSWORD="zabbix@123"
--link mysql-server:mysql
--link zabbix-server-mysql:zabbix-server
-p 8080:8080
-d zabbix/zabbix-web-nginx-mysql:latest
5) 启动docker-zabbbix-agent实例,并关联这个实例到已创建的MySQL服务器实例
docker run --name zabbix-agent
-e ZBX_HOSTNAME="Zabbix server"
-e ZBX_SERVER_HOST="zabbix-server-mysql"
--link zabbix-server-mysql:zabbix-server
-d zabbix/zabbix-agent:latest
查看当前正在运行的容器
# docker ps
查看已经启动的端口
# ss -tnl
重启所有容器
# docker restart $(docker ps -a | awk '{ print $1}' | tail -n 2)
7. 浏览器访问Zabbix
————————————————
中文问题:
cat /usr/share/zabbix/include/defines.inc.php|grep fonts
目录有了变化,在目录/usr/share/zabbix/assets/fonts/放入字体文件simkai.ttf,把名字换为DejaVuSans.ttf
字体文件在windows系统的C:WindowsFonts 下复制出楷体字体即可。
find -name zabbix

允许随意转载;但,请点赞!点赞-NMBHOST:NMB HOST » centos7下部署docker安装zabbix zabbix中文乱码修改(docker版zabbix路径)
解决服务器重启后相关容器不自动启动问题
1.1 登陆nginx容器所在服务器,找到要处理的nginx容器。
docker ps |grep nginx
1.2 记录容器ID
62222794cec4
1.3 设置此容器开机或重启docker后自动启动
docker container update –restart=always 62222794cec4
1
1.4 测试重启docker后,此容器是否会自动重启(请谨慎操作!!!)
systemctl restart docker
1
1.5 验证
docker ps |grep nginx