一、部署环境
配置名称 | 配置详情 |
---|---|
系统 | CentOS Linux release 7.7.1908 (Core) |
软件名称 | docker |
软件版本 | 20.10.10 |
用户角色 | root |
二、下载
Zabbix官网镜像安装教程地址:https://www.zabbix.com/documentation/5.0/zh/manual/installation/containers
选择对应版本的容器:https://hub.docker.com/r/zabbix
在这里我们选用的版本是:
zabbix/zabbix-web-nginx-pgsql:基于Nginx web服务器及支持PostgreSQL数据库的Zabbix web接口
1)在线下载
docker pull zabbix/zabbix-server-pgsql:alpine-5.0-latest #zabbix-server
docker pull zabbix/zabbix-web-nginx-pgsql:alpine-5.0-latest #zabbix-web
docker pull postgres:13.6 #pgsql下载,有数据库可忽略
2)离线处理
离线环境下面一般是先把镜像下载,然后打包导出至离线环境,导出命令:
docker save -o zabbix-server-pgsql-5.0.tar zabbix/zabbix-server-pgsql:alpine-5.0-latest
docker save -o zabbix-web-nginx-pgsql-5.0.tar zabbix/zabbix-web-nginx-pgsql:alpine-5.0-latest
docker save -o postgres-13.6.tar postgres:13.6 #数据库导出,有数据库可忽略
三、安装
1)导入
docker load -i zabbix-server-pgsql-5.0.tar
docker load -i zabbix-web-nginx-pgsql-5.0.tar
docker load -i postgres-13.6.tar
2)安装
1.创建专用于Zabbix组件容器的网络
docker network create --subnet 172.20.0.0/16 --ip-range 172.20.240.0/20 zabbix-net
2.运行pgsql(有数据库环境可忽略)
- 运行
docker run --name postgres-server \
-e POSTGRES_PASSWORD=postgres \
-p 54321:5432 \
--network=zabbix-net \
-d postgres:13.6
- 进入pgsql
docker run -it --rm --network zabbix-net postgres:13.6 psql -h postgres-server -U postgres
- 创建用户跟db
CREATE USER zabbix WITH PASSWORD 'zabbix'; #创建用户
CREATE DATABASE zabbix OWNER zabbix; #创建库
GRANT ALL PRIVILEGES ON DATABASE zabbix TO zabbix; #赋权
\q #退出
3.运行zabbix-server
docker run --name zabbix-server-pgsql \
-e DB_SERVER_HOST="postgres-server" \
-e POSTGRES_USER="zabbix" \
-e POSTGRES_PASSWORD="zabbix" \
-p 10051:10051 \
--network=zabbix-net \
-d zabbix/zabbix-server-pgsql:alpine-5.0-latest
4.运行zabbix-web
docker run --name zabbix-web-nginx-pgsql \
-e DB_SERVER_HOST="postgres-server" \
-e POSTGRES_USER="zabbix" \
-e POSTGRES_PASSWORD="zabbix" \
-e ZBX_SERVER_HOST="zabbix-server-pgsql" \
-e PHP_TZ="Asia/Shanghai" \
-p 8080:8080 \
--network=zabbix-net \
-d zabbix/zabbix-web-nginx-pgsql:alpine-5.0-latest
5.登录
访问zabbix-web网页界面:http://192.168.0.68:8080
默认账号:Admin
默认密码:zabbix
四、问题
1)管理界面中文乱码解决方法
1.先把你想要的字体复制到容器(zabbix-web容器,非zabbix-server容器)里。
注:字体可以再windows下目录找(C:\Windows\Fonts),这里我选的是楷体 常规。
docker cp simkai.ttf zabbix-web-nginx-pgsql:/usr/share/zabbix/assets/fonts/DejaVuSans.ttf
刷新网页,即可解决乱码问题