docker run 命令参数

user

docker run -it --name=ubn18 --gpus all --privileged=true --shm-size 8G ubuntu:18.04 /bin/bash

-it 是什么意思

4o

在运行 docker run 命令时,-it 是两个选项的组合,用于更好地与容器进行交互:

  1. -i 或 --interactive:这个选项会保持标准输入流(STDIN)打开,并与容器保持连接,即使是容器没有附加终端时。这样你可以在容器内部输入命令,尤其是在需要交互的环境中,例如使用 shell 时。
  2. -t 或 --tty:这个选项会分配一个伪终端(pseudo-TTY)并连接到容器中。这使得你的终端行为更像是一个连接到 shell 的操作系统终端,提供终端输出格式。

因此,结合使用 -it,意味着你将启动一个交互模式的终端连接到容器中,使得你可以在容器内部执行命令并与其进行交互。这个配置对于在容器内使用 Bash shell 或其他交互式应用程序时非常有用。

user

如果在 - it 里面 ctrl d 容器是不是直接退出了

4o

  是的,在使用 docker run -it 启动的容器中,当你按下 Ctrl + D 时,这通常表示你想关闭标准输入流,或者是在终端中发送一个 EOF(End of File)信号。
  如果你是在一个交互式 shell(例如 Bash)中使用 Ctrl + D,这将会退出该 shell。当你的交互式 shell 退出时,如果容器的主要进程(在这种情况下,就是 Bash)也停止了,那么整个容器会退出。
  因此,在 docker run -it 模式下,按 Ctrl + D 通常会导致容器退出,因为这关闭了主要进程(交互式 shell)。如果你希望保持容器运行,可以考虑在后台启动它,并确保有其他进程能保持活动,或使用 docker exec 附加到一个正在运行的容器上。

user

怎么在后台启动

4o

要在后台运行 Docker 容器,你可以使用 -d(或 --detach)选项。这样,容器会以分离模式启动,不会在终端中阻塞,这样终端会立即返回控制权。
例如,你可以这样运行一个 Ubuntu 容器:

docker run -d --name=ubn18 --gpus all --privileged=true --shm-size 8G ubuntu:18.04

这样,容器会在后台运行。你可以通过 docker ps 命令查看正在运行的容器,并使用 docker logs <container_id> 查看容器的日志输出。
如果你需要访问该容器的终端,可以使用 docker exec 命令附加到正在运行的容器上。例如:

docker exec -it ubn18 /bin/bash

这会让你启动一个新的交互式终端会话,使你可以与后台运行的容器进行交互。

user

docker run -d --name=ubn18 --gpus all --privileged=true --shm-size 8G ubuntu:18.04

这样直接会退出

4o

  当你使用 docker run -d 启动一个容器时,容器将在后台运行。不过,如果你启动了一个像 ubuntu:18.04 这样的基础镜像,而没有指定任何长期运行的进程,那么容器会立即退出。这是因为 Docker 容器的生命周期取决于其主进程的生命周期。如果主进程(在这种情况下是默认的 /bin/bash 或 /bin/sh)退出,容器也会停止。
要保持容器长时间运行,你可以执行以下方法之一:

  1. 运行一个休眠命令:你可以让容器执行一个不会立即结束的命令,比如长时间运行的进程或简单的休眠命令。
Copy
   docker run -d --name=ubn18 --gpus all --privileged=true --shm-size 8G ubuntu:18.04 bash -c "while true; do sleep 1000; done"

这会让容器进入一个无限的休眠循环,保持容器运行。

  1. 运行一个守护进程:如果你有一个在容器内需要运行的守护进程服务,你可以以此作为启动命令。
    例如,假设你运行一个简单的 web 服务器或其他服务。

  2. 使用容器编排器:在实际应用中,运行复杂的容器应用通常会用到像 Kubernetes 或 Docker Compose 这样的编排工具,以确保容器内有服务持续运行。

通过这几种方法,确保主进程持续运行才能够让容器后台保持运行,否则容器完成指定命令后会退出。

user annotation

也可以

docker run -it --name=ubn18 --gpus all --privileged=true --shm-size 8G ubuntu:18.04 /bin/bash

后用快捷键 ctrl P , ctrl Q 退出

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

全志H618 Android12修改doucmentsui功能菜单项

背景: 由于当前的文件管理器在我们的产品定义当中,某些界面有改动的需求,所以需要在Android12 rom中进行定制以符合当前产品定义。 需求: 在进入File文件管理器后,查看...功能菜单时,有不需要的功能菜单,需要隐藏,如:新建窗口、不显示的文件夹、故代码分析以及客制…

Elasticsearch问题总结

Fielddata access on the_id field is disallowed, you can re-enable it by updating the dynamic cluster setting: indices.id_field_data.enabledElasticsearch默认禁用_id字段进行排序&#xff0c;这是因为_id字段通常不需要进行聚合或排序操作&#xff0c;启用字段数据可…

基于WCF(C#)+SQL SERVER设计与实现的在线评测系统

基于WCF和SQL SERVER的在线评测系统设计与实现 摘要 目前&#xff0c;在线评测系统大多采用Linux系统作为运行平台&#xff0c;由于Linux系统人机交互能力差&#xff0c;使得系统部署要求高和维护难度大。本文针对以上问题进行分析&#xff0c;采用Windows操作系统作为运行平…

【C++图论】1993. 树上的操作|1861

本文涉及知识点 C图论 LeetCode 1993. 树上的操作 给你一棵 n 个节点的树&#xff0c;编号从 0 到 n - 1 &#xff0c;以父节点数组 parent 的形式给出&#xff0c;其中 parent[i] 是第 i 个节点的父节点。树的根节点为 0 号节点&#xff0c;所以 parent[0] -1 &#xff0c…

如何使用Python WebDriver爬取ChatGPT内容(完整教程)

大背景 虽然我们能用网页版chatGPT来聊天、写文章&#xff0c;但是我们采集大量的内容&#xff0c;就得不断地手动输入提问来获取答案&#xff0c;并且将结果复制到数据库来保存。如果整个过程能使用程序来做自然要节省很多的人力&#xff0c;精力和时间。 Python webdirver …

渗透测试-前端加密分析之RSA加密登录(密钥来源服务器)

本文是高级前端加解密与验签实战的第6篇文章&#xff0c;本系列文章实验靶场为Yakit里自带的Vulinbox靶场&#xff0c;本文讲述的是绕过RSA加密来爆破登录。 分析 这里的代码跟上文的类似&#xff0c;但是加密的公钥是通过请求服务端获取的 http://127.0.0.1:8787/crypto/js/…

Pytorch | 从零构建MobileNet对CIFAR10进行分类

Pytorch | 从零构建MobileNet对CIFAR10进行分类 CIFAR10数据集MobileNet设计理念网络结构技术优势应用领域 MobileNet结构代码详解结构代码代码详解DepthwiseSeparableConv 类初始化方法前向传播 forward 方法 MobileNet 类初始化方法前向传播 forward 方法 训练过程和测试结果…

Java进程占用的内存有哪些部分?

大家好&#xff0c;我是锋哥。今天分享关于【Java进程占用的内存有哪些部分?】面试题。希望对大家有帮助&#xff1b; Java进程占用的内存有哪些部分? 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 Java进程在运行时&#xff0c;会将内存划分为多个区域&#xf…

秒优科技-供应链管理系统 login/doAction SQL注入漏洞复现

0x01 产品简介 秒优科技提供的供应链管理系统,即秒优SCM服装供应链管理系统,是一款专为服装电商企业设计的全方位解决方案。是集款式研发、订单管理、物料管理、生产管理、工艺管理、收发货管理、账单管理、报表管理于一体的服装电商供应链管理解决方案。它涵盖了从企划到开…

音视频入门基础:MPEG2-TS专题(21)——FFmpeg源码中,获取TS流的视频信息的实现

一、引言 通过FFmpeg命令可以获取到TS文件/TS流的视频压缩编码格式、色彩格式&#xff08;像素格式&#xff09;、分辨率、帧率信息&#xff1a; ./ffmpeg -i XXX.ts 本文以H.264为例讲述FFmpeg到底是从哪个地方获取到这些视频信息的。 二、视频压缩编码格式 FFmpeg获取TS文…

VSCode:Markdown插件安装使用 -- 最简洁的VSCode中Markdown插件安装使用

VSCode&#xff1a;Markdown插件安装使用 1.安装Marktext2.使用Marktext 本文&#xff0c;将在Visual Studio Code中&#xff0c;安装和使用Markdown插件&#xff0c;以Marktext插件为例。 1.安装Marktext 打开VSCode&#xff0c;侧边栏中找到扩展模块(或CtrlShiftX快捷键)&am…

线性分类器(KNN,SVM损失,交叉熵损失,softmax)

KNN 工作机制 k-近邻算法的工作机制可以分为两个主要阶段&#xff1a;训练阶段和预测阶段。 训练阶段 在训练阶段&#xff0c;k-近邻算法并不进行显式的模型训练&#xff0c;而是简单地存储训练数据集。每个样本由特征向量和对应的标签组成。此阶段的主要任务是准备好数据&…

知乎 PB 级别 TiDB 数据库集群管控实践

以下文章来源于知乎技术专栏 &#xff0c;作者代晓磊 导读 在现代企业中&#xff0c;数据库的运维管理至关重要&#xff0c;特别是面对分布式数据库的复杂性和大规模集群的挑战。作为一款兼容 MySQL 协议的分布式关系型数据库&#xff0c;TiDB 在高可用、高扩展性和强一致性方…

Git版本控制工具--基础命令和分支管理

1.Git仓库的基本概念和流程 版本库的概念&#xff1a;版本库又名仓库&#xff0c;英文名repository,你可以简单的理解一个目录&#xff0c;这个目录里面的所有文件都可以被Git管理起来&#xff0c;每个文件的修改&#xff0c;删除&#xff0c;Git都能跟踪&#xff0c;以便任何…

EMQX构建简易的云服务

基本思路&#xff1a; 使用EMQX作为Mqtt brokermqtt-receive-server服务&#xff0c;用于接收设备上报的数据mqtt-sender-service服务&#xff0c;用于下发数据给设备KafKa实现数据解耦&#xff0c;mqtt-receive-server服务接收的数据简单处理下直接扔到Kafka中云服务各业务系…

基于MindSpore NLP的PEFT微调

创建notebook 登录控制台 创建notebook 如果出现提示按如下操作 回到列表页面创建notebook参数如下&#xff1a; 配置mindnlp环境 打开GitHub - mindspore-lab/mindnlp: Easy-to-use and high-performance NLP and LLM framework based on MindSpore, compatible with model…

半连接转内连接 | OceanBase SQL 查询改写

查询优化器是关系型数据库系统的核心模块&#xff0c;是数据库内核开发的重点和难点&#xff0c;也是衡量整个数据库系统成熟度的“试金石”。为了帮助大家更好地理解 OceanBase 查询优化器&#xff0c;我们撰写了查询改写系列文章&#xff0c;带大家更好地掌握查询改写的精髓&…

imx6ull qt多页面控制系统(正点原子imx系列驱动开发)

开题答辩完了也考完了四六级&#xff0c;赶紧来更新一下一个月前留下的坑吧 QAQ首先&#xff0c;因为毕业设计需要用到这些知识所以就从网络上找了一个智能车机系统&#xff0c;借鉴了一下大佬的项目思路&#xff0c;缝缝补补一个月终于完成了这一内容。 在这里先感谢从两位大佬…

Intel-ECI之Codesys PLC + Ethercat 远端IO + Codesys IDE编程

目录 一、 准备工作 二、安装Codesys 软件 PLC 三、 使用Codesys IDE 编程测试 CODESYS* 是领先的独立于制造商的 IEC 61131-3 自动化软件&#xff0c;适用于工程控制系统。它用于 Intel Edge Controls for Industrial&#xff08;Intel ECI 或 ECI&#xff09;&#xff0c;…

vscode的keil assistant 中搜索不到全局变量

搜不到 但是在包含的文件中输入 ../../../,就是全局搜索的结果 我的文件结构是&#xff1a;\Desktop\LVGL文件系统移植&#xff08;lvgl8&#xff0e;&#xff13;&#xff09;\Projects\MDK-ARM 盲猜是keil assistant 当前文件夹打开的时候是进入到了MDK-ARM文件夹层次&…