在安装好docker后安装docker-compose
pip install -U docker-compose
curl -L https://raw.githubusercontent.com/docker/compose/1.2.0/contrib/completion/bash/docker-compose > /etc/bash_completion.d/docker-compose
sudo curl -L https://github.com/docker/compose/releases/download/1.2.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
sudo chmod a+x /usr/local/bin/docker-compose
下载需要的镜像
docker pull mysql:5.7
docker pull zabbix/zabbix-server-mysql:latest
docker pull zabbix/zabbix-web-nginx-mysql:latest
docker pull zabbix/zabbix-agent:latest
创建docker-compose.yml
version: '3'
services:
mysql:
image: mysql:5.7
container_name: mysql
restart: always
command:
--character-set-server=utf8mb4
--default-authentication-plugin=mysql_native_password #解决客户端连接不了问题
ports:
- '3306:3306'
environment:
MYSQL_DATABASE: zabbix
MYSQL_USER: zabbix
MYSQL_PASSWORD: zabbix_pwd
MYSQL_ROOT_PASSWORD: root_pwd
volumes:
- /mysql-data:/var/lib/mysql
zabbix-server:
image: zabbix/zabbix-server-mysql:latest
container_name: zabbix-server
environment:
DB_SERVER_HOST: mysql
MYSQL_DATABASE: zabbix
MYSQL_USER: zabbix
MYSQL_PASSWORD: zabbix_pwd
MYSQL_ROOT_PASSWORD: root_pwd
ports:
- '10051:10051'
links:
- mysql
depends_on:
- mysql
zabbix-web-nginx-mysql:
image: zabbix/zabbix-web-nginx-mysql:latest
container_name: zabbix-web-nginx-mysql
restart: always
environment:
DB_SERVER_HOST: mysql
MYSQL_DATABASE: zabbix
MYSQL_USER: zabbix
MYSQL_PASSWORD: zabbix_pwd
MYSQL_ROOT_PASSWORD: root_pwd
ZBX_SERVER_HOST: zabbix-server
PHP_TZ: Asia/Shanghai
ports:
- '80:80'
- '443:443'
links:
- mysql
- zabbix-server
depends_on:
- mysql
- zabbix-server
zabbix-agent:
image: zabbix/zabbix-agent:latest
container_name: zabbix-agent
restart: always
environment:
ZBX_HOSTNAME: Zabbix server
ports:
- '10050:10050'
links:
- zabbix-server
depends_on:
- zabbix-server
运行容器
docker-compose up -d
检查容器
##查看所有运行的容器
[root@localhost /]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
0d04f6cb2074 zabbix/zabbix-web-nginx-mysql:latest "docker-entrypoint.sh" 44 minutes ago Up 44 minutes 0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp zabbix-web-nginx-mysql
08f222f292ad zabbix/zabbix-agent:latest "/sbin/tini -- /usr/…" 44 minutes ago Up 44 minutes 0.0.0.0:10050->10050/tcp zabbix-agent
6fc47c28f5a9 zabbix/zabbix-server-mysql:latest "/sbin/tini -- /usr/…" 44 minutes ago Up 44 minutes 0.0.0.0:10051->10051/tcp zabbix-server
0eda796c9303 mysql:5.7 "docker-entrypoint.s…" 44 minutes ago Up 44 minutes 0.0.0.0:3306->3306/tcp, 33060/tcp mysql