狂神Docker笔记之:Docker的常用命令

Docker容器回顾之运维篇 背景 接上一篇《Docker复习之部署篇》,本文继续对Docker之日常维护常用操作做回顾总结。 操作命令 2.1 Docker 容器查看 首先,管理员对docker做日常维护,需要了解现有环境有多少docker实例,并连接进入docker实例虚拟机进行对应的管理维护; 我们执行 docker ps 命令来查看容器名称:docker ps -a或docker ps //显示当前正在运行的容器,输出如下: 参数概览: 示例: 1)显示最后被创建的容器:docker ps -l //相当于 dock 阅读详情

docker官网的命令大全:https://docs.docker.com/engine/reference/commandline/docker/

1.镜像命令

1.docker version

        显示docker的版本信息

2.docker info

        显示更完全的信息

3.docker images

[root@localhost /]# docker images
REPOSITORY    TAG       IMAGE ID       CREATED        SIZE
hello-world   latest    d1165f221234   4 months ago   13.3kB
  • repository        镜像的仓库源
  • tag                   镜像的标签
  • image id          镜像的id
  • created            镜像创建的时间
  • size                  镜像的大小
[root@localhost /]# docker images --help

Usage:  docker images [OPTIONS] [REPOSITORY[:TAG]]

List images

Options:
  -a, --all             Show all images (default hides intermediate images)
      --digests         Show digests
  -f, --filter filter   Filter output based on conditions provided
      --format string   Pretty-print images using a Go template
      --no-trunc        Don't truncate output
  -q, --quiet           Only show image IDs
  • -a    显示所有的镜像
  • -q    只显示镜像的id
  • -f     过滤镜像

4.docker search

命令行:

docker search [软件名]

或者我们也可用通过docker官网来搜索,我们可以在里面看到版本号等更详细的信息。

https://hub.docker.com/

我们可以根据它的版本号进行下载 

我们还可以用命令行搜索

 搜索mysql

5.docker pull 下载镜像

根据上面docker search的搜索,我们可以根据docker的搜索下载,比我们下载tomcat:

[root@localhost /]# docker pull tomcat
Using default tag: latest
latest: Pulling from library/tomcat
627b765e08d1: Pull complete 
c040670e5e55: Pull complete 
073a180f4992: Pull complete 
bf76209566d0: Pull complete 
f10db7ba7580: Pull complete 
5b2f970878fa: Pull complete 
ed434bfebf18: Pull complete 
f6c437110aa9: Pull complete 
a772951f83db: Pull complete 
752225c3768e: Pull complete 
Digest: sha256:6e40250d8fac4eca05c2067cb81f79427e4ddbaf4e78d5ecd21c35e8c5f2bfcf
Status: Downloaded newer image for tomcat:latest
docker.io/library/tomcat:latest

然后我们看下下载的镜像大小:

[root@localhost /]# docker images
REPOSITORY    TAG       IMAGE ID       CREATED        SIZE
tomcat        latest    46cfbf1293b1   5 days ago     668MB
hello-world   latest    d1165f221234   4 months ago   13.3kB

我淦,怎么下个tomcat这么大?

根据docker仓库搜索到的版本,我们可以指定版本下载:

使用命令:

docker pull mysql:5.7 

 

6.docker rmi 删除镜像

删除下载的tomcat

docker rmi tomcat

[root@localhost /]# docker images
REPOSITORY    TAG       IMAGE ID       CREATED        SIZE
tomcat        latest    46cfbf1293b1   5 days ago     668MB
hello-world   latest    d1165f221234   4 months ago   13.3kB
[root@localhost /]# docker rmi 46cfbf1293b1
Untagged: tomcat:latest
Untagged: tomcat@sha256:6e40250d8fac4eca05c2067cb81f79427e4ddbaf4e78d5ecd21c35e8c5f2bfcf
Deleted: sha256:46cfbf1293b176161813fa05bb8f7e82df1ec7def5c226c48bc48a60ed305ac7
Deleted: sha256:6748c687a38bae8ee5179c1b7c3fc05347dab445a5322f30e62c80348997d99c
Deleted: sha256:4e78f4eefb564a3492c5840bfcf17a0bed07fda1e59127c66058dd7553ed7f9b
Deleted: sha256:99b6cc44dbf7b0b4809ede178ae7fb27fef1401c8b2415be0dc18b6153ff233f
Deleted: sha256:046e7218b905a3de840f00a2aa7081fc53ace4ffba9661d471d59bfdcfa5b4c1
Deleted: sha256:3095bb61fd62bf2c2fd6849289c6043e8866bf104ca0959be3fc3da5bab0be1e
Deleted: sha256:f33d6ed931ff64c63168af00c7544d148d01fda66831246572ff2bfcacbcf2d6
Deleted: sha256:017b9704876de2443b332b1dfec580d365184b514eb0af43f1d59637e77af9bb
Deleted: sha256:98fc59c935e697d6375f05f4fa29d0e1ef7e8ece61aed109056926983ada0ef4
Deleted: sha256:c21ff68b02e7caf277f5d356e8b323a95e8d3969dd1ab0d9f60e7c8b4a01c874
Deleted: sha256:afa3e488a0ee76983343f8aa759e4b7b898db65b715eb90abc81c181388374e3

删除所有的docker镜像

docker rmi -f $(docker images -aq)

2.容器命令

说明:我们有了镜像才可以创建容器,Linux,下载一个centos镜像来测试学习

docker pull centos
[root@localhost /]# docker pull centos
Using default tag: latest
latest: Pulling from library/centos
7a0437f04f83: Pull complete 
Digest: sha256:5528e8b1b1719d34604c87e11dcd1c0a20bedf46e83b5632cdeac91b8c04efc1
Status: Downloaded newer image for centos:latest
docker.io/library/centos:latest
[root@localhost /]# 

新建容器并启动

docker run[可选参数] image
docker run [可选参数] image | docker container run [可选参数] image 
#参书说明
--name="Name"		#容器名字 tomcat01 tomcat02 用来区分容器
-d					#后台方式运行
-it 				#使用交互方式运行,进入容器查看内容
-p					#指定容器的端口 -p 8080(宿主机):8080(容器)
		-p ip:主机端口:容器端口
		-p 主机端口:容器端口(常用)
		-p 容器端口
		容器端口
-P(大写) 				随机指定端口

# 测试、启动并进入容器

启动并进入我们安装的centos的容器

[root@localhost ~]# docker run -it centos /bin/bash
[root@1fdd979c08c7 /]# 

我们查看一下这个容器里面的内容:

[root@1fdd979c08c7 /]# ls -l
total 0
lrwxrwxrwx.   1 root root   7 Nov  3  2020 bin -> usr/bin
drwxr-xr-x.   5 root root 360 Jul 28 14:48 dev
drwxr-xr-x.   1 root root  66 Jul 28 14:48 etc
drwxr-xr-x.   2 root root   6 Nov  3  2020 home
lrwxrwxrwx.   1 root root   7 Nov  3  2020 lib -> usr/lib
lrwxrwxrwx.   1 root root   9 Nov  3  2020 lib64 -> usr/lib64
drwx------.   2 root root   6 Dec  4  2020 lost+found
drwxr-xr-x.   2 root root   6 Nov  3  2020 media
drwxr-xr-x.   2 root root   6 Nov  3  2020 mnt
drwxr-xr-x.   2 root root   6 Nov  3  2020 opt
dr-xr-xr-x. 122 root root   0 Jul 28 14:48 proc
dr-xr-x---.   2 root root 162 Dec  4  2020 root
drwxr-xr-x.  11 root root 163 Dec  4  2020 run
lrwxrwxrwx.   1 root root   8 Nov  3  2020 sbin -> usr/sbin
drwxr-xr-x.   2 root root   6 Nov  3  2020 srv
dr-xr-xr-x.  13 root root   0 Jul 28 14:34 sys
drwxrwxrwt.   7 root root 145 Dec  4  2020 tmp
drwxr-xr-x.  12 root root 144 Dec  4  2020 usr
drwxr-xr-x.  20 root root 262 Dec  4  2020 var
[root@1fdd979c08c7 /]# 

从上面我们可以看到,在这个容器里面的结构和我们新装的Linux的结构差不多。但是这个容器里面的很多命令是不完善的。

退出容器:exit

 查看所有运行的容器:

[root@localhost ~]# docker ps
CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES
[root@localhost ~]# 

从上面可以看出,目前docker中没有运行的系统,可以查看ps的所有命令。

[root@localhost ~]# docker ps --help

Usage:  docker ps [OPTIONS]

List containers

Options:
  -a, --all             Show all containers (default shows just running)
  -f, --filter filter   Filter output based on conditions provided
      --format string   Pretty-print containers using a Go template
  -n, --last int        Show n last created containers (includes all states) (default -1)
  -l, --latest          Show the latest created container (includes all states)
      --no-trunc        Don't truncate output
  -q, --quiet           Only display container IDs
  -s, --size            Display total file sizes
[root@localhost ~]# 

2.1 退出容器

我们之前使用exit直接退出容器,那么我们怎样让系统在后台运行呢?

Ctrl+Q+P  #容器不停止退出

删除容器

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

停止和重启容器操作

docker start 容器id        #启动容器
docker restart 容器id      #重启容器
docker stop 容器id         #停止容器
docker kill 容器id         #强制停止容器

3.常用其他命令

3.1 后台启动容器

#命令 docker run -d 镜像名
[root@localhost ~]# docker run -d centos

#问题docker ps ,发现centos停止了

#常见的坑,docker容器使用后台运行,就必须要有一个前台进程,docker发现没有应用,就会自动停止
#例如安装一个nginx,容器启动后,发现自己没有提供服务,就会立即停止,就是没有程序了

3.2 日志

docker logs --help

3.3 查看docker进程内部的信息

docker top [ID]

3.4 查看容器的信息

docker inspect [ID]

3.5 进入当前正在运行的容器

方式一:

docker exec -it [ID] /bin/bash

 方式二:

docker attach [ID]

exec和attach的区别:

  • exec进入容器后开启一个新的终端,可以在里面操作
  • attach进入容器正在执行的终端,不会启动新进程 

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

docker cp 容器id:容器内路径  目的主机路径
[root@localhost ~]# docker ps
CONTAINER ID   IMAGE     COMMAND       CREATED          STATUS          PORTS     NAMES
c852b2658f2b   centos    "/bin/bash"   12 minutes ago   Up 12 minutes             elegant_edison
f7fdc29761a6   centos    "/bin/bash"   13 minutes ago   Up 13 minutes             focused_wescoff
[root@localhost ~]# docker attach c852b2658f2
[root@c852b2658f2b /]# ls  
bin  dev  etc  home  lib  lib64  lost+found  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var
[root@c852b2658f2b /]# cd home/
[root@c852b2658f2b home]# touch text.java
[root@c852b2658f2b home]# ls
text.java
[root@c852b2658f2b home]# exit  
exit
[root@localhost ~]# docker cp c852b2658f2b:/home/text.java /root
[root@localhost ~]# ls
79.log  anaconda-ks.cfg                    dump6379.rdb  dump.rdb                    redis-6.2.4.tar.gz
81.log  apache-zookeeper-3.6.3-bin.tar.gz  dump81.rdb    jdk-8u281-linux-x64.tar.gz  text.java
[root@localhost ~]# 

以上命令是:现在docker容器中新建一个text.java文件,然后退出至Linux终端,通过docker cp 将text.java文件拷贝至/root文件夹下。

目前的拷贝是一个手动过程,未来我们使用-V卷的技术,可以实现同步

狂神说docker(最全笔记) 一.Docker入门 1. Docker 为什么会出现 2. Docker的历史 3.Docker最新超详细版教程通俗易懂 Docker是基于Go语言开发的!开源项目 官网 官方文档Docker文档是超详细的 仓库地址 4. 虚拟化技术和容器化技术对比 4.1. 虚拟化技术的缺点 资源占用十分多 冗余步骤多 启动很慢 2.2. 容器化技术 比较Docker和虚拟化技术的不同 传统虚拟机, 虚拟出一条硬件,运行一个完整的操作系统,然后在这个系统上安装和运行软. 阅读详情

相关推荐

【狂神说】Docker 学习笔记【基础篇】

学习思想而非学技术,技术日新月异,唯有思想长盛不衰,润泽后生 学习资料: 【狂神说Java】Docker最新超详细版教程通俗易懂_哔哩哔哩_bilibili Docker快速入门总结笔记_huangjhai的博客-优快云博客 (74条消息) docker 进阶 之容器数据卷 DockerFile Docker网络 — 狂神说_cheng的博客-优快云博客 官网:https://www.docker.com/ 文档地址: https://docs.docker.com/ (Docker 官网文档超级详.

weixin_46703850的博客 6887

Scheduled Sampling实战解析:从理论困惑到代码落地

本文深入解析了Scheduled Sampling技术在时序预测任务中的实战应用,从理论困惑到代码实现全面覆盖。通过动态调整Teacher Forcing Ratio,有效解决了训练与预测时输入不一致的问题,提升模型在实际场景中的表现。文章详细介绍了PyTorch实现代码、衰减策略选择及实战注意事项,帮助开发者快速掌握这一关键技术。

weixin_33736048的博客 703

qcc51xx如何配置spdif输入

qcc51xx如何配置spdif输入。

Alex_886的博客 1373

Docker镜像下载状态详解:深入理解镜像拉取过程

本文深入解析Docker镜像下载过程中的各种状态信息,帮助用户理解镜像拉取机制。Docker镜像由多层结构组成,pull命令会显示"Downloading"、"Pull complete"等状态,分别表示正在下载、已完成下载解压等不同阶段。文章介绍了镜像基础结构、各状态含义、常见应用场景,并提供了优化下载速度、故障排查的方法,以及使用镜像加速器等实用技巧。通过理解这些状态信息,用户可以更高效地管理Docker镜像,特别是在处理大型镜像或复杂网络环境时。

一名在A股的韭菜,永远加仓,永远热泪盈眶。好来斯技术博客,`https://howlaisi.com`,微信公众号:韭菜张师傅。 1169

从零配置华为S5720交换机VLAN:Web界面与命令行双模式详解(附拓扑图)

本文详细解析华为S5720交换机VLAN配置的全过程,涵盖Web界面与命令行(CLI)双模式操作指南。从基础环境准备到多交换机环境配置同步,特别针对S5720-52X系列交换机的VLANif接口、端口分配策略及交换机堆叠技术进行深入讲解,并附实用拓扑图与配置示例,助力企业网络管理员高效完成VLAN部署。

happy2的博客 1370

MTK平台高效部署Qwen2.5大模型:从转换到推理全流程解析

本文详细解析了在联发科(MTK)NeuroPilot平台上高效部署Qwen2.5大模型的全流程。内容涵盖从环境搭建、模型转换、量化优化到编译部署与上机推理的完整步骤,重点分享了模型转换与模型运行的关键实践与避坑指南,旨在帮助开发者将大语言模型成功集成至移动及边缘设备。

zeta9的博客 376

【docker系列】镜像分层原理及容器层写时复制

本文核心内容:docker镜像分层与容器层介绍、为什么会产生镜像分层?、什么是写时复制?

字母哥博客 1万+

保姆级教程:在Rockchip RK3588 SDK中,如何为你的新硬件板子创建第一个DTS文件

本文提供在Rockchip RK3588 SDK中为自定义硬件创建首个DTS文件的详细教程。通过分析DTS在RK3588开发中的角色、快速定位参考设计、实操步骤及调试验证方法,帮助开发者高效完成硬件板级配置,特别适合嵌入式Linux系统开发者参考。

weixin_28678831的博客 285

Docker学习三常用命令(帮助命令,镜像命令,容器命令,常用其他命令)

帮助命令 docker version # 显示docker的版本信息 docker info # 显示docker的系统(system)信息,包括镜像和容器的数量 docker --help # 帮助命令,可以看到全部的帮助命令 帮助文档的地址:https://docs.docker.com/engine/reference/commandline/build/ 镜像命令 docker images 查看本地主机上的镜像 这个可以使用–help查看这“一个”命令的相关帮助信息 [root@iz2zeg

无极 2209

V4L2教程(1):Ubuntu V4L2开发环境搭建与设备探索

欢迎来到V4L2学习指南的第一篇!本文将带你从零开始,在Ubuntu系统上搭建完整的V4L2视频采集开发环境。无论你是想开发视频监控、视频会议还是机器视觉应用,掌握V4L2都是Linux视频开发的必经之路。 **本节学习目标**: - 理解V4L2的基本概念和架构 - 搭建Ubuntu下的V4L2开发环境 - 掌握v4l2-ctl等调试工具的使用 - 学会检测和配置USB摄像头设备

琅嬛福地 417

【腾讯小龙虾 WorkBuddy 专栏 03】技能(Skills)制作全教程!自定义技能编写、导出分享、导入使用一步到位

🔥腾讯AI智能体WorkBuddy自定义技能全攻略 本文为零基础用户提供WorkBuddy自定义技能的完整教程,涵盖技能概念、编写规范到实操全流程。核心内容包括: 技能本质:标准化任务指令模板,可固化重复操作流程 三大价值:一键执行重复任务/跨设备共享/降低使用门槛 实操演示:以"桌面文档自动分类"为例,分步讲解编写、测试、导出 共享方案:支持单技能/批量导出,通过任意渠道传输分享 导入指南:3秒完成他人技能加载,并提供常见问题解决方案 高阶优化:增加异常处理、版本管理等提升技能普适性

AI人人懂 2961

狂神笔记链接整理

狂神所有笔记链接整理 有更好的烦请call me 感谢 技术 链接 基础面试题 https://gitee.com/li123456sen/openclass 多线程 (凑合用) https://blog.youkuaiyun.com/weixin_44502509/article/details/106794227 网络编程(凑合用) https://blog.youkuaiyun.com/qq_38377803/article/details/105480602 java注解与反射(凑合用) ht

lisen01070107的博客 7654

2025华为od机试真题B卷【字符串计数匹配】Java&Go 实现

给你一个字符串str和整数k,返回满足以下条件的所有子字符串个数: 1.恰好包含k个字母。 2.数字0-9各出现至少一次。

MISAYAONE的博客 639

B站狂神Docker学习笔记

内容主要基于B站狂神老师的Docker基础视频与部分网络docker博客总结,按照个人理解所整理总结。PDF需要的自取:https://yxmiaoyu.lanzouu.com/b01dm3ehg 密码:1234

异侠 2万+

YOLO26改进策略【Neck】| ICCV2025 反向卷积 Converse2D 数学逆运算提重构 + 特征域建模降伪影,提升多尺度目标检测精度

本文记录的是利用Converse2D 算子改进 YOLO26 的上采样。(Converse 2D Convolution)通过正则化最小二乘闭式解与深度化空间建模结合,实现YOLO26特征提取与上采样阶段的卷积逆运算及特征精准重构。本文利用算子,通过闭式解的非迭代计算还原卷积下采样后的原始特征,再通过可学习核与自适应正则化参数稳定逆问题求解,同时依托圆形填充与插值初始估计保留特征高频细节,对YOLO26中不同尺度检测目标的特征进行针对性重构强化、抑制卷积/转置卷积带来的伪影与信息损失干扰,在特征融合与上采样

Limiiiing的博客 655

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

狂神说docker学习笔记2020

狂神说docker学习笔记2020 文章目录狂神说docker学习笔记2020一 Docker概述(1)Docker的作用一 Docker的安装(1)Docker的基本组成(1)Docker的安装(2)卸载docker(3)docker 镜像的配置二 Docker run流程和Docker原理三 Docker的常用命令(1) 帮助命令(2) 镜像命令(3)容器命令(4) 其他容器命令(4) 小结(全部基础命令)四 Docker安装练习1 安装Nginx2 安装Nginx 安装 tomcat3 部署ES +

weixin_43691773的博客 3285

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

狂神docker学习笔记

狂神docker学习笔记

Davina_yu的博客 6538

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

狂神说-Docker笔记

Docker概述 Docker安装 Docker命令 镜像命令 容器命令 操作命令 …… Docker镜像 容器数据卷 DockerFile Docker网路原理 IDEA整合Docker Docker Compose Docker Swarm CI\CD jenkins Docker安装 # 系统内核是3.10以上的 root@theSun:/# uname -r 4.4.0-185-generic # 系统版本 root@theSun:/# cat /etc/os-release 文档:.

Saker__的博客 4900

Docker入门学习笔记(狂神版)

Docker入门学习,再小的帆也会远航

weixin_47024018的博客 6915

Docker学习笔记 (狂神说)

秦疆老师Java全栈系列课程之Docker讲解 从Docker历史,概念,到命令的详解 从使用到深入原理和网络,大量的实战,带你彻底掌握Docker!

qq_56517253的博客 3万+

【亲测免费】 狂神说笔记下载

狂神说笔记下载 【下载地址】狂神说笔记下载 本仓库提供了一个资源文件的下载,该资源文件名为“狂神说笔记下载”。这份笔记是由狂神整理的,涵盖了从Java基础到微服务、分布式系统以及Docker等相关技术的详细内容。笔记内容丰富,适合Java初学者以及有一定基础的开发者深入学习 ...

gitblog_06586的博客 387

狂神说docker

一款产品:开发–上线 两套环境!应用环境,应用配置!开发 ---- 运维。问题:我在我的电脑上可以运行!版本更新,导致服务不可用!对于运维来说,考验就非常大?环境配置是十分的麻烦,每一个机器都要部署环境(集群Redis,ES,Hadoop)!费时费力发布一个项目(jar+(Redis MySQL jdk ES)),项目能不能都带上环境安装打包!之前在服务器配置一个应用的环境Redis MySQL jdk ES Hadoop,配置超麻烦了,不能够跨平台Windows,最后发布到Linux!

m0_62672124的博客 1741

狂神Docker学习笔记下载

狂神Docker学习笔记下载 去发现同类优质开源项目:https://gitcode.com/ 本仓库提供了一个名为“狂神Docker学习笔记.pdf”的资源文件下载。该文件是学习Docker时整理的学习笔记,内容详实,适合初学者和进阶学习者参考。 资源文件描述 文件名: 狂神Docker学习笔记.pdf 文件类型: PDF 文件大小: [文件大小] 内容概述: 该PDF文件包含了Docker的...

gitblog_06644的博客 424

【免费下载】 狂神Docker笔记(超详细)下载仓库

狂神Docker笔记(超详细)下载仓库 【下载地址】狂神Docker笔记超详细下载仓库 狂神Docker笔记(超详细)下载仓库 项目地址: https://gitcode.com/open-source-toolkit/64faf...

gitblog_09724的博客 660

狂神 Docker学习笔记 从基础到进阶 一步到位

Docker 学习笔记 感谢狂神的分享。附上B站视频链接。 https://www.bilibili.com/video/BV1og4y1q7M4?from=search&seid=9225650362300658796&spm_id_from=333.337.0.0 目录 目录Docker 学习笔记目录Docker概述(1) 基本介绍(2) 应用场景(3) Docker 的优势(4)虚拟化技术和容器化技术Docker安装Docker的基本组成安装阿里云镜像加速Docker 运行流程图底层原

原名陌生的博客 5800
上一篇: 2021最新的ZooKeeper安装
下一篇: 更改Ribbon负载均衡配置规则
依晴无旧
博客等级 码龄7年 1683粉丝 159原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值