docker-compose-itd和d

docker run -itd和-d的区别

前言:

​ 今天在通过docker-compose启动一基于ubuntu的镜像容器时,发现启动后,容器会一直停止。但是通过docker run -itd是可以正常运行的。基于这个区别,找了一位大神(师傅)问了下,他让我执行一下docker run -d ,执行后发现也是立马停止。所以立马查了下docker run -ird和docke run -d的区别。

  1. -itd

    • -i:表示以交互模式运行容器,通常与 -t 一起使用,分配一个伪终端 (pseudo-TTY)。
    • -t:分配一个伪终端 (pseudo-TTY)。
    • -d:表示以后台方式 (detached mode) 运行容器,即容器在后台运行并且不会占用当前终端。

    使用 -itd 参数启动容器时,容器会在后台运行,并且你可以通过 docker attach 命令重新连接到容器的标准输入、输出和错误流,以进行交互操作。

    2.-d

    • -d:表示以后台方式 (detached mode) 运行容器,即容器在后台运行并且不会占用当前终端。
    • 运行后,会导致 bash 找不到要分配的伪终端。后台运行,其实是有前提的,如果没有前台进程,那么实际运行完docker run命令后,会处于退出状态,即exited
docker run -d --name my-redis redis bash
# 指定命令是bash,但显然bash在容器起来后,很快就会结束,导致没有前台进程,故容器处于退出状态

解决docker-compose不能启动容器

要使 Docker Compose 中的容器保持挂起状态,即在容器启动后保持运行而不自动退出,可以通过 docker-compose.yml 文件中的 command 字段来指定容器启动后要执行的命令

version: '3'
services:web:image: nginx:latestcontainer_name: webrestart: alwaysprivileged: trueports:- "26090:26090"command: tail -f /dev/null

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

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

相关文章

vue3与js的router基本使用方式

title: vue3与js的router基本使用方式 tags: vue3js abbrlink: ‘57270957’ date: 2024-04-17 18:54:47 第一步快捷引入的别名 使用路由需要大量在src文件中引用所需要的地址,并且组件中也需要很多的包的引用,将快速跳转到src这一文件的步骤进行简化操…

数据可视化与低代码开发应用:开启智能时代新篇章

随着大数据、人工智能等技术的飞速发展,数据可视化和低代码开发应用已经成为了当今时代最具代表性的技术趋势。本文将探讨其在各个领域的应用与价值,以及如何利用这些技术为企业和个人带来更高的效益。 数据可视化:让数据会说“话” 数据可视…

【数据处理报错】python空格多个分割字符串

a file.readline().strip("\n") a_list a.split(" ")这种方法只能分割1个空格,多分出来一个空格数据处理报错直接使用split()就可以了 str_list str.split()参考文章两种方法分割python多空格字符串https://blog.csdn.net/lwgkzl/article/de…

Redis实际应用中的解决方案

Redis缓存使用问题 1数据一致性 分析一下几种方案: 1:先更新缓存,再更新数据库 2:先更新数据库,在更新缓存 3:先删除缓存,后更新数据库 4:想更新数据库,后删除缓存 …

Docker在服务器linux下配置及打包【bash指令】

1.管理员将用户设置为docker用户 (注意:这里需要服务器管理员进行设置此句) sudo gpasswd -a ${user} docker2.列出docker镜像 docker images 3.列出正在运行的docker容器 docker ps 4.0.创建一个容器 docker pull python3.10 docker p…

STM32 同时使用 FMC 和 FSMC 问题

在一个项目中有同时和 FPGA 和 SDRAM 通讯的需求,分别使用 FSMC 和 FMC 来控制。 一般来说 SDRAM 64ms需要刷新所有行。用到的 SDRAM 为 8192 行,时钟用的 100M,故刷新寄存器计数值为 1560,正常也就这么写了。 但是在使用中发现…

前端 Android App 上架详细流程 (Android App)

1、准备上架所需要的材料 先在需要上架的官方网站注册账号。提前把手机号,名字,身份证等等材料准备好,完成开发者实名认证;软著是必要的,提前准备好,软著申请时间比较长大概需要1-2周时间才能下来&#xf…

需求文档怎么写?

1. 导言 我也来个导言: 写这篇博客的目的就是来解答一下下面几个问题: 需求文档怎么写?需求文档都应该包含哪些内容?怎样才算一个合格的需求文档? 产品需求文档(Product requriement document)&#xff…

全网首发亲测有用:python免费将chatgpt机器人接入个人微信(同时支持钉钉、QQ 以及别的语言模型如文心一言等)

一、获得免费chatgptAPI https://github.com/chatanywhere/GPT_API_free?tab=readme-ov-file 点击这个就可以获取一个免费的CHATGPT API key 或者觉得不够用的话,也可以付费购买在里面,看着价格很便宜,个人没有买过 tips: 转发API无法直接向官方接口api.openai.com发起…

Clickhouse 字符串函数 - 2

reverse​ 反转字符串。 reverseUTF8​ 以Unicode字符为单位反转UTF-8编码的字符串。如果字符串不是UTF-8编码,则可能获取到一个非预期的结果(不会抛出异常)。 format(pattern, s0, s1, …)​ 使用常量字符串pattern格式化其他参数。pat…

笔试强训Day20 动态规划 模拟

经此一役小红所向无敌 题目链接&#xff1a;A-经此一役小红所向无敌_牛客小白月赛37 (nowcoder.com) 思路&#xff1a; 水题 直接跟思路即可。 AC code&#xff1a; #include<iostream> using namespace std; typedef long long LL; LL a1,a2,b1,b2,t1,t2,sum; int m…

Spring中的DigestUtils:数据摘要的艺术与实用

1. 概述 DigestUtils 是 Spring Framework 提供的一个实用工具类&#xff0c;用于生成数据的摘要&#xff08;也称为哈希或散列&#xff09;。它封装了常见的哈希算法&#xff0c;如 MD5、SHA-1、SHA-256 等&#xff0c;使得开发者能够方便地对字符串、字节数组或其他数据源进…

专题五_位运算(3)

目录 137. 只出现一次的数字 II 解析 题解 面试题 17.19. 消失的两个数字 解析 题解 137. 只出现一次的数字 II 137. 只出现一次的数字 II - 力扣&#xff08;LeetCode&#xff09; 解析 注意这里指的是比特位上的01来进行统计的 题解 class Solution { public:int sin…

机器学习常见概念

1. 机器学习 定义&#xff1a; 机器学习是一种人工智能的分支&#xff0c;让计算机通过数据学习规律和模式&#xff0c;从而做出预测或做出决策&#xff0c;而无需明确编程指令。 应用场景&#xff1a; 机器学习广泛应用于各种领域&#xff0c;比如推荐系统、医疗诊断、金融风…

深入理解分布式事务⑧ ---->MySQL 事务的实现原理 之 MySQL 事务流程(MySQL 事务执行流程 和 恢复流程)详解

目录 MySQL 事务的实现原理 之 MySQL 事务流程&#xff08;MySQL 事务执行流程 和 恢复流程&#xff09;详解MySQL 事务流程1、MySQL 事务执行流程1-1&#xff1a;MySQL 事务执行流程如图&#xff1a; 2、MySQL 事务恢复流程2-1&#xff1a;事务恢复流程如下图&#xff1a; MyS…

基于V4L2框架的摄像头从上层到底层开发

文章目录 一、V4L2应用开发1、识别摄像头2、查看摄像头设备的能力3、查看支持视频格式4、设置视频格式5、申请帧缓冲6、启动采集7、出队取一帧图像8、入队归还帧缓冲9、停止视频采集10、退出释放资源 二、V4L2框架源码分析1、struct video_device2、struct v4l2_device *v4l2_d…

HAL库 嵌入式

HAL库 “HAL库”&#xff08;Hardware Abstraction Layer Library&#xff0c;硬件抽象层库&#xff09;通常是指在嵌入式系统开发中用来提供硬件操作抽象的软件库&#xff0c;使得应用程序可以在不直接操作硬件的情况下与硬件通信。这种库通常是由硬件制造商提供&#xff0c;用…

python json字符串怎么用format方法填充参数值报KeyError

python json字符串怎么用format方法填充参数值报KeyError 需求问题分析解决方案 需求 因为python中的字典和json中的一些变量有差异&#xff0c;比如&#xff1a;json中有null、true&#xff0c;在python中就不会被识别&#xff0c;只能转换成字符串&#xff0c;在通过loads()…

Java对象的比较(详解三种比较方式)

Java对象的比较 一、基本类型的比较二、引用类型的比较三、三种自定义比较的方式1、重写equals()方法2、基于Comparble接口比较3、基于Comparator比较器进行比较 一、基本类型的比较 对于Java中的基本类型而言&#xff0c;Java可以对其直接比较。整型浮点型就是直接比较其大小…

C#核心之面向对象-继承

面向对象-继承 文章目录 1、继承的基本规则1、基本概念2、基本语法3、示例4、访问修饰符的影响5、子类和父类的同名成员 2、里氏替换原则1、基本概念2、is和as3、基本实现 3、继承中的构造函数1、基本概念2、父类的无参构造函数3、通过base调用指定父类构造 4、万物之父和装箱拆…