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

相关推荐

  • Windows SMB请求重放攻击分析

    smb中继或叫smb请求重放攻击,B是一个smb服务器,A来进行认证,B将A的认证信息转发到C上,如果A的凭证在C上认证成功就能进行下一步操作,如创建服务执行命令。如果在域中控制了某些常用服务,如:WEB OA系统、文件共享等服务则可以尝试使用SMB中继攻击来引诱域管理员访问达到获取其他机器权限的目的。 环境 192.168.123.10 win 7&nbs…

    2023年3月3日
    44800
  • HTTPS为什么比HTTP更安全?

    一、安全性 HTTP在通信中: 通信使用明文,不对内容进行加密,容易被窃听 不验证通信方的身份,内容可能被伪装分子窃取 HTTPS则解决了上述问题: 内容加密,建立一个信息安全通道,来保证数据传输的安全 身份认证,确认网站的真实性 数据完整性,防止内容被第三方冒充或者篡改 HTTPS=HTTP+SSL/TLS ,如今SSL已废弃,所以只关注HTTP+TLS,…

    2022年8月19日
    41900
  • nmap详细使用教程

    nmap简单使用 语法格式 例如,下面扫描的是www.baidu.com,输出的是基本信息及开放的TCP端口的列表: 以上显示,端口80和443在目标主机上开放。 获得更详细的扫描中间过程输出,可以使用-v或-vv 选项: 执行以下命令可扫描目标主机的TCP端口: 其中,-sT选项代表扫描TCP端口, -p-扫描所有端口(65535个)。…

    2023年2月15日
    42500
  • 网络总是宕机,这个绝招必须收藏!

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

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

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

    2022年6月14日
    85700

发表回复

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

在线咨询: QQ交谈

邮件:712342017@qq.com

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

关注微信