Docker搭建部署Zabbix服务器

使用Docker搭建Zabbix

更换yum源

##安装wget
yum install -y wget

##进入yum仓库
cd /etc/yum.repo.d/

##备份原有yum源
mv /etc/yum.repo.d/Centos-7.repo /etc/yum.repo.d/Centos-7.repo.bak

##下载新的yum源
wget http://mirrors.aliyun.com/repo/Centos-7.repo

##清除缓存
yum clean all

##生成新的缓存
yum makecache

##安装EPEL
yum install -y epel-release

##再次运行yum clean all清除缓存 
yum clean all
yum makecache

##更新yum
yum -y update

安装Docker

采用Centos 7 yum安装

# step 1: 安装必要的一些系统工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# Step 2: 添加软件源信息
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# Step 3
sudo sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo
# Step 4: 更新并安装Docker-CE
sudo yum makecache fast
sudo yum -y install docker-ce
# Step 4: 开启Docker服务
sudo service docker start

# 注意:
# 官方软件源默认启用了最新的软件,您可以通过编辑软件源的方式获取各个版本的软件包。例如官方并没有将测试版本的软件源置为可用,您可以通过以下方式开启。同理可以开启各种测试版本等。
# vim /etc/yum.repos.d/docker-ce.repo
#   将[docker-ce-test]下方的enabled=0修改为enabled=1
#
# 安装指定版本的Docker-CE:
# Step 1: 查找Docker-CE的版本:
# yum list docker-ce.x86_64 --showduplicates | sort -r
#   Loading mirror speeds from cached hostfile
#   Loaded plugins: branch, fastestmirror, langpacks
#   docker-ce.x86_64            17.03.1.ce-1.el7.centos            docker-ce-stable
#   docker-ce.x86_64            17.03.1.ce-1.el7.centos            @docker-ce-stable
#   docker-ce.x86_64            17.03.0.ce-1.el7.centos            docker-ce-stable
#   Available Packages
# Step2: 安装指定版本的Docker-CE: (VERSION例如上面的17.03.0.ce.1-1.el7.centos)
# sudo yum -y install docker-ce-[VERSION]

##安装校验
root@iZbp12adskpuoxodbkqzjfZ:$ docker version
Client:
 Version:      17.03.0-ce
 API version:  1.26
 Go version:   go1.7.5
 Git commit:   3a232c8
 Built:        Tue Feb 28 07:52:04 2017
 OS/Arch:      linux/amd64

Server:
 Version:      17.03.0-ce
 API version:  1.26 (minimum version 1.12)
 Go version:   go1.7.5
 Git commit:   3a232c8
 Built:        Tue Feb 28 07:52:04 2017
 OS/Arch:      linux/amd64
 Experimental: false

测试准备

需要的镜像

docker pull zabbix/zabbix-web-nginx-mysql:5.0-centos-latest
docker pull zabbix/zabbix-server-mysql:5.0-centos-latest
docker pull zabbix/zabbix-proxy-mysql:5.0-centos-latest
docker pull zabbix/zabbix-snmptraps:5.0-centos-latest
docker pull zabbix/zabbix-agent:5.0-centos-latest
docker pull mysql:5.7

搭建zabbix

##镜像拉取结束后,查看镜像列表
docker images

##运行Demo
# 运行本地数据库
docker run --name zbx5-mysql -d \
    --network=host \
    -e MYSQL_DATABASE="zabbix" \
    -e MYSQL_USER="zabbix" \
    -e MYSQL_PASSWORD="zabbix" \
    -e MYSQL_ROOT_PASSWORD="root" \
    --restart unless-stopped mysql:5.7 \
    --character-set-server=utf8 --collation-server=utf8_bin \
    --default-authentication-plugin=mysql_native_password

# 启动 server 后端
docker run --name zbx5-server-mysql -d \
    -e DB_SERVER_HOST="127.0.0.1" \
    -e MYSQL_DATABASE="zabbix" \
    -e MYSQL_USER="zabbix" \
    -e MYSQL_PASSWORD="zabbix" \
    -e MYSQL_ROOT_PASSWORD="root" \
    --network=host \
    --restart unless-stopped \
	zabbix/zabbix-server-mysql:5.0-centos-latest

# 启动 proxy,由于默认 Server 和 Proxy 端口都为 10051,避免冲突,这里使用 11111
docker run --name zbx5-proxy-mysql -d \
    -e DB_SERVER_HOST="127.0.0.1" \
    -e ZBX_LISTENPORT=11111 \
    -e ZBX_HOSTNAME="zabbix-proxy-test1" \
    -e ZBX_SERVER_HOST="127.0.0.1" \
    -e MYSQL_USER="zabbix" \
    -e MYSQL_PASSWORD="zabbix" \
	-e MYSQL_ROOT_PASSWORD="root" \
    --network=host \
    --restart unless-stopped \
	zabbix/zabbix-proxy-mysql:5.0-centos-latest

# 启动前端页面,默认端口是 8080
docker run --name zbx5-web-nginx-mysql -d \
    -e ZBX_SERVER_HOST="127.0.0.1" \
    -e DB_SERVER_HOST="127.0.0.1" \
    -e MYSQL_DATABASE="zabbix" \
    -e MYSQL_USER="zabbix" \
    -e MYSQL_PASSWORD="zabbix" \
    -e MYSQL_ROOT_PASSWORD="root" \
    --network=host \
    --restart unless-stopped \
	zabbix/zabbix-web-nginx-mysql:5.0-centos-latest

# 启动 Agent
docker run --name zbx5-agent -d \
    -e ZBX_HOSTNAME="local-agent" \
    -e ZBX_SERVER_HOST="127.0.0.1"  \
    --network=host \
    --restart unless-stopped \
    zabbix/zabbix-agent:5.0-centos-latest

##浏览器 http://ip:8080
默认密码:Admin/zabbix

docker其他命令

##停止正在运行的镜像
#step 1 		先查看正在运行的镜像 docker ps
CONTAINER ID   IMAGE                                             COMMAND                   CREATED          STATUS          PORTS     NAMES
850f5f190b52   zabbix-agent:5.0-centos-latest             "/usr/bin/tini -- /u…"   11 minutes ago   Up 11 minutes             zbx5-agent
6a8f3022e3f0   zabbix-web-nginx-mysql:5.0-centos-latest   "docker-entrypoint.sh"    11 minutes ago   Up 11 minutes             zbx5-web-nginx-mysql
7a0fda359321   zabbix-proxy-mysql:5.0-centos-latest       "/usr/bin/tini -- /u…"   11 minutes ago   Up 11 minutes             zbx5-proxy-mysql
b483dde04495   zabbix-server-mysql:5.0-centos-latest      "/usr/bin/tini -- /u…"   11 minutes ago   Up 11 minutes             zbx5-server-mysql
bc9840acc1ca   mysql:5.7                                         "docker-entrypoint.s…"   11 minutes ago   Up 11 minutes             zbx5-mysql

#step 2  	先停止正在运行的镜像
docker stop 850
ps: 850 指的是CONTAINER ID 下的容器ID前3个字符

#step3		删除停止的镜像
docker ps -a
docker rmi 850

docker rm -f $(docker ps -a -q) ####删除所用运行的镜像

常见问题

服务器时间与本地不一致

##查看正在运行的容器
docker ps

##进入zabbix/zabbix-web-nginx-mysql的配置文件
docker exec -it 6a8f3022e3f0 /bin/bash
ps:6a8f3022e3f0是容器id

##修改配置文件
vim /etc/php-fpm.d/zabbix.conf 
php_value[date.timezone] = Asia/Shanghai

##停止容器
docker stop 6a8

##重启容器
docker resart 6a8
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
通过Docker安装部署Zabbix可以按照以下步骤进行操作: 1. 首先,更新并安装Docker-CE。使用以下命令: ``` yum makecache fast yum -y install docker-ce ``` \[1\] 2. 创建一个新的Docker网络,以便将后续的Zabbix Server、MySQL和Web容器加入到该网络中。使用以下命令创建一个名为"zabbix_net"的桥接网络: ``` docker network create -d bridge zabbix_net ``` \[2\] 3. 运行Zabbix Agent 2容器。使用以下命令: ``` docker run -dit --name zabbix-agent2 -p 10050:10050 -v /var/run/docker.sock:/var/run/docker.sock --network zabbix_net -e ZBX_HOSTNAME="Zabbix server" -e ZBX_SERVER_HOST="zabbix-server-mysql" -e ZBX_SERVER_PORT=10051 --privileged zabbix/zabbix-agent2:latest ``` 这将在后台运行一个名为"zabbix-agent2"的容器,并将其连接到"zabbix_net"网络。同时,容器会将Zabbix Server的主机名设置为"Zabbix server",将Zabbix Server的主机地址设置为"zabbix-server-mysql",将Zabbix Server的端口设置为10051。此外,容器还会挂载宿主机的Docker套接字文件,以便能够监控其他Docker容器。\[3\] 通过以上步骤,你可以使用Docker安装部署Zabbix,并且将Zabbix Agent 2容器连接到Zabbix Server所在的网络中。 #### 引用[.reference_title] - *1* *2* *3* [Docker安装部署Zabbix](https://blog.csdn.net/qq_35029061/article/details/128470801)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

路跑码码

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值