【云原生 | 51】Docker三剑客之Docker Compose第二节

news2024/11/19 23:25:36

🍁博主简介
        🏅云计算领域优质创作者
        🏅2022年CSDN新星计划python赛道第一名

        🏅2022年CSDN原力计划优质作者
        🏅阿里云ACE认证高级工程师
        🏅阿里云开发者社区专家博主

💊交流社区:CSDN云计算交流社区欢迎您的加入!

目录

1、Compose命令说明

​2、Compose命令使用

3、Compose环境变量 

 👑👑👑结束语👑👑👑​


1、Compose命令说明

对于Compose来说,大部分命令的对象既可以是项目本身,也可以指定为项目中的服务或者容器。如果没有特别说明,命令对象将是项目,这意味着项目中所有的服务都会受到命令影响。
执行docker-compose[COMMAND]--help或者docker-compose help[COMMAND]可以查看具体某个命令的使用格式。
Compose命令的基本的使用格式是:
docker-compose [-f=<arg>...] [options] [COMMAND] [ARGS...]

命令选项如下:

·-f,--file FILE指定使用的Compose模板文件,默认为docker-compose.yml,可以多次指定。
·-p,--project-name NAME指定项目名称,默认将使用所在目录名称作为项目名。
·--x-networking使用Docker的可拔插网络后端特性(需要Docker 1.9及以后版本)。
·--x-network-driver DRIVER指定网络后端的驱动,默认为bridge(需要Docker 1.9及以后版本)。
·--verbose输出更多调试信息。
·-v,--version打印版本并退出。

命令列表如下:

 2、Compose命令使用

1.build 

格式为:docker-compose build[options][SERVICE...]
构建(重新构建)项目中的服务容器。
服务容器一旦构建后,将会带上一个标记名,例如对于web项目中的一个db容器,可能是web_db。可以随时在项目目录下运行docker- compose build来重新构建服务。

选项包括:

·--force-rm删除构建过程中的临时容器。
·--no-cache构建镜像过程中不使用缓存(这将加长构建过程)。
·--pull始终尝试通过拉取操作来获取更新版本的镜像。

2.help 

获得一个命令的帮助。

3.kill 

格式为:docker-compose kill[options][SERVICE...]

通过发送SIGKILL信号来强制停止服务容器。

支持通过-s参数来指定发送的信号,例如通过如下指令发送SIGINT信号:
$ docker-compose kill -s SIGINT

4.logs 

格式为:docker-compose logs[options][SERVICE...]

查看服务容器的输出。默认情况下,docker-compose将对不同的服务输出使用不同的颜色来区分。可以通过--no-color来关闭颜色。该命令在调试问题的时候十分有用。

5.pause 

格式为:docker-compose pause[SERVICE...]
暂停一个服务容器。

6.port 

格式为:docker-compose port[options]SERVICE PRIVATE_PORT
显示某个容器端口所映射的公共端口。

选项:

·--protocol=proto指定端口协议,TCP(默认值)或者UDP。
·--index=index如果同一服务存在多个容器,指定命令对象容器的序号(默认为1)。

7.ps 

格式为:docker-compose ps[options][SERVICE...]
列出项目中目前的所有容器。
选项:-q只打印容器的ID信息。

8.pull 

格式为:docker-compose pull[options][SERVICE...]
拉取服务依赖的镜像。
选项:--ignore-pull-failures忽略拉取镜像过程中的错误。

9.restart 

格式为:docker-compose restart[options][SERVICE...]
重启项目中的服务。
选项为-t,--timeout TIMEOUT,指定重启前停止容器的超时(默认为10秒)。

10.rm 

格式为:docker-compose rm[options][SERVICE...]
删除所有(停止状态的)服务容器。推荐先执行docker-composestop命令来停止容器。

选项如下:

·-f,--force强制直接删除,包括非停止状态的容器。一般尽量不要使用该选项。
·-v删除容器所挂载的数据卷。

11.run 

在指定服务上执行一个命令。
例如:
$ docker-compose run ubuntu ping docker.com
将会启动一个ubuntu服务容器,并执行ping docker.com命令。 默认情况下,如果存在关联,则所有关联的服务将会自动被启 动,除非这些服务已经在运行中。该命令类似于启动容器后运行指定的命令,相关卷、链接等都将会按照配置自动创建。有两个不同点:
·给定命令将会覆盖原有的自动运行命令;
·不会自动创建端口,以避免冲突。
如果不希望自动启动关联的容器,可以使用--no-deps选项,例如:
$ docker-compose run --no-deps web python manage.py shell
将不会启动Web容器所关联的其他容器。
选项:
·-d在后台运行服务容器。
·--name NAME为容器指定一个名字。
·--entrypoint CMD覆盖默认的容器启动指令。
·-e KEY=VAL设置环境变量值,可多次使用选项来设置多个环境变量
·-u,--user=""指定运行容器的用户名或者uid。
·--no-deps不自动启动关联的服务容器。
·--rm运行命令后自动删除容器,d模式下将忽略。
·-p,--publish=[]映射容器端口到本地主机。
·--service-ports配置服务端口并映射到本地主机。
·-T不分配伪tty,意味着依赖tty的指令将无法运行。

12.scale 

设置指定服务运行的容器个数。
通过service=num的参数来设置数量。例如:
$ docker-compose scale web=3 db=2
将启动3个容器运行web服务,2个容器运行db服务。一般情况下,当指定数目多于该服务当前实际运行容器,将新创建并启动容器;反之,将停止容器。

选项为-t,--timeout TIMEOUT,停止容器时候的超时(默认为10秒)。

13.start 

格式为:docker-compose start[SERVICE...]
启动已经存在的服务容器。

14.stop 

格式为:docker-compose stop[options][SERVICE...]
选项为-t,--timeout TIMEOUT,停止容器时候的超时(默认为10秒)。

15.unpause 

格式为:docker-compose unpause[SERVICE...]
恢复处于暂停状态中的服务。

16.up 

格式为:docker-compose up[options][SERVICE...]
该命令十分强大,它将尝试自动完成包括构建镜像,(重新)创建服务,启动服务,并关联服务相关容器的一系列操作。链接的服务都将会被自动启动,除非已经处于运行状态。
可以说,大部分时候都可以直接通过该命令来启动一个项目。默认情况,docker-compose up启动的容器都在前台,控制台将会同时打印所有容器的输出信息,可以很方便进行调试。当通过Ctrl-C停止命令时,所有容器将会停止。如果使用docker-compose up-d,将会在后台启动并运行所有的容器。一般推荐生产环境下使用该选项。默认情况,如果服务容器已经存在,docker-compose up将会尝试停止容器,然后重新创建(保持使用volumes-from挂载的卷),以保证新启动的服务匹配docker-compose.yml文件的最新内容。如果用户不希望容器被停止并重新创建,可以使用docker-compose up--no-recreate。这样将只会启动处于停止状态的容器,而忽略已经运行的服务。如果用户只想重新部署某个服务,可以使用docker-compose up--no-deps- d<SERVICE_NAME>来重新创建服务并后台停止旧服务,启动新服务,并不会影响到其所依赖的服务。

选项:

·-d在后台运行服务容器。
·--no-color不使用颜色来区分不同的服务的控制台输出。
·--no-deps不启动服务所链接的容器。
·--force-recreate强制重新创建容器,不能与--no-recreate同时使用。
·--no-recreate如果容器已经存在了,则不重新创建,不能与--force-recreate同时使用。
·--no-build不自动构建缺失的服务镜像。
·-t,--timeout TIMEOUT停止容器时候的超时(默认为10秒)。

17.migrate-to-labels 

格式为:docker-compose migrate-to-labels。
重新创建容器,并添加label。主要用于升级1.2及更早版本中创建的容器,添加缺失的容器标签。

实际上,最彻底的办法当然是删除项目,然后重新创建

18.version 

格式为:docker-compose version。

打印版本信息。

3、Compose环境变量 

环境变量可以用来配置Compose的行为,参见表24-2。以DOCKER_开头的变量和用来配置Docker命令行客户端的使用一样。如果使用 boot2docker,$(boot2docker shellinit)将会设置它们为正确的值。

 👑👑👑结束语👑👑👑

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

打卡第11天|力扣20. 有效的括号 、 1047. 删除字符串中的所有相邻重复项 、150. 逆波兰表达式求值 。

今天是打卡第十一天&#xff0c;题目主要是栈结构的运用20. 有效的括号题目链接如下&#xff1a;20. 有效的括号我们挨个遍历字符串&#xff0c;每有一个向左的字符串我们就往栈里面存一个向右的括号&#xff0c;遍历到向右的括号时&#xff0c;如果栈中类型相同就弹出&#xf…

在日本之后,中国也发布新型光刻机,ASML加快对中国出口光刻机

由于美国的影响&#xff0c;ASML对中国出售光刻机一直都在摇摆之中&#xff0c;不过2022年底至少有三家中国芯片企业获得ASML的光刻机&#xff0c;显示出ASML的态度再次发生变化&#xff0c;导致如此结果或许在于中国近期宣布的新型光刻机。一、开辟芯片制造新技术说到绕开ASML…

2022年9月CSP认证题解 如此编码(k进制),何以包邮?(背包问题),吉祥物投票(珂朵莉树、懒标记、并查集)

T1 如此编码 思路 由公式 和前缀乘积定义 得mb1a1b2⋅⋅⋅a1a2⋅⋅⋅an−1bnmb_1a_1\times b_2a_1\times a_2\times\times a_{n-1}\times b_nmb1​a1​b2​⋅⋅⋅a1​a2​⋅⋅⋅an−1​bn​&#xff0c; 上述公式可以提取公共乘项aia_iai​&#xff0c;写成m(bnbn−1⋅⋅⋅…

一文搞懂内存映射原理及使用方法

a. 内存映射原理内存映射即在进程的虚拟地址空间中创建一个映射&#xff0c;分为两种&#xff1a;文件映射&#xff1a;文件支持的内存映射&#xff0c;把文件的一个区间映射到进程的虚拟地址空间&#xff0c;数据源是存储设备上的文件。匿名映射&#xff1a;没有文件支持的内存…

2. 因子(factor)、缺失数据(na)、字符串、时间序列数据

课程视频链接&#xff1a;https://www.bilibili.com/video/BV19x411X7C6?p1 本笔记参照该视频&#xff0c;笔记顺序做了些调整【个人感觉逻辑顺畅】&#xff0c;并删掉一些不重要的内容 系列笔记目录【持续更新】&#xff1a;https://blog.csdn.net/weixin_42214698/category_…

字符的编码与乱码

目录 前言 1 计算机中字符的编码分类 1.1 常见非Unicode编码 1.1.1 ASCII 1.1.2 ISO 8859-1 1.1.3 Windows-1252 1.1.4 GB2312 1.1.5 GBK 1.1.6 GB18030 1.1.7 Big5 1.1.8 编码汇总 1.2、Unicode编码 1.2.1 UTF-32 1.2.2 UTF-16 1.2.3 UTF-8 1.2.4 Unicode编码…

A1032 Sharing

Powered by:NEFU AB-IN Link 文章目录A1032 Sharing题意思路代码A1032 Sharing 题意 To store English words, one method is to use linked lists and store a word letter by letter. To save some space, we may let the words share the same sublist if they share the s…

2032.1.7 学习总结

1.string与int之间的相互转化问题 &#xff08;1&#xff09;int转string&#xff1a;使用to_string函数 引入头文件: #include<string> 转int&#xff0c;float&#xff0c;double都可以 string to_string (int val); string to_string (long val); string to_string…

Java外卖点餐系统小程序+数据库源码(带本地部署搭建文档)源码免费分享!

亲测Java在线点餐系统小程序数据库源码带本地部署搭建文档 需要源码学习可私信我获取。 小程序外卖扫码点餐为客户提供的是最方便的饮食方式,以快速、便捷的点餐业务送货上门为 -客户服务,这省去了客户很多不必要的时间和麻烦,给商家带来更多利益。同时,小程序外卖扫码点餐可…

STM32从固件库到HAL库

让坚持成为一种热爱&#xff0c;极致成为一种精神。历时10个月&#xff0c;目前我又重新回到了程序员的身份&#xff0c;2023想玩不一样的嵌入式。&#x1f680; 目录前言一、安装STM32CubeMX二、配置自己的HAL库MDK工程三、HAL库与固件库的区别1.句柄2.回调函数3.时钟配置4.HA…

Bulma - 免费开源的纯 CSS 前端 UI 框架,专注于构建移动优先的响应式 web 界面

简单易用的 CSS 框架&#xff0c;虽然只有一个 CSS 文件&#xff0c;但功能很强大&#xff0c;在国外很受开发者欢迎&#xff0c;推荐给大家。 关于 Bulma CSS 框架 Bulma 是一个简单、很容易自定义的 CSS UI 框架&#xff0c;提供了众多预定义好的样式&#xff0c;开发者可以…

宠物吸毛器控制板开发,构建理想人宠共居空间

目前养宠物的人越来越多&#xff0c;猫狗等宠物一直存在着严重的掉毛情况&#xff0c;宠物毛发可能会引起过敏等疾病反应&#xff0c;日常生活中清理工作是一大难题&#xff0c;市面上关于宠物的吸毛产品非常的少&#xff0c;为此沐渥开发了一款宠物吸毛器控制板&#xff0c;适…

奇怪,郭德纲小儿子八岁生日,现场照片发布不久却被删除了

2022年1月5日&#xff0c;对于北京德云社来说&#xff0c;是一个双喜临门好日子&#xff0c;首先德云社相声春晚开始录制&#xff0c;其次郭德纲的儿子郭汾阳&#xff0c;也要过八岁生日了。郭汾阳作为德云社的少班主&#xff0c;是郭德纲老师和董事长王惠所生&#xff0c;老来…

与ChatGPT的聊天:如何使用Python连接Neo4j并创建无向图?

0. 前言 尝试请ChatGPT帮写代码&#xff1a; 但发现ChatGPT可以给出逻辑上正确的程序&#xff0c;一旦具体深入询问&#xff0c;有可能会产生错误。 当然&#xff0c;也可能因为提问的人比较少&#x1f923; 不管怎么说&#xff0c;这篇可以当成是对ChatGPT茶余饭后的谈资&am…

数据库,计算机网络、操作系统刷题笔记28

数据库&#xff0c;计算机网络、操作系统刷题笔记28 2022找工作是学历、能力和运气的超强结合体&#xff0c;遇到寒冬&#xff0c;大厂不招人&#xff0c;可能很多算法学生都得去找开发&#xff0c;测开 测开的话&#xff0c;你就得学数据库&#xff0c;sql&#xff0c;oracle…

产品重要更新: GcExcel Java Edition 6.0.2 Crack

重要产品更新&#xff1a; JDK 6 和 7 已经走到了生命的尽头。自此&#xff0c; GcExcel Java Edition将不再支持它们&#xff0c;现在将从最新的v6 版本及更高版本开始以JDK 8为目标。GcExcel Java Edition 6.0.2 Crack by Ω578867473 GcExcel高速 Java Excel 电子表格 API …

Zookeeper简介

引言 在分布式环境下&#xff0c;如果舍弃SpringCloud&#xff0c;使用其他的分布式框架&#xff0c;那么注册心中&#xff0c;配置集中管理&#xff0c;集群管理&#xff0c;分布式锁&#xff0c;分布式任务&#xff0c;队列的管理想单独实现怎么办。 Zookeeper介绍 Zookeeper…

Flink 运行架构

1 Flink 运行时的组件 Flink 运行时架构主要包括四个不同的组件&#xff0c;它们会在运行流处理应用程序时协同工作&#xff1a;作业管理器&#xff08;JobManager&#xff09;、资源管理器&#xff08;ResourceManager&#xff09;、任务管理器&#xff08;TaskManager&#…

一篇文章让你掌握HTML(下)

目录 1. 列表标签 1.1 无序列表 1.2 有序列表 1.3 自定义列表 2. 表格标签 2.1 表格的基本标签 2.2 表格相关属性 2.3 表格标题和表头单元格标签 2.4 表格的结构标签 2.5 合并单元格 3. 表单标签 3.1 input系列标签 3.1.1 input系列标签-文本框 3.1.…

MATLAB-非线性方程(组)求解

求非线性方程或方程组解的问题也就是求函数零点的问题。对于任意函数&#xff0c;在求解范围内可能有零点&#xff0c;也可能没有;可能只有一个零点&#xff0c;也可能有多个甚至无数个零点。MATLAB没有可以求解所有函数零点的通用命令&#xff0c;下面将分别讨论一元函数和多元…