Ubuntu 使用Docker compose快速部署Zabbix 6.4

使用 Zabbix 6.4,让您管理Zabbix配置比以往任何时候都更加容易!通过Just-in-time LDAP和SAML用户配置来自动管理Zabbix用户;在零停机时间的情况下升级到最新版本的Zabbix;在整个Zabbix环境中即时同步变化的配置。

https://www.zabbix.com/cn/whats_new_6_4

Zabbix 版本依赖

安装Docker 以及Docker compose

添加镜像仓库

  1. <span># Add Docker's official GPG key:</span>
  2. <span>sudo apt</span> <span>-</span> <span>get</span> <span> update</span>
  3. <span>sudo apt</span> <span>-</span> <span>get</span> <span> install ca</span> <span>-</span> <span>certificates curl gnupg</span>
  4. <span>sudo install </span> <span>-</span> <span>m </span> <span>0755</span> <span> </span> <span>-</span> <span>d </span> <span>/</span> <span>etc</span> <span>/</span> <span>apt</span> <span>/</span> <span>keyrings</span>
  5. <span>curl </span> <span>-</span> <span>fsSL https</span> <span>:</span> <span>//download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg</span>
  6. <span>sudo chmod a</span> <span>+</span> <span>r </span> <span>/</span> <span>etc</span> <span>/</span> <span>apt</span> <span>/</span> <span>keyrings</span> <span>/</span> <span>docker</span> <span>.</span> <span>gpg</span>
  7. <span># Add the repository to Apt sources:</span>
  8. <span>echo </span>
  9. <span> </span> <span>"deb [arch="</span> <span>$</span> <span>(</span> <span>dpkg </span> <span>--</span> <span>print</span> <span>-</span> <span>architecture</span> <span>)</span> <span>" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu </span>
  10. <span> "</span> <span>$</span> <span>(.</span> <span> </span> <span>/</span> <span>etc</span> <span>/</span> <span>os</span> <span>-</span> <span>release </span> <span>&&</span> <span> echo </span> <span>"$VERSION_CODENAME"</span> <span>)</span> <span>" stable"</span> <span> </span> <span>|</span> <span> </span>
  11. <span> sudo tee </span> <span>/</span> <span>etc</span> <span>/</span> <span>apt</span> <span>/</span> <span>sources</span> <span>.</span> <span>list</span> <span>.</span> <span>d</span> <span>/</span> <span>docker</span> <span>.</span> <span>list </span> <span>></span> <span> </span> <span>/dev/</span> <span>null</span>
  12. <span>sudo apt</span> <span>-</span> <span>get</span> <span> update</span>

安装Docker和Docker compose

  1. <span>$ sudo apt</span> <span>-</span> <span>get</span> <span> install docker</span> <span>-</span> <span>ce docker</span> <span>-</span> <span>ce</span> <span>-</span> <span>cli containerd</span> <span>.</span> <span>io docker</span> <span>-</span> <span>buildx</span> <span>-</span> <span>plugin docker</span> <span>-</span> <span>compose</span> <span>-</span> <span>plugin</span>

查看版本号

  1. <span>root@zabbix</span> <span>:~#</span> <span> docker </span> <span>-</span> <span>v</span>
  2. <span>Docker</span> <span> version </span> <span>24.0</span> <span>.</span> <span>6</span> <span>,</span> <span> build ed223bc</span>
  3. <span>root@zabbix</span> <span>:~#</span> <span> docker compose version</span>
  4. <span>Docker</span> <span> </span> <span>Compose</span> <span> version v2</span> <span>.</span> <span>21.0</span>

修改docker-compose.yml文件

官方提供了不同版本的docker compose文件

文件名 描述
docker-compose_v3_alpine_mysql_latest.yaml 该 compose 文件运行基于 Alpine Linux 的 Zabbix 5.4 最新版本的组件,支持 MySQL 数据库。
docker-compose_v3_alpine_mysql_local.yaml 该 compose 文件本地构建和运行基于 Alpine Linux 的 Zabbix 5.4 最新版本的组件,支持 MySQL数据库。
docker-compose_v3_alpine_pgsql_latest.yaml 该 compose 文件运行基于 Alpine Linux 的 Zabbix 5.4 最新版本的组件,支持 PostgreSQL 数据库。
docker-compose_v3_alpine_pgsql_local.yaml 该 compose 文件本地构建和运行基于 Apline Linux 的 Zabbix 5.4 最新版本的组件,支持 PostgreSQL 数据库。
docker-compose_v3_centos_mysql_latest.yaml 该 compose 文件运行基于 CentOS 8 的 Zabbix 5.4 最新版本的组件,支持 MySQL 数据库。
docker-compose_v3_centos_mysql_local.yaml 该 compose 文件本地构建和运行基于 CentOS 8 的 Zabbix 5.4 最新版本的组件,支持 MySQL 数据库。
docker-compose_v3_centos_pgsql_latest.yaml 该 compose 文件运行基于 CentOS 8 的 Zabbix 5.4 最新版本的组件,支持 PostgreSQL 数据库。
docker-compose_v3_centos_pgsql_local.yaml 该 compose 文件本地构建和运行基于 CentOS 8 的 Zabbix 5.4 最新版本的组件,支持 PostgreSQL 数据库。
docker-compose_v3_ubuntu_mysql_latest.yaml 该 compose 文件运行基于 Ubuntu 20.04 的 Zabbix 5.4 最新版本的组件,支持 MySQL 数据库。
docker-compose_v3_ubuntu_mysql_local.yaml 该 compose 文件本地构建和运行基于 Ubuntu 20.04 的 Zabbix 5.4 最新版本的组件,支持 MySQL 数据库。
docker-compose_v3_ubuntu_pgsql_latest.yaml 该 compose 文件运行基于 Ubuntu 20.04 的 Zabbix 5.4 最新版本的组件,支持 PostgreSQL 数据库。
docker-compose_v3_ubuntu_pgsql_local.yaml 该 compose 文件本地构建和运行基于 Ubuntu 20.04 的 Zabbix 5.4 最新版本的组件,支持 PosegreSQL 数据库。

关于以上文件可以到https://github.com/zabbix/zabbix-docker下载

本次我们使用docker-compose_v3_alpine_mysql_latest.yaml文件部署

  1. <span>git clone https</span> <span>:</span> <span>//github.com/zabbix/zabbix-docker.git</span>
  2. <span>cd zabbix</span> <span>-</span> <span>docker</span>

启动

默认MySQL密码root_pwd
默认Zabbixd用户名zabbix,密码zabbix_pwd,库zabbix_pwd

mysql数据存储目录

  • /root/zabbix-docker/zbx_env/var/lib/mysql
  1. <span>root@abcdocker </span> <span>:~</span> <span>/zabbix-docker# docker compose -f ./</span> <span>docker</span> <span>-</span> <span>compose_v3_alpine_mysql_latest</span> <span>.</span> <span>yaml up </span> <span>-</span> <span>d</span>
  2. <span>[+]</span> <span> </span> <span>Running</span> <span> </span> <span>4</span> <span>/</span> <span>4</span>
  3. <span> </span> <span>✔</span> <span> </span> <span>Container</span> <span> zabbix</span> <span>-</span> <span>docker</span> <span>-</span> <span>mysql</span> <span>-</span> <span>server</span> <span>-</span> <span>1</span> <span> </span> <span>Started</span> <span> </span> <span>0.0s</span>
  4. <span> </span> <span>✔</span> <span> </span> <span>Container</span> <span> zabbix</span> <span>-</span> <span>docker</span> <span>-</span> <span>zabbix</span> <span>-</span> <span>server</span> <span>-</span> <span>1</span> <span> </span> <span>Started</span> <span> </span> <span>0.0s</span>
  5. <span> </span> <span>✔</span> <span> </span> <span>Container</span> <span> zabbix</span> <span>-</span> <span>docker</span> <span>-</span> <span>zabbix</span> <span>-</span> <span>web</span> <span>-</span> <span>nginx</span> <span>-</span> <span>mysql</span> <span>-</span> <span>1</span> <span> </span> <span>Started</span> <span> </span> <span>0.0s</span>
  6. <span> </span> <span>✔</span> <span> </span> <span>Container</span> <span> zabbix</span> <span>-</span> <span>docker</span> <span>-</span> <span>db_data_mysql</span> <span>-</span> <span>1</span> <span> </span> <span>Started</span> <span> </span> <span>0.0s</span>

测试

访问测试

http://zabbix ip:80

默认认证信息

  • 用户名Admin
  • 密码zabbix

界面如下

数据持久化

mysql数据存储目录

  • /root/zabbix-docker/zbx_env/var/lib/mysql

实际上在启动的时候已经为我们挂载了

  1. <span> </span> <span>-</span> <span>v </span> <span>./</span> <span>mysql</span> <span>/:</span> <span>/var/</span> <span>lib</span> <span>/</span> <span>mysql</span> <span>/:</span> <span>Z </span>