docker-compose部署zabbix

我们直接利用docker环境安装compose功能。
compose的安装很方式有多种,下面我们使用二进制方式进行安装。
下载地址为https://github.com/docker/compose/releases

  • 具体命令为:
curl -L https://github.com/docker/compose/releases/download/1.29.2/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
复制代码

输入docker-compose可以显示帮助信息表示安装成功。

下面我们就可以通过编写docker-compose.yml文件来部署服务了。

  • 首先创建一个yml文件的存放位置,在创建一个yml文件
mkdir -p /data2/zabbix
cd /data2/zabbix/
vim docker-compose.yml
复制代码
注意:yml文件的名称是固定的。
复制代码
  • yml文件内容:可以直接复制使用,也可简单修改在使用
version: '3'

services:
  zabbix-web-nginx-mysql:
    image: zabbix/zabbix-web-nginx-mysql:centos-5.2-latest
    restart: always
    environment:
      - DB_SERVER_HOST=zabbix-mysql
      - MYSQL_DATABASE=zabbix
      - MYSQL_USER=zabbix
      - MYSQL_PASSWORD=zabbix
      - MYSQL_ROOT_PASSWORD=123qwe
      - ZBX_SERVER_HOST=zabbix-server-mysql
    ports:
      - 8080:8080
    volumes:
      - /etc/localtime:/etc/localtime
      - /data2/zabbix/fonts/DejaVuSans.ttf:/usr/share/zabbix/assets/fonts/DejaVuSans.ttf
    networks:
      - zbx_net
    depends_on:
      - zabbix-server-mysql
      - zabbix-mysql
  zabbix-mysql:
    image: mysql:8.0.23
    restart: always
    ports:
      - 3306:3306
    environment:
      - MYSQL_DATABASE=zabbix
      - MYSQL_USER=zabbix
      - MYSQL_PASSWORD=zabbix
      - MYSQL_ROOT_PASSWORD=123qwe
    command:
      - mysqld
      - --default-authentication-plugin=mysql_native_password
      - --character-set-server=utf8
      - --collation-server=utf8_bin
    volumes:
      - /etc/localtime:/etc/localtime
      - /data2/zabbix/db:/var/lib/mysql
    networks:
      - zbx_net
  zabbix-java-gateway:
    image: zabbix/zabbix-java-gateway:centos-5.2-latest
    restart: always
    volumes:
      - /etc/localtime:/etc/localtime
    networks:
      - zbx_net
  zabbix-server-mysql:
    image: zabbix/zabbix-server-mysql:centos-5.2-latest
    restart: always
    volumes:
      - zabbix-server-vol:/etc/zabbix
      - /data2/zabbix/alertscripts:/usr/lib/zabbix/alertscripts
      - /etc/localtime:/etc/localtime
    ports:
      - 10051:10051
    environment:
      - DB_SERVER_HOST=zabbix-mysql
      - MYSQL_DATABASE=zabbix
      - MYSQL_USER=zabbix
      - MYSQL_PASSWORD=zabbix
      - MYSQL_ROOT_PASSWORD=123qwe
      - ZBX_JAVAGATEWAY=zabbix-java-gateway
      - ZBX_JAVAGATEWAY_ENABLE=true
      - ZBX_JAVAGATEWAYPORT=10052
    depends_on:
      - zabbix-mysql
    networks:
      - zbx_net
  zabbix-agent:
    image: zabbix/zabbix-agent:centos-5.2-latest
    restart: always
    ports:
      - 10050:10050
    environment:
      - ZBX_HOSTNAME=Zabbix server
      - ZBX_SERVER_HOST=zabbix-server-mysql
      - ZBX_SERVER_PORT=10051
    networks:
      - zbx_net

networks:
  zbx_net:
    driver: bridge

volumes:
  zabbix-server-vol:
复制代码
  • 创建完yml文件,我们还需要把文件中用到的目录创建出来
mkdir alertscripts db fonts
复制代码
  • 进入到fonts目录,下载中文语言包文件
cd fonts
wget https://dl.cactifans.com/zabbix_docker/msty.ttf
mv msty.ttf DejaVuSans.ttf
复制代码
  • 当准备工作都完成了,接下来我们就运行这个文件,看看是否能一键安装zabbix监控平台
  • 运行docker-compose.yml文件的方式:(在yml文件所在目录运行)
docker-compose up -d
复制代码
  • 结果如下:
Creating network "zabbix_zbx_net" with driver "bridge"
Creating volume "zabbix_zabbix-server-vol" with default driver
Pulling zabbix-web-nginx-mysql (zabbix/zabbix-web-nginx-mysql:centos-5.2-latest)...
centos-5.2-latest: Pulling from zabbix/zabbix-web-nginx-mysql
Digest: sha256:9a84a6b86dd748d3f3843efd1f744d1f3e3fc9bd39105470239aae6a81cd51f5
Status: Downloaded newer image for zabbix/zabbix-web-nginx-mysql:centos-5.2-latest
Creating zabbix_zabbix-mysql_1        ... done
Creating zabbix_zabbix-agent_1        ... done
Creating zabbix_zabbix-java-gateway_1 ... done
Creating zabbix_zabbix-server-mysql_1 ... done
Creating zabbix_zabbix-web-nginx-mysql_1 ... done
复制代码
  • 查看容器启动状态命令:
docker-compose ps
复制代码
  • 查看容器启动日志:
docker-compose logs
复制代码
  • 查看容器启动的进程:
docker-compose top
复制代码
  • 容器停止、启动、删除、构建命令:
docker-compose stop
docker-compose start
docker-compose down
docker-compose up -d
注:-d参数为后台运行
复制代码

接下来可以通过浏览器访问登录页面,默认账号密码:Admin、zabbix

docker-compose部署zabbix
docker-compose部署zabbix

我们要修改一下配置,将ip更换为容器名称,不然会检测不到

docker-compose部署zabbix
docker-compose部署zabbix

稍微等待一会,会发现监控成功

docker-compose部署zabbix
docker-compose部署zabbix

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/7697

(0)
郭靖的头像郭靖
上一篇 2023年3月20日 下午5:23
下一篇 2023年3月21日 下午4:47

相关推荐

  • 问题:HTTP 错误 401.2 – Unauthorized 由于身份验证头无效,您无权查看此页

    解决:“HTTP 错误 401.2 – Unauthorized 由于身份验证头无效,您无权查看此页”打开IIS管理器,操作如下:第一步 打开计算机管理-本地用户和组-新建网站用户 第二步 功能视图–身份验证–匿名身份验证–编辑–选择指定用户,启用匿名身份验证; 这边输入之前新建的网站用户,保存即可…

    2023年10月25日
    96900
  • 网络总是宕机,这个绝招必须收藏!

    下午好,我的网工朋友。 众所周知,后台服务可以划分为两类,有状态和无状态。 高可用对于无状态的应用来说是比较简单的,无状态的应用,只需要通过 F5 或者任何代理的方式就可以很好的解决。 而本篇文章描述的主要是针对有状态的服务进行分析。 服务端进行状态维护主要是通过磁盘或内存进行保存,比如 MySQL 数据库,redis 等内存数据库。 除了这两种类型的维护方…

    2024年1月9日
    49300
  • 如何通过宝塔面板配置ssl证书

    至于宝塔的安装以及如何安装环境搭建网站,大家可以看我们的另一篇文章: Centos7.6下宝塔安装及资产管理系统部署 基于宝塔面板配置网站ssl证书支持https访问其实很简单,不需要你懂什么技术知识。接下来你跟着我的步骤,就能成功配置网站ssl。 宝塔面板后台设置成功如图所示: 第一步:点击设置 第二步:点击右侧的SSL,选择宝塔SSL,点击申请证书 第三…

    2022年6月14日
    1.4K00
  • Docker部署漏洞扫描工具Nessus

    部署漏洞扫描工具Nessus详细过程分享(下载+安装+注册+激活)​ 安装 配置 添加用户 以下操作在容器内进行: 获取Challenge code以下操作在容器内进行: 获取插件和许可证使用从www.tenable.com/products/ne…注册发送到邮箱的Activation Code和上一步获取的challenge Code在plugins.ne…

    2024年9月19日
    61600
  • 如何用防火墙添加规则

    防火墙技术的功能主要在于及时发现并处理计算机网络运行时可能存在的安全风险、数据传输等问题,其中处理措施包括隔离与保护,同时可对计算机网络安全当中的各项操作实施记录与检测,以确保计算机网络运行的安全性,保障用户资料与信息的完整性,为用户提供更好、更安全的计算机网络使用体验。 系统版本:centos7.9,最好和我一样是centos7的版本,其他版本命令可能有偏…

    2022年8月10日
    84800

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信