RedHat 7.9 docker 安装 zabbix

安装vim net-tools wget

yum install vim

yum install -y net-tools

yum install -y wget

下载docker,go语言可以不用装

wget https://download.docker.com/linux/static/stable/x86_64/docker-29.0.2.tgz

tar -zxvf docker-29.0.2.tgz

yum install -y yum-utils device-mapper-persistent-data lvm2 git go

#wget https://golang.google.cn/dl/go1.25.4.linux-amd64.tar.gz

#rm -rf /usr/local/go && tar -C /usr/local -xzf go1.25.4.linux-amd64.tar.gz

#export PATH=$PATH:/usr/local/go/bin

cp docker/* /usr/bin/

编辑docker管理文件

vim /etc/systemd/system/docker.service

bash 复制代码
[Unit]

Description=Docker Application Container Engine

Documentation=https://docs.docker.com

After=network-online.target firewalld.service

Wants=network-online.target



[Service]

Type=notify

# the default is not to use systemd for cgroups because the delegate issues still

# exists and systemd currently does not support the cgroup feature set required

# for containers run by docker



ExecStart=/usr/bin/dockerd

ExecReload=/bin/kill -s HUP $MAINPID

# Having non-zero Limit*s causes performance problems due to accounting overhead

# in the kernel. We recommend using cgroups to do container-local accounting.

LimitNOFILE=infinity

LimitNPROC=infinity

LimitCORE=infinity

# Uncomment TasksMax if your systemd version supports it.

# Only systemd 226 and above support this version.

#TasksMax=infinity

TimeoutStartSec=0

# set delegate yes so that systemd does not reset the cgroups of docker containers

Delegate=yes

# kill only the docker process, not all processes in the cgroup

KillMode=process

# restart the docker process if it exits prematurely

Restart=on-failure

StartLimitBurst=3

StartLimitInterval=60s



[Install]

WantedBy=multi-user.target

启动docker

chmod +x /etc/systemd/system/docker.service

systemctl daemon-reload

systemctl enable docker.service

systemctl start docker.service

systemctl status docker.service

docker ps

开启要放行的端口,firewalld不可以关闭

firewall-cmd --permanent --add-port=8080/tcp

firewall-cmd --permanent --add-port=10050/tcp

firewall-cmd --permanent --add-port=10051/tcp

firewall-cmd --permanent --add-port=10052/tcp

firewall-cmd --permanent --add-port=3306/tcp

拉取镜像,mysql镜像建议使用8.0

docker pull mysql:8.0

docker pull zabbix/zabbix-java-gateway:latest

docker pull zabbix/zabbix-server-mysql:latest

docker pull zabbix/zabbix-web-nginx-mysql:latest

docker pull zabbix/zabbix-agent:latest

创建网络

docker network create --subnet 172.20.0.0/16 --ip-range 172.20.240.0/20 zabbix-net

启动mysql

root@localhost \~\]# cat mysql.sh ```bash docker run --name mysql-server -t \ -e MYSQL_DATABASE="zabbix" \ -e MYSQL_USER="zabbix" \ -e MYSQL_PASSWORD="123456" \ -e MYSQL_ROOT_PASSWORD="123456" \ --network=zabbix-net \ --restart unless-stopped \ -p 3306:3306 \ -d mysql:8.0 \ --character-set-server=utf8 --collation-server=utf8_bin \ --default-authentication-plugin=mysql_native_password ``` 启动 zabbix-java-gateway \[root@localhost \~\]# cat java-gatewat.sh ```bash docker run --name zabbix-java-gateway -t \ --network=zabbix-net \ --restart=unless-stopped \ -d zabbix/zabbix-java-gateway:latest ``` 启动zabbix server \[root@localhost \~\]# cat zabbix_server.sh ```bash docker run --name zabbix-server-mysql -t \ -v zabbix_server:/etc/zabbix \ -e DB_SERVER_HOST="mysql-server" \ -e MYSQL_DATABASE="zabbix" \ -e MYSQL_USER="zabbix" \ -e MYSQL_PASSWORD="123456" \ -e MYSQL_ROOT_PASSWORD="123456" \ -e ZBX_JAVAGATEWAY="zabbix-java-gateway" \ -p 10051:10051 \ --network=zabbix-net \ --restart=unless-stopped \ -d zabbix/zabbix-server-mysql:latest ``` 启动web端 \[root@localhost \~\]# cat nginx-web.sh ```bash docker run --name zabbix-web-nginx-mysql -t \ -e PHP_TZ="Asia/Shanghai" \ -e ZBX_SERVER_HOST="zabbix-server-mysql" \ -e DB_SERVER_HOST="mysql-server" \ -e MYSQL_DATABASE="zabbix" \ -e MYSQL_USER="zabbix" \ -e MYSQL_PASSWORD="123456" \ -e MYSQL_ROOT_PASSWORD="123456" \ -p 8080:8080 \ --network=zabbix-net \ --restart=unless-stopped \ -d zabbix/zabbix-web-nginx-mysql:latest ``` 启动agent ```bash docker run --name zabbix-agent \ -e ZBX_HOSTNAME="Zabbix server" \ -e ZBX_SERVER_HOST="zabbix-server-mysql" \ --init \ --link zabbix-server-mysql:zabbix-server \ --restart unless-stopped \ --network=zabbix-net \ --privileged=true \ -d -p 10050:10050 zabbix/zabbix-agent:latest ``` 其他参考命令: > #docker ps -a > > #docker network ls > > #docker network inspect 网络id > > #docker update --restart unless-stopped 容器id > > #docker export 容器id \> xxx.tar > > #docker load xxx.tar > > #docker logs 容器id > > #docker exec -it 容器id /bin/bash

相关推荐
香吧香2 小时前
docker网络总结
docker
weixin_449290013 小时前
docker_ollama
docker·容器·eureka
weixin_537765803 小时前
【容器技术】虚拟化原理与Docker详解
运维·docker·容器
-dcr3 小时前
41.docker完整版
docker
胡斌附体3 小时前
docker健康检查使用
运维·docker·依赖·健康检查
火车头-1104 小时前
【docker 部署nacos1.4.7】
运维·docker·容器
j200103225 小时前
Docker 部署与管理
docker·容器·eureka
weixin_537765805 小时前
【Docker基础】常用命令详解
docker·容器·eureka
mobº5 小时前
K8s 集群部署微服务 - yaml 版本(三)
微服务·容器·kubernetes