Docker compose容器编排

Docker compose容器编排

1、Docker compose简介

docker-compose是docker的编排工具,用于定义和运行一个项目,该项目包含多个docker容器,在如今的微服务时代,一个项目会存在多个服务,使用docker一个个部署操作的话就会很麻烦,如果使用docker编排工具一键部署,统一管理就会便捷很多,同时也提高了开发,运维效率。

1.1 什么是容器编排?

容器编排即是在docker客户端与docker服务器之间加入一个容器编排,通过容器编排的操作一次执行便可将整个微服务系统全部一键部署;简单来说,某些项目所需要的容器远不止一个,按照传统的做法就是一个个部署容器,有了容器编排之后可以一键部署所有容器。

compose.png

1.2 Docker compose如何实现容器编排?

docker compose容器编排和Dockerfile镜像构建一样通过编写yml文件,在yml文件中写入指令来完成容器的编排工作;docker compose编排文件默认名为:docker-compose.yml;一个docker-compose.yml文件就是一个项目。

docker compose容器编排的三步过程:

定义应用程序环境(镜像),已有镜像,Dockerfile构建镜像。
定义应用程序容器,docker-compose.yml以便它们可以在隔离环境中一起运行。
运行启动整个项目程序。

2、docker-compose.yml配置讲解

docker-compose.yml文件格式及编写注意事项:

不支持制表符tab键缩进,需要使用空格缩进

冒号、逗号、横杠后缩进1个空格

用#号注释

如果包含特殊字符用单引号引起来

布尔值须用引号引起来

docker-compose.yml文件配置详解:

version:"3.7"		 //指定compose版本,最好是3.0以上版本
services: 		 //配置服务(容器)httpd:		 //配置服务标识(唯一编号)container_name: xxx	 //容器名称image: httpd	 //配置容器镜像build:		 //build和image二选一context: .	 //上下文路径dockerfile: Dockerfiledepends_on:          //容器启动顺序,该容器依赖某个容器- xxxexpose:		 //容器开放端口- 80ports: 		 //配置容器映射端口号[数组]- 80:80volumes:		 //配置挂载卷- db_data:/var/www/htmlnetworks: 		 //配置容器网络[数组]- httpd_net         //网络名称privileged:"true"command: xxxx 	 //覆盖容器启动后默认执行的命令entrypoint:xxxx	 //覆盖容器启动后默认执行的命令networks: 		 //为网络指定配置httpd_net: 	 	 //配置网络名称driver: bridge	 //网络类型volumes: 		 //为卷指定配置db_data:driver: local

3、docker-compose工具安装及使用

3.1 docker-compose工具安装

docker-compose工具最新发行的版本地址:https://github.com/docker/compose/releases下载docker-compose工具1.29.2版本:curl -o /bin/docker-compose -L https://github.com/docker/compose/releases/download/1.29.2/docker-compose-Linux-x86_64赋予执行权限:
chmod +x /bin/docker-compose查看版本:[root@localhost ~]# docker-compose versiondocker-compose version 1.29.2, build 5becea4cdocker-py version: 5.0.0
CPython version: 3.7.10
OpenSSL version: OpenSSL 1.1.0l  10 Sep 2019

3.2 docker-compose工具使用

docker-compose up	//部署Compose应用,默认读取名为docker-compose.yml文件
-d			//后台运行docker-compose build 	//在运行项目前先构建项目所需镜像docker-compose ps	//列出本地docker-compose.yml文件里定义的正在运行的所有服务docker-compose stop	//停止所有服务,如果服务没有停止,可以使用docker-compose kill强制杀死服务docker-compose start	//开启所有服务docker-compose rm	//删除所有服务

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/179665.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机网络-应用层

文章目录 应用层协议原理万维网和HTTP协议万维网概述统一资源定位符HTML文档 超文本传输协议(HTTP)HTTP报文格式请求报文响应报文cookie 万维网缓存与代理服务器 DNS系统域名空间域名服务器和资源记录域名解析过程递归查询迭代查询 动态主机配置协议&…

硬件工程师到底可以从哪些方面提升自己?

大家好,这里是大话硬件。 最近在大话硬件群里,聊得比较多的就是讨论怎么提升自己的能力,怎么拿到更高的工资。我想,这可能并不是只在大话硬件群才有的话题,其实在每一位工作的人心里应该都在想的两个问题。 因此,这篇文章简单分享一下,作为一名硬件工程师,可以在做哪…

1220*2440mm建筑模板木工板:桥梁工程中的覆膜板选择

在桥梁工程中,选择合适的建筑模板木工板至关重要。其中,1220*2440mm规格的建筑模板木工板作为一种常见的选择,特别适用于混凝土工程和桥梁建设。本文将重点介绍这种规格的木工板作为覆膜板在桥梁工程中的应用。 1220*2440mm建筑模板木工板是一…

基于 golang 从零到一实现时间轮算法 (一)

前言 时间轮是用来解决海量百万级定时器(或延时)任务的最佳方案,linux 的内核定时器就是采用该数据结构实现。 应用场景 自动删除缓存中过期的 Key:缓存中设置了 TTL 的 kv,通过把该 key 对应的 TTL 以及回调方法注册…

第六讲:VBA与ACCESS的ADO连接中,所涉及的对象

《VBA数据库解决方案》教程(10090845)是我推出的第二套教程,目前已经是第二版修订了。这套教程定位于中级,是学完字典后的另一个专题讲解。数据库是数据处理的利器,教程中详细介绍了利用ADO连接ACCDB和EXCEL的方法和实…

vue 获取上一周和获取下一周的日期时间

效果图&#xff1a; 代码&#xff1a; <template><div><div style"padding: 20px 0;"><div style"margin-left: 10px; border-left: 5px solid #0079fe; font-size: 22px; font-weight: 600; padding-left: 10px">工作计划</…

uni-app离线打包在android studio创建的.jks证书,签名文件获取MD5问题

获取证书信息 keytool -list -v -keystore test.keystore 获取的信息中没有md5信息 可以使用以下方式获取md5. 先创建签名文件&#xff0c;放到项目目录下 配置build.gradle文件 在android studio 打开终端输入以下命令 ./gradlew signingReport 等待生成签名。 生成的内容…

uniapp subNvue 写的视频播放

文件下载地址 https://download.csdn.net/download/weixin_47517731/88500016https://download.csdn.net/download/weixin_47517731/88500016 1:在pages.json中配置视频播放页面 {/* 视频详情页面 */"path": "pages/detail-video/detail","style&q…

Android ConstraintLayout分组堆叠圆角ShapeableImageView

Android ConstraintLayout分组堆叠圆角ShapeableImageView <?xml version"1.0" encoding"utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout xmlns:android"http://schemas.android.com/apk/res/android"xmlns:app"…

【凡人修仙传】定档曝光,最新更新时间有所调整,期待值暴涨

Hello,小伙伴们&#xff0c;我是小郑继续为大家深度解析国漫资讯。 深度爆料&#xff0c;备受瞩目的动漫作品《凡人修仙传》终于在新年之际宣布定档了&#xff01;这个消息让广大动漫爱好者们激动不已。在某知名视频网站上&#xff0c;这部作品的官方发布了一个名为“新年番定…

Shell变量

Shell变量 本地变量变量定义取出变量值 特殊参数变量⾯试题分享 特殊状态变量脚本控制返回值获取上⼀次后台进程的PID再来分享一道面试题&#xff1a; 获取当前脚本的PID获取上次命令的最后一个参数 本地变量 定义Shell变量&#xff0c;变量名不需要加美元符 $ 本地变量只在⽤…

JS异常处理——throw和try、catch以及debugger

让我为大家介绍一下异常处理吧&#xff01; 异常处理是指预估代码执行过程中可能发生的错误&#xff0c;然后最大程度的避免错误的发生导致整个程序无法继续运行 throw 抛异常 第一种写法 function fun(x, y) {// undefined是false 但取反就是trueif (!x || !y) {// 第一种写…

【ChatGPT瀑布到水母】AI 在驱动软件研发的革新与实践

这里写目录标题 前言内容简介作者简介专家推荐读者对象目录直播预告 前言 计算机技术的发展和互联网的普及&#xff0c;使信息处理和传输变得更加高效&#xff0c;极大地改变了金融、商业、教育、娱乐等领域的运作方式。数据分析、人工智能和云计算等新兴技术&#xff0c;也在不…

VM虚拟机逆向 --- [NCTF 2018]wcyvm 复现

文章目录 前言题目分析 前言 第四题了&#xff0c;搞定&#xff0c;算是独立完成比较多的一题&#xff0c;虽然在还原汇编的时候还是很多问题。 题目分析 代码很简单&#xff0c;就是指令很多。 opcode在unk_6021C0处&#xff0c;解密的数据在dword_6020A0处 opcode [0x08, …

众佰诚:新手如何在抖音电商中脱颖而出

在这个信息爆炸的时代&#xff0c;短视频平台抖音已经成为了人们获取信息、娱乐和购物的重要渠道。越来越多的商家开始在抖音上开设店铺&#xff0c;希望通过这个平台实现销售增长。然而&#xff0c;对于新手来说&#xff0c;如何在众多的竞争对手中脱颖而出&#xff0c;成为了…

人工智能与卫星:颠覆性技术融合开启太空新时代

人工智能与卫星&#xff1a;颠覆性技术融合开启太空新时代 摘要&#xff1a;本文将探讨人工智能与卫星技术的融合&#xff0c;并介绍其应用、发展和挑战。通过深入了解这一领域的前沿动态&#xff0c;我们将展望一个由智能卫星驱动的未来太空时代。 一、引言 近年来&#xf…

时序预测 | Python实现ARIMA-CNN-LSTM差分自回归移动平均模型结合卷积长短期记忆神经网络时间序列预测

时序预测 | Python实现ARIMA-CNN-LSTM差分自回归移动平均模型结合卷积长短期记忆神经网络时间序列预测 目录 时序预测 | Python实现ARIMA-CNN-LSTM差分自回归移动平均模型结合卷积长短期记忆神经网络时间序列预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 时序预测 …

汽车标定技术(一):XCP概述

目录 1.汽车标定概述 2.XCP协议由来及版本介绍 3.XCP技术通览 3.1 XCP上下机通信模型 3.2 XCP指令集 3.2.1 XCP帧结构定义 3.2.2 标准指令集 3.2.3 标定指令集 3.2.4 页切换指令集 3.2.5 数据采集指令集 3.2.6 刷写指令集 3.3 ECU描述文件(A2L)概述 3.3.1 标定上位…

无声的世界,精神科用药并结合临床的一些分析及笔记(十)

目录 回 “ 家 ” 克服恐惧 奥沙西泮 除夕 酒与药 警告 离别 回 “ 家 ” 她的锥切手术进行的很顺利&#xff0c;按计划继续返回安定医院调节心理状态&#xff0c;病友们都盼着我们回“家”。当我俩跨入病区&#xff0c;大家都涌过来帮我们大包小包的拎着行李&#xff0…

【实战Flask API项目指南】之七 用JWT进行用户认证与授权

实战Flask API项目指南之 用JWT进行用户认证与授权 本系列文章将带你深入探索实战Flask API项目指南&#xff0c;通过跟随小菜的学习之旅&#xff0c;你将逐步掌握 Flask 在实际项目中的应用。让我们一起踏上这个精彩的学习之旅吧&#xff01; 前言 当小菜踏入Flask后端开发…