当前位置: 首页 > java >正文

11-docker单机版的容器编排工具docker-compose基本使用

文章目录

  • 一.docker-compose概述
    • 1.什么是docker-compose
    • 2.安装docker-compose
  • 二.docker-compose常用命令总结
  • 三.docker-compose案例-zabbix5.4 或者zabbix7.2
    • 1.编写zabbix的docker-compose.yml 配置文件
    • 2.使用docker-compose工具管理zabbix容器

一.docker-compose概述

1.什么是docker-compose

	所谓的容器编排工具,指的是批量管理一组容器的方法目前比较主流的单机编排工具自然是"docker-compose",其可以描述docker如何启动一组容器关于compose文件编写规范可参考GitHub链接哟:https://github.com/compose-spec/compose-spec/blob/master/spec.md

2.安装docker-compose

(1)需要先安装epel环境[root@docker01 ~]# yum -y install epel-release(2)安装docker-compose[root@docker01 ~]# yum -y install docker-compose

在这里插入图片描述

二.docker-compose常用命令总结

推荐阅读:https://docs.docker.com/compose/gettingstarted/https://docs.docker.com/compose/compose-file/compose-file-v3/https://docs.docker.com/compose/compose-file/compose-file-v2/

三.docker-compose案例-zabbix5.4 或者zabbix7.2

1.编写zabbix的docker-compose.yml 配置文件

注意!!!,需要安装什么版本。直接修改即可

cat > docker-compose.yml <<EOF
version: '3'services:mysql-server:image: mysql:8.0restart: alwaysenvironment:MYSQL_ROOT_PASSWORD: root_pwdMYSQL_DATABASE: zabbixMYSQL_USER: zabbixMYSQL_PASSWORD: zabbix_pwdnetworks:- zabbix-netcommand: ["--character-set-server=utf8", "--collation-server=utf8_bin", "--default-authentication-plugin=mysql_native_password"]zabbix-java-gateway:image: zabbix/zabbix-java-gateway:alpine-5.4-latestrestart: alwaysnetworks:- zabbix-netzabbix-server:depends_on:- mysql-serverimage: zabbix/zabbix-server-mysql:alpine-5.4-latestrestart: alwaysenvironment:DB_SERVER_HOST: mysql-serverMYSQL_DATABASE: zabbixMYSQL_USER: zabbixMYSQL_PASSWORD: zabbix_pwdMYSQL_ROOT_PASSWORD: root_pwdZBX_JAVAGATEWAY: zabbix-java-gatewaynetworks:- zabbix-netports:- "10051:10051"zabbix-web-nginx-mysql:depends_on:- zabbix-serverimage: zabbix/zabbix-web-nginx-mysql:alpine-5.4-latestports:- "80:8080"restart: alwaysenvironment:DB_SERVER_HOST: mysql-serverMYSQL_DATABASE: zabbixMYSQL_USER: zabbixMYSQL_PASSWORD: zabbix_pwdMYSQL_ROOT_PASSWORD: root_pwdnetworks:- zabbix-netnetworks:zabbix-net:EOF#zabbix7.2版本
cat > docker-compose.yml <<EOF
version: '3'services:mysql-server:image: mysql:8.0restart: alwaysenvironment:MYSQL_ROOT_PASSWORD: root_pwdMYSQL_DATABASE: zabbixMYSQL_USER: zabbixMYSQL_PASSWORD: zabbix_pwdnetworks:- zabbix-netcommand: ["--character-set-server=utf8", "--collation-server=utf8_bin", "--default-authentication-plugin=mysql_native_password"]zabbix-java-gateway:image: zabbix/zabbix-java-gateway:alpine-7.2-latestrestart: alwaysnetworks:- zabbix-netzabbix-server:depends_on:- mysql-serverimage: zabbix/zabbix-server-mysql:alpine-7.2-latestrestart: alwaysenvironment:DB_SERVER_HOST: mysql-serverMYSQL_DATABASE: zabbixMYSQL_USER: zabbixMYSQL_PASSWORD: zabbix_pwdMYSQL_ROOT_PASSWORD: root_pwdZBX_JAVAGATEWAY: zabbix-java-gatewaynetworks:- zabbix-netports:- "10051:10051"zabbix-web-nginx-mysql:depends_on:- zabbix-serverimage: zabbix/zabbix-web-nginx-mysql:alpine-7.2-latestports:- "80:8080"restart: alwaysenvironment:DB_SERVER_HOST: mysql-serverMYSQL_DATABASE: zabbixMYSQL_USER: zabbixMYSQL_PASSWORD: zabbix_pwdMYSQL_ROOT_PASSWORD: root_pwdnetworks:- zabbix-net
networks:zabbix-net:
EOF#命令行直接运行,前台运行
docker-compose up#放入后台运行
docker-compose up -d温馨提示:#以上是简单的模版使用,如何还需要添加其他功能,还在是某些字段。参考:https://github.com/zabbix/zabbix-docker/blob/24cec2127311e8c6367fbfe67216c0dd9d60b5c4/docker-compose_v3_alpine_mysql_local.yaml#想使用Ubuntu也有:https://github.com/zabbix/zabbix-docker/blob/24cec2127311e8c6367fbfe67216c0dd9d60b5c4/docker-compose_v3_ubuntu_mysql_local.yaml#看不懂字段意思,查找
https://docs.docker.com/reference/compose-file/build/https://docs.docker.com/reference/compose-file/services/#或者直接使用,豆包,或者Kimi,百度等搜素问问
https://www.doubao.com/
https://kimi.moonshot.cn/

在这里插入图片描述

2.使用docker-compose工具管理zabbix容器

docker-compose up:创建容器并启动.
docker-compose down:停止并删除容器.
docker-compose up -d :创建容器并后台启动
docker-compose start:容器全部启动 
[root@docker01 docker-compose]# docker container ps
[root@docker01 docker-compose]# docker-compose stop zabbix-java-gateway  zabbix-serverdocker-compose stop zabbix-server:仅启动abbix-server服务对应的容器
docker-compose stop:容器全部停止
docker-compose stop zabbix-server:仅停止zabbix-server服务对应的容器
docker-compose restart容器全部重启docker-compose scale zabbix-java-gateway=3  # 要注意端口冲突的问题,指定的services不应该有ports属性温馨提示:其他帮助信息请直接参考:"docker-compose --help"
pose stop zabbix-server:仅停止zabbix-server服务对应的容器
docker-compose restart容器全部重启docker-compose scale zabbix-java-gateway=3  # 要注意端口冲突的问题,指定的services不应该有ports属性温馨提示:其他帮助信息请直接参考:"docker-compose --help"

在这里插入图片描述

http://www.xdnf.cn/news/17657.html

相关文章:

  • centos 7 如何安装 ZipArchive 扩展
  • MySQL 数据库表操作与查询实战案例
  • MySQL概述
  • 计算机网络:ovn数据通信都是用了哪些协议?
  • 集成电路学习:什么是URDF Model统一机器人描述格式模型
  • 智能合约执行引擎在Hyperchain中的作用
  • 北京-4年功能测试2年空窗-报培训班学测开-第七十三天-投递简历-[特殊字符][特殊字符]
  • LangChain 框架 Parser 讲解
  • 介绍一下jQuery的AJAX异步请求
  • Nacos-1--什么是Nacos?
  • vue+flask基于规则的求职推荐系统
  • 3Ds Max的魔改利器:RailClone - 程序化建模的革命者
  • Linux Web服务器与WordPress部署笔记
  • DNS 服务详解与 BIND 部署
  • Django ORM查询技巧全解析
  • 基于Springboot+UniApp+Ai实现模拟面试小工具九:移动端框架搭建
  • 第二章:变量与简单数据类型
  • 【lucene】livedocs描述
  • 【华为机试】208. 实现 Trie (前缀树)
  • 图像打标工具/方法的分类和特点说明
  • Launcher3启动
  • 实战:用 PyTorch 复现一个 3 层全连接网络,训练 MNIST,达到 95%+ 准确率
  • IoT/透过oc_lwm2m/boudica150 源码中的AT指令序列,分析NB-IoT接入华为云物联网平台IoTDA的工作机制
  • Java使用“Microsoft Print To PDF”打印时如何指定输出路径
  • Vue 利用el-table和el-pagination组件,简简单单实现表格前端分页
  • AI时代基于云原生的 CI/CD 基础设施 Tekton
  • Dubbo从入门到实战:分布式服务开发指南
  • USB 基本描述符
  • 视频播放器哪个好用?视频播放器PotPlayer,KMP Player
  • 下一个排列 的 思路总结