三、Docker的基本组成和常用命令(二)

news2024/11/13 12:24:13

文章目录

      • 容器命令
        • 创建并启动容器
        • 列举运行的容器
        • 退出容器命令
        • 启动容器
        • 重启容器
        • 停止容器
        • 强制停止容器
        • 删除容器
      • 常用其他命令
        • 后台启动容器
        • 查看运行日志
        • 查看容器中的进程信息
        • 查看容器或镜像的元数据
        • 进入当前正在运行的容器
        • 从容器内拷贝文件到主机上


容器命令

说明:有镜像才能创建容器。

下面我们来下载一个CentOS镜像来测试。

docker pull centos

在这里插入图片描述

创建并启动容器

创建并启动一个容器的命令

docker run [OPTIONS] IMAGE [COMMAND]

OPTIONS中的一些参数

options说明
--name“容器新名字”: 为容器指定一个名称
-d后台运行容器,并返回容器ID,也即后台启动容器
-i以交互模式运行容器,通常与 -t 同时使用
-t为容器重新分配一个伪输入终端,通常与 -i 同时使用
-P:随机端口映射
-p指定端口映射,比如:-p 8080:8080,有以下四种格式:
-p ip:主机端口:容器端口
-p 主机端口:容器端口 (常用)
-p 容器端口
容器端口

启动并进入容器:

docker run -it centos /bin/bash

在这里插入图片描述

列举运行的容器

​ 我们要查看当前正在运行的容器有哪些,可以通过ps命令来查看

docker ps [OPTIONS]

OPTONS中的一些参数

OPTIONS说明
-a列出当前所有正在运行的容器+历史上运行过的容器
-l显示最近创建的容器
-n显示最近n个创建的容器
-q静默模式,只显示容器编号
–no-trunc不截断输出

在这里插入图片描述

退出容器命令

​ 我们启动了一个容器后,如何退出容器?可以使用exit命令,也可以使用快捷键Ctrl+P+Q。

exit
退出方式说明
exit容器停止退出
Ctrl+P+Q容器不停止退出

在这里插入图片描述

启动容器

docker start 容器ID或者名称

在这里插入图片描述

重启容器

docker restart 容器ID或者名称

在这里插入图片描述

停止容器

docker stop 容器ID或者名称

在这里插入图片描述

强制停止容器

docker kill 容器ID或者名称

在这里插入图片描述

删除容器

​ 有时候容器使用完就没有作用了,如果我们想要删除掉容器,这时可以通过rm命令

docker rm 容器ID                      #删除指定的容器,不能删除正在运行的容器,如果要强制删除 rm -f
docker rm -f $(docker ps -aq)        #强制删除所有的容器
docker ps -a -q | xargs docker rm    #删除所有的容器

在这里插入图片描述

常用其他命令

后台启动容器

docker run -d 容器名称

在这里插入图片描述

注意:通过上图可以看到,CentOS停止了。因为我们通过 docker ps 命令可以看到没有正在运行的容器,刚刚启动的容器已经退出了。

这是因为docker容器使用后台运行,就必须要有一个前台进程,docker发现没有应用,就会自动停止。

为了让容器能够一直执行,我们可以在启动容器后,在后台运行一个循环的脚本

docker run -d centos /bin/bash -c 'while true;do echo hello world;sleep 2;done'

在这里插入图片描述

查看运行日志

docker logs -t -f 容器ID                           #查看全部的运行日志
docker logs -t -f --tail 3(日志行数) 容器ID        #查看最近几行运行日志,这里是最近3行

在这里插入图片描述

在这里插入图片描述

查看容器中的进程信息

docker top 容器ID

在这里插入图片描述

查看容器或镜像的元数据

我们想要查看容器的细节可以通过inspect命令

docker inspect 容器ID

在这里插入图片描述

进入当前正在运行的容器

#通常容器都是使用后台方式运行的,需要进入容器,修改一些配置

#命令
#方式一
docker exec -it 容器ID bashShell

#方式二
docker attach -it 容器ID

#区别
#docker exec    进入容器后开启一个新的终端,可以在里面操作(常用)
#docker attach  进入容器正在执行的终端,不会启动新的进程
进入方式说明
exec在容器中打开新的终端,并且可以启动新的进程
attach直接进入容器启动命令的终端,不会启动新的进程

在这里插入图片描述

在这里插入图片描述

从容器内拷贝文件到主机上

​ 我们有时需要从容器中拷贝内容到宿主机中,可以使用以下命令:

docker cp 容器ID:容器内路径  目的主机路径

在这里插入图片描述

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

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

相关文章

【Linux】常用指令(二)

Yan-英杰的主页 悟已往之不谏 知来者之可追 C程序员,2024届电子信息研究生 目录 man指令 echo指令 补充: echo和cat的区别? CP指令 mv命令 ctrlc 指令 which指令 学习中遇到得问题: 1.如何看待指令? 2.在执行指令之前&#xf…

【MySQL】不就是MySQL——子查询

前言 今天我们来学习多表查询的下一个模块——子查询,子查询包括了标量子查询、列子查询、行子查询、表子查询,话不多说我们开始学习。 目录 前言 目录 一、子查询 1. 子查询的概念 2. 子查询语法格式 2.1 根据子查询结果不同可以分为:…

全志V3S嵌入式驱动开发(基于usb otg的spi-nor镜像烧入)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 说到了用usb otg来实现spi nand flash的烧入,这中间主要用到了PhoenixSuit软件。那么怎么用usb otg来实现spi nor flash的烧入呢&#…

从零开始 Spring Boot 47:缓存

从零开始 Spring Boot 47:缓存 图源:简书 (jianshu.com) Spring 提供一个简单但使用的缓存(Cache)机制,我们可以利用它来优化代码执行效率。 简单示例 老规矩,我们从一个简单示例开始: Serv…

RedHat红帽认证---RHCSA

💗wei_shuo的个人主页 💫wei_shuo的学习社区 🌐Hello World ! RHCSA node1 1.配置网络设置 将 node1 配置为具有以下网络配置:主机名:node1.domain250.example.comIP 地址:172.25.250.100子网…

基于Java+Swing实现聊天室

基于JavaSwing实现聊天室 一、系统介绍二、功能展示三、其它1.其他系统实现 四、获取源码 一、系统介绍 Java聊天室系统主要用于实现在线聊天,基本功能包括:服务端和客户端。本系统结构如下: (1)服务端: 1…

SpringBoot中使用Tomcat、Undertow、jetty等容器

文章目录 SpringBoot中使用Tomcat、Undertow、jetty等容器;1. 默认使用Tomcat容器,直接运行项目即可:Java -jar xxx.jar2. 使用undertow容器2-1 引入Maven依赖,同时屏蔽内置Tomcat2-2 Undertow容器的常用配置参考2-3 一个特别的报…

人工智能---D分离

D分离(D-Separation)是一种用来判断变量是否条件独立的图形化方法。相比于非图形化方法,D-Separation更加直观,且计算简单。对于一个DAG(有向无环图)E,D-Separation方法可以快速的判断出两个节点…

c++11 标准模板(STL)(std::basic_streambuf)(三)

定义于头文件 <streambuf> template< class CharT, class Traits std::char_traits<CharT> > class basic_streambuf; 类 basic_streambuf 控制字符序列的输入与输出。它包含下列内容并提供到它们的访问&#xff1a; 1) 受控制字符序列&#xff…

在Android手机上安装kali Linux 的 QA

本文仅提供在安装时遇到问题的解决方案&#xff0c;查看安装链接请进入教程页面。 教程 https://www.hestudio.net/posts/install-kali-on-android-renew.html 一些命令 这里只说明我的教程涉及到的命令&#xff0c;查看其他博主教程的命令请转到对应博主的文档里查看&…

Linux 学习记录38(C高级篇)

Linux 学习记录38(C高级篇) 本文目录 Linux 学习记录38(C高级篇)一、shell中的分支语句1. case...in语句2. shell中的通配符 二、shell中的循环结构1. while循环2. shell中的printf3. for循环(1. 类似C中的格式(2. shell中的格式(3. 连续列表 4. select ...in 语句5. 辅助控制关…

PyQt学习(二)-----图形的建立(柱状图,折线图,堆叠柱状图,饼图)

数据库列表如图所示&#xff0c;如何对其进行绘图&#xff1a; &#xff08;一&#xff09;柱状图的建立 (1)柱状图初始化 self.__iniBarChart() pyqtSlot()def __iniBarChart(self):chart QChart()chart.setTitle("Barchart 演示")chart.setAnimationOptions(QChar…

md5的特点以及加密原理

MD5的特点及加密原理 简介特点1.长度固定2.结果不可逆3.高度离散性4.抗碰撞性 适用场景1.用户密码保护2.文件传输完整性校验3.数字签名4.云盘秒传 加密原理一.1.对输入的内容进行补位使其长度变成 N * 512 448 &#xff08;即长度对512取余之后 余数为448&#xff09;2.再往后补…

【数据可视化】大作业(意向考研高校的数据可视化)

文章目录 前言一、数据介绍1.1 基本信息1.2 考研信息1.3 导师信息 二、预处理及分析2.1 数据预处理2.1.1 考研信息预处理2.1.2 导师信息预处理 2.2 数据分析 三、可视化方法及结果3.1 可视化方法3.2 可视化结果展示3.2.1 基本信息3.2.2 考研信息3.2.3 导师信息 四、总结五、附录…

pip install安装CPM-Bee出现ModuleNotFoundError: No module named ‘torch‘的解决方案

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…

WPF开发txt阅读器18:用json格式存储配置文件

文章目录 json参数保存 txt阅读器系列&#xff1a; 需求分析和文件读写目录提取类&#x1f48e;列表控件与目录&#x1f48e;快捷键翻页字体控件绑定&#x1f48e;前景/背景颜色书籍管理系统&#x1f48e;用树形图管理书籍语音播放&#x1f48e;播放进度显示&#x1f48e;快进…

网工大题题型总结(2)---设备类型及设备故障问题

&#xff08;一&#xff09;设备选择 2018年上半年 试题一 根据表 1-1 及图 1-1 可知&#xff0c;在图 1-1 中为了保护内部网络&#xff0c;实现包过滤功能&#xff0c;位置A 应部署(6)设备&#xff0c;其工作在(7)模式. &#xff08;6&#xff09;防火墙 &#xff08;7&a…

AIGC教育(续篇):探索掌握AIGC,引领未来的人才之路

&#xff08;本文阅读时间&#xff1a;5 分钟&#xff09; 1 未来人才的核心竞争力&#xff1a; 蓬勃绽放的潜力 展望未来&#xff0c;我们不禁思考&#xff1a;当自动化工具日益普及&#xff0c;且代替人力的成本并不高昂时&#xff0c;每个人的工具属性在未来工作中所占比重必…

Git提交规范

目录 1、commit message format消息格式 2、还原 3、提交类型 4、Subject 5、Body 6、Footer 7、git-commit-plugin 插件 以下规范参考Angular提交的规范。 对于如何格式化git commit消息&#xff0c;我们有非常精确的规则。 这导致更多 在浏览项目历史时&#xff0c;易…

【Visual Studio】报错 C2653,使用 C++ 语言,配合 Qt 开发串口通信界面

知识不是单独的&#xff0c;一定是成体系的。更多我的个人总结和相关经验可查阅这个专栏&#xff1a;Visual Studio。 这个 Bug 是我做这个工程时遇到的&#xff1a;【Visual Studio】Qt 的实时绘图曲线功能&#xff0c;使用 C 语言&#xff0c;配合 Qt 开发串口通信界面。 文…