返回
内网部署 Zabbix 5.0 Docker 环境详解
见解分享
2023-09-22 18:55:45
在企业 IT 环境中,监控是至关重要的,它可以帮助管理员检测和解决问题,并确保系统平稳运行。Zabbix 是一个流行的开源监控解决方案,它以其强大的功能和灵活性而闻名。本文将指导您如何在内网环境中使用 Docker 部署 Zabbix 5.0。
前提条件
在继续之前,确保您具备以下条件:
- Docker 环境
- Nginx Web 服务器
- Java Development Kit (JDK) 1.8
- PHP 7.3
- MySQL 8.0
部署步骤
- 创建 Docker 镜像
创建包含 Zabbix 5.0、Nginx、PHP 7.3 和 MySQL 8.0 的 Docker 镜像。可以使用以下 Dockerfile:
FROM nginx
RUN apt-get update && \
apt-get install -y \
software-properties-common && \
add-apt-repository -y ppa:ondrej/php && \
apt-get update && \
apt-get install -y \
php7.3-fpm \
php7.3-mysql \
php7.3-mbstring \
php7.3-gd && \
apt-get install -y \
mysql-server
COPY ./zabbix-5.0.4.tar.gz /usr/src/zabbix-5.0.4.tar.gz
RUN cd /usr/src && \
tar -xzf zabbix-5.0.4.tar.gz && \
cd zabbix-5.0.4 && \
./configure --enable-server --enable-agent --with-mysql --with-php-config=/usr/bin/php-config7.3 && \
make install
RUN ln -s /usr/bin/mysql_config /usr/bin/mysql_config7 && \
echo 'zabbix zabbix' | chpasswd
- 运行 Zabbix 容器
使用以下命令运行 Zabbix 容器:
docker run -d -p 80:80 -p 3306:3306 --name zabbix-server my-zabbix-image
- 配置 Zabbix
访问 http://[服务器 IP 地址]/zabbix
,按照 Zabbix 安装向导完成配置。
- 配置 Nginx
为 Zabbix 配置 Nginx 虚拟主机,如下所示:
server {
listen 80;
server_name example.com;
root /usr/share/zabbix;
index index.php;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
- 重启服务
重启 Nginx 和 Zabbix 容器:
docker restart zabbix-server
service nginx restart
配置前端界面
- 创建前端容器
创建包含 Zabbix 前端界面的 Docker 镜像。可以使用以下 Dockerfile:
FROM nginx
COPY ./zabbix-web-interface.tar.gz /usr/src/zabbix-web-interface.tar.gz
RUN cd /usr/src && \
tar -xzf zabbix-web-interface.tar.gz && \
cd zabbix-web-interface && \
cp -r * /usr/share/nginx/html
- 运行前端容器
使用以下命令运行前端容器:
docker run -d -p 8080:80 --name zabbix-web my-zabbix-web-image
访问 Zabbix 界面
现在,您可以访问 http://[服务器 IP 地址]:8080
访问 Zabbix 界面。使用您在安装向导中设置的凭据登录。
总结
通过使用 Docker,您可以在内网环境中快速、轻松地部署 Zabbix 5.0。Docker 提供了一个隔离的环境,使您可以在不同的环境中部署和运行应用程序,而无需担心兼容性问题。此外,Docker 容器易于更新和维护,使您可以轻松地保持 Zabbix 最新。