分享好友 最新动态首页 最新动态分类 切换频道
【Docker】docker常用命令
2024-12-26 06:53

需要云服务器等云产品来学习Linux可以移步/-->腾讯云<--/官网,轻量型云服务器低至112元/年,新用户首次下单享超低折扣。

【Docker】docker常用命令


目录

一、镜像仓库架构图

二、docker仓库命令

1、登录仓库docker login

2、拉取镜像docker pull

3、推送镜像docker push

4、查找镜像docker search

5、登出仓库docker logout

三、docker镜像命令

1、列出本地镜像docker images

2、查看镜像详细信息docker image inspect

3、标记本地镜像,将其归入某一仓库docker tag

4、删除镜像docker rmi/删除容器docker rm

5、将指定的镜像打包成tar文件docker save

6、将docker save的tar包还原回来docker load

7、显示镜像历史docker history

8、删除不使用的镜像docker image prune

四、容器命令

1、创建一个新容器并运行一个命令docker run/创建一个新容器但不运行docker create(命令和docker run一样,docker run多一个-d选项)

-i、-t、-d选项:-it搭配使用,-d后台运行

-p选项:指定端口映射

--name选项:在容器启动时为它取一个名字

--cpuset-cpus="0-2" or --cpuset-cpus="0,1,2": 绑定容器到指定 CPU 运行

-m :设置容器使用内存最大值(示例为500m

--link=[]: 添加链接到另一个容器,让两个容器能相互访问

--rm :shell 退出的时候自动删除容器

2、列出容器docker ps

3、查看容器日志docker logs

4、将当前终端连接到正在运行的某个Docker容器的标准输入、输出和错误docker attach

5、在容器中执行命令docker exec

6、将停止的容器重新启动docker start/将运行的容器停止docker stop

7、重启容器docker restart

8、强制退出容器docker kill

9、查看容器中运行的进程信息docker top

10、显示容器资源的使用情况docker stats

11、查看容器详细信息docker container inspect

12、查看指定容器所对外映射端口docker port

13、在容器和宿主机之间拷贝文件docker cp

14、 检查容器中文件结构的更改docker diff

15、从容器中创建一个新的自定义镜像docker commit

16、暂停/取消暂停容器中的所有进程docker pause/docker unpause

17、导出容器内容为tar包docker export/将导出的tar包还原为镜像docker import

18、阻塞运行直到容器停止,并打印退出码docker wait

19、容器重命名docker rename

20、删除所有停止的容器docker container prune

21、更新容器配置docker update

五、nginx

六、busybox


镜像仓库:存放镜像的仓库,每个镜像仓库包含多个tag标签

tag标签:每个标签对应一个镜像

docker指南:Docker Docs

docker官方仓库:https://hub.docker.com/

命令

别名

功能

docker login

登录仓库

docker pull

docker image pull

拉取镜像

docker push

docker image push

推送镜像

docker search

查找镜像

docker logout

登出仓库

 
 

从镜像仓库拉取或更新指定镜像

 
 

 
 

一般去hub.docker.com网站里找,较少使用命令。

 
 
 
 
 
 
 
 
 
 

比如启动nginx容器,就可以通过该命令查看nginx的启动方式(Cmd字段)和端口(ExposedPorts字段

和docker push配合使用

 
 
 
 
 
 
 

两台服务器之间通过ssh传输文件scp myfile root@xxx.xxx.xxx.xxx:/filepath

docker history显示每个层(layer)的创建者、创建时间、大小等信息。

 
 
 

也可以加-a选项,将会清理所有不使用的镜像。

docker image prune命令可以删除以下类型的镜像

  1. 悬挂的镜像(dangling images: 这些是没有与任何容器关联的镜像,可能是之前构建的中间层镜像,或者由于某些原因没有被正确标记的镜像。
  2. 未被使用的本地镜像: 如果某个镜像没有被任何容器使用,它被认为是未被使用的。

这个命令的目的是为了清理系统中不再需要的镜像,以节省磁盘空间。在使用之前,需要确保没有重要的镜像会被删除,因为这个命令是不可逆的。

这个命令和docker rmi的区别在于docker rmi更倾向于手动删除某个镜像。

-d: 后台运行容器,并返回容器 ID

-i: 以交互模式运行容器,通常与 -t 同时使用

-P: 随机端口映射,容器内部端口随机映射到主机的端口

-p: 指定端口映射,格式为主机(宿主)端口:容器端口

-t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用

--name="nginx-lb": 为容器指定一个名称

-h "mars": 指定容器的 hostname

-e username="ritchie": 设置环境变量

--cpuset-cpus="0-2" or --cpuset-cpus="0,1,2": 绑定容器到指定 CPU 运行

-m :设置容器使用内存最大值

--network="bridge": 指定容器的网络连接类型

--link=[]: 添加链接到另一个容器

--volume , -v: 绑定一个卷

--rm :shell 退出的时候自动删除容器

-i、-t、-d选项:-it搭配使用,-d后台运行

 

-p选项:指定端口映射

 

如果没有用-p将端口映射出来:sudo docker run -d nginx:1.23.4-perl,外部浏览器是访问不到容器的nginx的端口的。

当然也可以用sudo docker run -d -P nginx:1.23.4-perl来随机映射端口sudo docker ps查看随机分配的端口。

--name选项:在容器启动时为它取一个名字

 

--cpuset-cpus="0-2" or --cpuset-cpus="0,1,2": 绑定容器到指定 CPU 运行

 

-m :设置容器使用内存最大值(示例为500m

 

--link=[]: 添加链接到另一个容器,让两个容器能相互访问

 

--rm :shell 退出的时候自动删除容器

带--rm,退出后并不会留下记录

 
 
 
 
 
 

关键参数

--sig-proxy:是否将所有信号代理,默认是true(退出将导致容器退出,若设置为false,则不会影响容器。


连接容器后将会接管该容器的标准输入、标准输出、标准错误,所以网页端一刷新,终端立马接收到相关log信息。若按下ctrl+c,该容器将会退出

如果在退出时不想退出容器,则需要加上--sig-proxy=false将信号代理

 
 

-d: 分离模式,在后台运行

-i: 以交互模式运行容器,通常与 -t 同时使用

-t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用

-e设置环境变量

-u/--user: 指定用户来执行命令

-w/--workdir:指定工作目录

 
 
 
 

它可以重启运行、停止甚至已退出的容器。

 
 

docker stop发送温柔的SIGTERM信号,docker kill发送暴力的SIGKILL信号。

 
 

例如有些容器如Nginx中就没有ps命令,要查看容器的进程信息就需要用docker top

 
 
 
 
 
 
 
 
 
 

C:修改过;A:新增;D:删除

 
 

-a: 提交的镜像作者

-c: 使用Dockerfile指令创建镜像,可以修改启动指令

-m: 提交时的说明文字

-p在commit时,将容器暂停。

 

每次commit,生成的镜像会保存当前容器的一些修改。

通过剥夺容器进程的时间片来暂停进程。

 
 

docker export命令仅导出容器的文件系统,不包括容器的元数据(例如标签、端口映射、卷等)或容器的运行状态。如果还原时需要这些信息,使用docker save/docker load来保存还原。

 
 
 
 
 
 
 
 

--cpus: cpu数量

--cpuset-cpus: 使用哪几个cpu

-m/--memory: 内存限制

--memory-swap交换内存

--cpu-period用来指定容器对cpu的使用要在多长时间做一次重新分配

--cpu-quota用来指定这个周期内,最多可以有多少时间跑这个容器。

 
 
 

命令安装

 

使用docker安装

 

最新文章
2022年Google开发者大会纪录
有幸参加过2019谷歌开发者大会,当时就让我相当的震撼。给我的感觉,谷歌是一家技术赋能的企业,更是一家真心希望用技术改变未来的企业。时过三年,谷歌开发者大会又一次在中国召开,很幸运这一次通过CSDN又
AI声音字幕制作指南:从创建文件到完整创作流程详解
在数字化时代,技术的飞速发展为咱们带来了多便利,其中之一便是声音字幕制作。这项技术不仅可以为视频内容添加专业的语音旁白,还能实现自动字幕识别,大大提升了工作效率。本文将为您详细介绍声音字幕制作的完整流程,从创建文件到最创作
2025 年的 SEO:专家揭示主要趋势和见解
​​我们喜欢说 SEO 总是在变化,2024 年证明了这一点。几乎没有比这更具挑战性和令人兴奋的一年了。但随着我们进入 2025 年,我们确信我们还没有看到它的最后一刻。随着每个人都依赖 AI,搜索和搜索行业将迎来另一场巨变。在这篇文章中,
DELL 戴尔 P2217H 显示器开箱轻测
最近想要买一台1080P分辨率的21英寸带DP接口的小屏幕显示器。初步看中了优派VG2253型号和戴尔P2217H型号,最后因为遇到戴尔显示器搞促销,就入手了P2217H。现在就和大家一起分享显示器的开箱和使用心得。戴尔P2217H显示器的基本参数:可视
AI智能助手 33.1116
AI助手是一款基于人工智能技术的智能应用程序,包括AI聊天问答、AI绘图、AI翻译、AI写作、AI助手、云笔记、云便签等多个模块,可以帮助用户解决各种问题,提高工作和生活的效率。细节修复
11英寸便携娱乐笔记本 戴尔M101z评测
作者:小熊在线-yansan 前言  如今的IT设备已经向轻薄化发展,比如手机、电视机。笔记本电脑也是如此,谁不喜欢又轻又薄的笔记本电脑呢?但在很多人眼里,轻薄笔记本电脑的价格往往非常昂贵,小笔记本仅剩低性能的上网本可以选择。在AMD
chatGPT爆火,什么时候中国能有自己的“ChatGPT“
目录 引言 一、ChatGPT爆火 二、中国何时能有自己的"ChatGPT" 三、为什么openai可以做出chatGPT? 四、结论 随着人工智能技术的不断发展,自然语言处理技术也逐渐成为了研究的热点之一。其中,ChatGPT作为一项领先的自
20款AI绘画生图软件的优缺点对比
以下是20款AI生图软件的对比。 DeepArt:优点:使用深度学习算法生成艺术风格的图像,效果独特。缺点:生成图像的时间可能较长,需要等待。DALL-E:优点:由OpenAI开发的模型,能够根据文
1-7月汽车销量排行榜总榜单!你的爱车排第几?
【2024年1-7月汽车销量排行榜 总榜单】乘联会数据显示,2024年1-7月国内狭义乘用车市场累计零售销量1156.7万辆,同比增长2.4%。其中,轿车市场累计销量533.2万辆,同比下降1.8%;MPV市场零售销量56.4万辆,同比下跌8.4%;SUV市场累计销量56
ChatGPT 检索插件支持向量数据库:解锁数据库新机遇
数据库名称简介Pinecone其是一个全托管的 SaaS 向量数据库厂商(支持 GCPAWS),专为速度、规模和快速部署到生产而设计。它支持混合搜索,是目前唯一原生支持 SPLADE 稀疏向量的数据存储。Weaviate其是一个开源向量数据库。它允许用户存储
相关文章
推荐文章
发表评论
0评