我们先来看一下我们要修改得  zabbix.yaml           github   https://github.com/bboysoulcn/awesome-dockercompose

version: "3"
services:
zabbix-server:
image: "zabbix/zabbix-server-mysql:centos-4.0.4"
container_name: "zabbix-server"
restart: "always"
environment:
- "DB_SERVER_HOST=zabbix-db"
- "MYSQL_USER=root"
- "MYSQL_PASSWORD="
#- "DB_SERVER_PORT="
#- "MYSQL_DATABASE="
volumes:
- "zabbix-server-data:/var/lib/zabbix/"
- "zabbix-server-scripts:/usr/lib/zabbix/"
depends_on:
- "zabbix-db"
ports:
- "10051:10051"
extra_hosts:
- "mysql.bboysoul.com:10.10.10.200" zabbix-web:
image: "zabbix/zabbix-web-nginx-mysql:centos-4.0.4"
container_name: "zabbix-web"
restart: "always"
environment:
- "DB_SERVER_HOST=zabbix-db"
- "MYSQL_USER=root"
- "MYSQL_PASSWORD="
- "ZBX_SERVER_HOST=zabbix-server"
- "PHP_TZ=Asia/Shanghai "
#- "ZBX_SERVER_PORT="
#- "DB_SERVER_PORT="
#- "MYSQL_DATABASE="
#- "ZBX_SERVER_NAME="
depends_on:
- "zabbix-server"
- "zabbix-db"
ports:
- "8082:80"
#extra_hosts:
# - "mysql.bboysoul.com:10.10.10.200" zabbix-db:
image: "mariadb:10.2.22"
container_name: "zabbix-db"
restart: "always"
environment:
- "MYSQL_ROOT_PASSWORD="
- "MYSQL_DATABASE=zabbix"
#- "MYSQL_USER="
#- "MYSQL_PASSWORD="
#- "MYSQL_ALLOW_EMPTY_PASSWORD="
#- "MYSQL_RANDOM_ROOT_PASSWORD="
#ports:
# - "3306:3306"
volumes:
- "zabbix-db-data:/var/lib/mysql/" volumes:
zabbix-server-data:
zabbix-db-data:
zabbix-server-scripts:

  

  这不是我们想要得zabbix.ayml  和 images    我们要对它进行改造   还有一个坑   哪就是DB 没有支持UTF-8   zabbix 无法存储中文  (主要是在容器初始化时未对容器进行设置)

所以列出改造列表:

1.   DB   ImagesName   mariadb:10.2.22  不要了改为外部存储 host-ip 172.16.1.55  我在本地有个hma  就拿来用吧

2.   zabbix-web  ImagesName   zabbix/zabbix-web-nginx-mysql:centos-4.0.4   修改容器内中文乱码  同步容器和主机时间

      

     3    zabbix-service  ImagesName  zabbix/zabbix-server-mysql:centos-4.0.4     同步容器和主机时间 添加微信报警插件  同步容器和主机时间   

    4    持久化存储 数据    zabbix-web  . zabbix-server     #  /data/ zabbix-server-data   zabbix-server-scripts

start编写  dockerfile  改造  zabbix-web 容器镜像    zabbix-web-nginx-mysql:centos-4.0.4

FROM  zabbix/zabbix-web-nginx-mysql:centos-4.0.4
RUN rm -rf /usr/share/zabbix/fonts/graphfont.ttf #删除容器内原有中文支持软琏接
COPY ./simkai.ttf /usr/share/fonts/dejavu/
RUN ln -s /usr/share/fonts/dejavu/simkai.ttf /usr/share/zabbix/fonts/graphfont.ttf
simkai.ttf  #该文件为windown 中文支持字体文件      位置   控制面板-->字体-->选择一种中文字库例如“楷体”(simkai.ttf)

  开始重新构建镜像:             docker build -t zabbix/zabbix-web-nginx-mysql:centos-5.0.4  .

好开始重新改造第二个容器:   dockerfile

FROM zabbix/zabbix-server-mysql:centos-4.0.4
COPY ./weixincfg.json /etc/
COPY ./weixin /usr/lib/zabbix/alertscripts/

#对以上dockerfile 解释

 weixincfg.json   #文件为个人微信注册信息    讲解文章地址:  https://blog.csdn.net/weixin_39845407/article/details/81135946

weixin              #微信应用程序包含(weixincfg.json空白文件) 下载地址   https://mirrors.yangxingzhen.com/zabbix/wechat_zabbix.tar.gz

start 重新构建镜像      docker build -t zabbix/zabbix-server-mysql:centos-5.0.4 .

查看构建镜像结果

 好了最重要一步 修改 zabbix.yaml      

version: "3"
services:
zabbix-server:
image: "zabbix/zabbix-server-mysql:centos-5.0.4"
container_name: "zabbix-server"
restart: "always"
environment:
- "DB_SERVER_HOST=mysql.bboysoul.com"
- "MYSQL_USER=mychen"
- "MYSQL_PASSWORD=237356573"
volumes:
- "/zabbix-data/zabbix-server-data:/var/lib/zabbix/"
- "/zabbix-data/zabbix-server-scripts:/usr/lib/zabbix/"
- "/etc/localtime:/etc/localtime"
ports:
- "10051:10051"
extra_hosts:
- "mysql.bboysoul.com:172.16.1.55" zabbix-web:
image: "zabbix/zabbix-web-nginx-mysql:centos-5.0.4"
container_name: "zabbix-web"
restart: "always"
environment:
- "DB_SERVER_HOST=mysql.bboysoul.com"
- "MYSQL_USER=mychen"
- "MYSQL_PASSWORD=237356573"
- "ZBX_SERVER_HOST=zabbix-server"
- "PHP_TZ=Asia/Shanghai "
volumes:
- "/etc/localtime:/etc/localtime"
depends_on:
- "zabbix-server"
ports:
- "80:80"
extra_hosts:
- "mysql.bboysoul.com:172.16.1.55" grafana-web:

关已外接DB  我们只需要在我们本地DB hma cluster   创建 user:mychen  password: 237356573    在  creater  database  zabbix;  就可以了  等一下 我们run zabbix.yaml   容器会自动导入表数据

  

启动:    docker-compose -f ./zabbix.yaml  up -d

测试    user:  Admin   password:   zabbix

微信报警测试:                    关已报警设置 上面这篇文章也有详细说明:    https://blog.csdn.net/weixin_39845407/article/details/81135946

docker-compose 修改zabbix images 添加微信报警插件 时间同步 中文乱码 添加grafana美化zabbix的更多相关文章

  1. (原创)Linux下MySQL 5.5/5.6的修改字符集编码为UTF8(彻底解决中文乱码问题)

    « CloudStack+XenServer详细部署方案(10):高级网络功能应用 (总结)CentOS Linux 5.x在GPT分区不能引导的解决方法 » 2013-1 11 (原创)Linux下 ...

  2. zabbix如何实现微信报警 转载

    现实生产环境中,我们通常使用邮件和短信接受zabbix报警信息,但是邮件经常被工作人员搁置在角落中甚至被设置为垃圾邮件被过滤掉.公司的短信接口又太贵,复杂环境中使用短息报警会使运维成本增加很多.微信提 ...

  3. zabbix监控,微信报警

    微信告警 访问这个地址创建企业微信   https://work.weixin.qq.com/  

  4. zabbix配置企业微信报警

    +++++++++++++++++++++++++++++++++++++++++ 1. 工作中最长使用的就是微信,普及,开源,而且免费!!! 2. 在企业微信中要记录的值: · 部门id · 企业i ...

  5. 【转贴】Linux下MySQL 5.5的修改字符集编码为UTF8(彻底解决中文乱码问题)

    原文地址; http://www.ha97.com/5359.html PS:昨天一同事遇到mysql 5.5中文乱码问题,找我解决.解决了,有个细节问题网上没人说,我就总结一下. 一.登录MySQL ...

  6. Linux下MySQL 5.6的修改字符集编码为UTF8(彻底解决中文乱码问题)

    一.登录MySQL查看用SHOW VARIABLES LIKE ‘character%’;下字符集,显示如下:+--------------------------+----------------- ...

  7. Linux下修改MySQL数据库字符编码为UTF-8解决中文乱码

    由于MySQL编码原因会导致数据库出现乱码. 解决办法: 修改MySQL数据库字符编码为UTF-8,UTF-8包含全世界所有国家需要用到的字符,是国际编码. 具体操作: 1.进入MySQL控制台 &g ...

  8. ubuntu中文乱码--添加中文字符集

    在Ubuntu支持中文后(方法见上篇文章),默认是UTF-8编码,而Windows中文版默认是GBK编码.为了一致性,通常要把Ubuntu的默认 编码改为GBK.当然你也可以不改,但这会导致我们在两个 ...

  9. Linux下MySQL 5.5的修改字符集编码为UTF8(彻底解决中文乱码问题)

    一.登录MySQL查看用SHOW VARIABLES LIKE 'character%';下字符集,显示如下: +--------------------------+---------------- ...

随机推荐

  1. 最全BT磁力搜索引擎,国外最受欢迎的BT-磁力网站(整理分享,每日不断更新...)

    最全BT磁力搜索引擎索引(整理分享,每日更新) 1.海盗湾 The Pirate Bay 2.磁力天堂(BT磁力搜索下载-磁力天堂) www.btaa.xyz  (资源多,下载速度可以,建议用手机访问 ...

  2. linux动态监控dstat&&glances&&psutil&&bottle

    安装dstat yum install dstat 安装glances yum install python-devel pip install glances 如果我们安装了 Bottle 这个 w ...

  3. linux磁盘空间挂载

    (1)查看磁盘空间 df -hl (3)查看硬盘及分区信息 fdisk -l (4)格式化新分区 mkfs.ext3 /dev/xvdb (5)将磁盘挂载在/www/wwwroot/default目录 ...

  4. ZOJ4103 Traveler(2019浙江省赛)

    构造+思维~ #include<bits/stdc++.h> using namespace std; ; int N,M,T; int visit[maxn]; stack<int ...

  5. ANSYS-MFC二次开发

    目录 1. 开发流程 2. 开发代码 1. 开发流程 ANSYS-MFC二次开发的思路其实是特别简单的,通常MFC主要是设计界面,然后从MFC界面中读取要设计的参数,然后根据这些设置了的参数生成APD ...

  6. 碰到的问题——建设基于TensorFlow的深度学习环境

    1.解决jupyter notebook问题:socket.error: [Errno 99] Cannot assign requested address 首先要生成一个jupyter的配置文件: ...

  7. TouchGFX

    TouchGFX让用户界面代码只占用10KB的 SRAM空间和20KB的闪存空间的C ++软件框架.有无操作系统均可

  8. 从分支git clone

    git clone -b <branch> <remote_repo> 具体用法:git clone -b 分支名 https://www.xx.com/app.git 以上就 ...

  9. eslint检测规则中,括弧和函数名之间去掉空格的配置

    在.eslintrc.js中配置: // add your custom rules here rules: { // no space before function name "spac ...

  10. Python 基础之if if else

    1.代码块 以冒号作为开始,用缩进来划分区域,这个整体叫做代码块 if 5 == 5:   print(1)   print(2)   if True:   print(3)   print(4)   ...