Docker:二、常用命令

🍁docker常用命令

官方帮助文档:https://docs.docker.com/reference/

🌲帮助命令(版本信息)

docker -v   		# 显示docker版本
docker version 		# 显示docker版本信息
docker info 		# 显示docker系统信息
docker 命令 --help 	# 帮助命令

🌲镜像基本命令

- docker images :查看本地镜像

官方文档:https://docs.docker.com/reference/cli/docker/image/ls/

# 查看本地主机上所有的镜像 
beihai@beihai-pc:~/桌面$ docker images
REPOSITORY    TAG       IMAGE ID       CREATED         SIZE
hello-world   latest    d2c94e258dcb   13 months ago   13.3kB

# 解释
REPOSITORY    镜像的仓库源
TAG       	  镜像的标签
IMAGE ID      镜像的id
CREATED       镜像创建时间
SIZE		  镜像大小

# 可选项:
-a, --all		显示所有镜像(默认隐藏中间镜像)
--digests		显示摘要
-f, --filter		根据提供的条件筛选输出
--format		使用自定义模板设置输出格式:“
				table”:使用列标题以表格格式打印输出(默认)
				“table TEMPLATE”:使用给定的 Go 模板
				以表格格式打印输出“json”:以 JSON 格式
				打印“TEMPLATE”:使用给定的 Go 模板打印输出。
				指 https://docs.docker.com/go/formatting/有关使用模板设置输出格式的详细信息
--no-trunc		不要截断输出
-q, --quiet		仅显示镜像 ID
- docker search :搜索镜像

官方文档:https://docs.docker.com/reference/cli/docker/search/
使用命令搜索,或者网站搜索:https://hub.docker.com/

beihai@beihai-pc:~/桌面$ docker search mysql
NAME                            DESCRIPTION                                      STARS     OFFICIAL
mysql                           MySQL is a widely used, open-source relation…   15116     [OK]
mariadb                         MariaDB Server is a high performing open sou…   5762      [OK]
percona                         Percona Server is a fork of the MySQL relati…   628       [OK]
phpmyadmin                      phpMyAdmin - A web interface for MySQL and M…   990       [OK]
circleci/mysql                  MySQL is a widely used, open-source relation…   30        
bitnami/mysql                   Bitnami container image for MySQL                112       
......

# 解释
NAME            镜像名称
DESCRIPTION     镜像说明(描述)
STARS     		镜像的星级评分(用户对该镜像的喜爱程度)
OFFICIAL		官方标识([OK] 表示这是一个官方镜像,由官方维护和提供,通常更可靠和安全。)

# 可选项:
-f, --filter		根据提供的条件筛选输出
--format		使用 Go 模板进行漂亮的打印搜索
--limit		最大搜索结果数
--no-trunc		不要截断输出

- docker pull :拉取(下载)镜像

官方文档:https://docs.docker.com/reference/cli/docker/image/pull/

# 拉取镜像:docker pull 镜像名[:tag] (如果不写tag,默认就是latest)
beihai@beihai-pc:~/桌面$ docker pull mysql
Using default tag: latest
latest: Pulling from library/mysql
72a69066d2fe: Pull complete 
93619dbc5b36: Pull complete	 #。 分层下载,docker image的核心
99da31dd6142: Pull complete 
626033c43d70: Pull complete 
37d5d7efb64e: Pull complete 
ac563158d721: Pull complete 
d2ba16033dad: Pull complete 
688ba7d5c01a: Pull complete 
00e060b6d11d: Pull complete 
1c04857f594f: Pull complete 
4d7cfa90e6ea: Pull complete 
e0431212d27d: Pull complete 
Digest: sha256:e9027fe4d91c0153429607251656806cc784e914937271037f7738bd5b8e7709
Status: Downloaded newer image for mysql:latest
docker.io/library/mysql:latest 	#。 真实地址,也可以直接pull真实地址

=================================
#下面命令两个等价
docker pull docker.io/library/mysql:latest
docker pull mysql

#指定版本下载:
docker pull mysql:5.7


- docker rmi : 删除镜像

官方文档:https://docs.docker.com/reference/cli/docker/image/rm/

# 获取到镜像id(docker images)
#根据镜像id删除镜像 mysql5.7
beihai@beihai-pc:~/桌面$ docker rmi c20987f18b13
Untagged: mysql:5.7
Untagged: mysql@sha256:f2ad209efe9c67104167fc609cca6973c8422939491c9345270175a300419f94
Deleted: sha256:c20987f18b130f9d144c9828df630417e2a9523148930dc3963e9d0dab302a76
Deleted: sha256:6567396b065ee734fb2dbb80c8923324a778426dfd01969f091f1ab2d52c7989
Deleted: sha256:0910f12649d514b471f1583a16f672ab67e3d29d9833a15dc2df50dd5536e40f
Deleted: sha256:6682af2fb40555c448b84711c7302d0f86fc716bbe9c7dc7dbd739ef9d757150
Deleted: sha256:5c062c3ac20f576d24454e74781511a5f96739f289edaadf2de934d06e910b92

======================
docker rmi 镜像id 				 # 删除指定镜像
docker rmi 镜像id 镜像id 镜像id	 # 删除多个指定镜像
docker rmi $(docker images -q) 	 # 删除全部镜像

#可选项
-f, --force		强制删除镜像
--no-prune		不要删除未标记的父项

🌲容器基本命令

- docker run :启动(运行)容器

官方文档:https://docs.docker.com/reference/cli/docker/container/run/


docker run [可选参数] image

# 可选参数(参数大全需去官方文档查看,这里列常用参数)
-d, --detach		在后台运行容器并打印容器 ID
--name				为容器分配名称,用来区分容器
-p, --publish		将容器的端口发布到主机
-P, --publish-all		将所有公开的端口发布到随机端口
-it 				使用交互方式运行,进入容器查看内容


----- 【-it】
eg: docker run -it centos /bin/bash

#进入交互方式后,从容器退回主机
- exit 		#这种方式退出后,容器停止运行
- 快捷键 :Ctrl + P + Q # 容器不停止运行
- docker ps :列出运行的容器

官方文档:https://docs.docker.com/reference/cli/docker/container/ls/


docker ps #列出容器,默认为正在运行的容器

#可选项
-a, --all			显示所有容器(默认显示正在运行)
-f, --filter		根据提供的条件筛选输出
-n, --last			显示 n 个上次创建的容器(包括所有状态)
-l, --latest		显示最新创建的容器(包括所有状态)
-q, --quiet			仅显示容器 ID
-s, --size			显示文件总大小


- docker rm:删除容器

官方文档:https://docs.docker.com/reference/cli/docker/container/rm/

docker rm 容器id 		#删除指定的容器,不能删除正在运行的容器,如果要强制删除 使用 -f 参数

# 可选项
-f, --force		强制移除正在运行的容器(使用 SIGKILL)
-l, --link		删除指定的链接
-v, --volumes		删除与容器关联的匿名卷

- docker start:启动容器

官方文档:https://docs.docker.com/reference/cli/docker/container/start/

docker start 容器id
- docker restart:重启容器

官方文档:https://docs.docker.com/reference/cli/docker/container/restart/

docker start 容器id
- docker stop:停止运行的容器

官方文档:https://docs.docker.com/reference/cli/docker/container/stop/

docker stop 容器id
- docker kill:强制停止运行的容器

官方文档:https://docs.docker.com/reference/cli/docker/container/kill/

docker kill 容器id
- docker logs :查看容器日志

官方文档:https://docs.docker.com/reference/cli/docker/container/logs/

docker logs 

#可选参数
--details			显示提供给日志的额外详细信息
-f, --follow		关注日志输出
--since				显示自时间戳(例如)或相对(例如 42分钟)2013-01-02T13:23:37Z42m
-n, --tail			all	从日志末尾显示的行数
-t, --timestamps	显示时间戳
--until				在时间戳(例如)或相对(例如 42分钟)2013-01-02T13:23:37Z42m
- docker top:显示容器的运行进程

官方文档:https://docs.docker.com/reference/cli/docker/container/top/

docker top
- docker inspect:显示容器的详细信息

官方文档:https://docs.docker.com/reference/cli/docker/container/inspect/

docker inspect
- docker exec :在正在运行的容器中执行命令

官方文档:https://docs.docker.com/reference/cli/docker/container/exec/


docker exec -it 容器id /bin/bash
#在正在运行的容器中执行命令、与正在进行的容器交互、进入正在运行的容器

命令解析:
-i 选项让标准输入保持打开,你可以在命令行中输入命令。
-t 选项分配一个伪终端,使得 shell 可以正确处理输入和输出。
-it 在交互模式下运行容器,并且可以与容器内部的命令行交互。

/bin/bash : 启动一个交互式终端会话,根据需求查看所需的终端类型。
不同容器所支持的终端类型可能不一样,可用命令查询容器中有哪些可用的 shell:
docker exec -it 容器id/容器名称 cat /etc/shells

eg:
beihai@beihai-pc:~/桌面$ docker exec -it nginx01 cat /etc/shells
# /etc/shells: valid login shells
/bin/sh
/bin/bash
/bin/rbash
/bin/dash

- docker exec :在正在运行的容器中执行命令

官方文档:https://docs.docker.com/reference/cli/docker/container/exec/


docker exec -it 容器id /bin/bash
#在正在运行的容器中执行命令、与正在进行的容器交互、进入正在运行的容器

# !开辟一个新的终端,并不会影响到主进程

命令解析:
-i 选项让标准输入保持打开,你可以在命令行中输入命令。
-t 选项分配一个伪终端,使得 shell 可以正确处理输入和输出。
-it 在交互模式下运行容器,并且可以与容器内部的命令行交互。

/bin/bash : 启动一个交互式终端会话,根据需求查看所需的终端类型。
不同容器所支持的终端类型可能不一样,可用命令查询容器中有哪些可用的 shell:
docker exec -it 容器id/容器名称 cat /etc/shells

eg:
beihai@beihai-pc:~/桌面$ docker exec -it nginx01 cat /etc/shells
# /etc/shells: valid login shells
/bin/sh
/bin/bash
/bin/rbash
/bin/dash

- docker attach :将输入、输出和错误流附加到正在运行的容器

官方文档:https://docs.docker.com/reference/cli/docker/container/attach/


docker attach 容器id 
#将本地标准输入、输出和错误流附加到正在运行的容器、与正在进行的容器交互、进入正在运行的容器

#!进入正在执行的终端,并不会启动新的进程,如果退出则容器关闭,会影响到主进程


- docker cp :拷贝文件

官方文档:https://docs.docker.com/reference/cli/docker/container/cp/


docker cp 
#容器和本地文件系统之间复制文件/文件夹

docker cp 容器id:/path /local_path
# 将容器里面path路径下的文件、文件夹 复制到本机local_path路径下

docker cp /local_path 容器id:/path
# 将本机local_path路径下的文件、文件夹 复制到容器里面path路径下

🌲命令脑图

【来源:https://cloud.tencent.com/developer/article/1772136】
在这里插入图片描述

🌲命令逻辑关系图

【来源:https://blog.csdn.net/qq_16290791/article/details/81116832】
在这里插入图片描述

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

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

相关文章

人工智能系列-numpy(三)

🌈个人主页:羽晨同学 💫个人格言:“成为自己未来的主人~” 副本和视图 副本 副本是一个数据的完整的拷贝,如果我们对副本进行修改,它不会影响到原始数据,物理内存不再同一位置。副本一般发生在Pytho…

Java--继承

1.继承的本质是对某一批类的抽象,从而实现对世界更好的建模 2.extends的意思是“扩展”,子类是父亲的扩展 3.Java中只有单继承,没有多继承 4.继承关系的两个类,一个为子类(派生类),一个为父类…

零基础学python(一)

1. 匿名函数 常规函数: def fun(x, y):return x y 匿名函数: # lambda 空格后面是函数入参,冒号后面写函数体/函数逻辑 a lambda x,y: x y print(a(2,3)) 匿名函数/lambda函数的最大优点就是快速定义函数,使代码更精简。 …

第一百四十五节 Java数据类型教程 - Java字符串类型

Java数据类型教程 - Java字符串类型 零个或多个字符的序列称为字符串。 在Java程序中,字符串由java.lang.String类的对象表示。 String类是不可变的。 String对象的内容在创建后无法修改。 String类有两个伴随类,java.lang.StringBuilder和java.lang.…

欧科云链大咖对话:Web3原生创新静默期,科技巨头却在两极化发展

出品|OKG Research 作者|Hedy Bi 上周末,欧科云链研究院接受FT中文的邀请,作为圆桌嘉宾参与了由FT中文网与上海交通大学上海高级金融学院联合主办的金融大师课。在圆桌环节,笔者与各位教授和金融行业科技创新前沿实践…

基于aardio web.view2库和python playwright包的内嵌浏览器自动化操作

通过cdp协议可以实现playwright操控webview。 新建Python窗口工程 修改pip.aardio 修改pip.aardio,并执行,安装playwright。 //安装模块 import process.python.pip; //process.python.path "python.exe";/* 安装模块。 参数可以用一个字…

工地/矿区/电力/工厂/环卫视频智能安全监控反光衣AI检测算法的原理及场景应用

一、引言 随着科技的快速发展,特别是在智能交通和安全生产领域,对于夜间或弱光环境下的人员识别和安全监控需求日益凸显。反光衣作为一种重要的安全装备,被广泛应用于道路施工、工地作业、夜间巡逻、安全生产等场景,旨在提高人员的…

Vue 性能革命:揭秘前端优化的终极技巧;Vue优化技巧,解决Vue项目卡顿问题

目录 Vue优化路径 一、使用key 二、使用冻结对象 三、使用函数式组件 四、使用计算属性 五、使用非实时绑定的表单项 六、保持对象引用稳定 6.1、保持对象引用稳定定义 6.2、保持对象引用稳定与不稳定的例子 6.3、vue2判断数据是否变化是通过hasChanged函数实现的 ①…

Spring AOP、Spring MVC工作原理、发展演变、常用注解

Spring AOP 概念 AOP全称为Aspect Oriented Programming,表示面向切面编程。切面指的是将那些与业务无关,但业务模块都需要使用的功能封装起来的技术。 AOP基本术语 **连接点(Joinpoint):**连接点就是被拦截到的程序执…

智能文档革新:合合信息智能文档处理平台上线基金合同抽取模型!

一、什么是基金合同? 基金合同是指具有平等地位主体的基金当事人在基金活动中,为规范其间的权利、义务,依意思表示一致而形成的契约或协议。《证券投资基金法》第五十二条规定,公开募集基金的基金合同应当包括下列内容: &#x…

软件游戏d3dcompiler_43.dll丢失怎么办,总结几种有效的方法

在使用电脑时,可能会碰到找不到d3dcompiler_43.dll的问题。即在使用过程中,突然弹出一个提示“d3dcompiler_43.dll丢失”,由于此文件的缺失,部分程序将无法启动。为恢复正常使用,我们需要修复此文件。接下来&#xff0…

【C++】 解决 C++ 语言报错:Undefined Reference

文章目录 引言 未定义引用(Undefined Reference)是 C 编程中常见的错误之一,通常在链接阶段出现。当编译器无法找到函数或变量的定义时,就会引发未定义引用错误。这种错误会阻止生成可执行文件,影响程序的正常构建。本…

Java项目:基于SSM框架实现的中小企业人力资源管理系统【ssm+B/S架构+源码+数据库+开题报告+毕业论文】

一、项目简介 本项目是一套基于SSM框架实现的中小企业人力资源管理系统 包含:项目源码、数据库脚本等,该项目附带全部源码可作为毕设使用。 项目都经过严格调试,eclipse或者idea 确保可以运行! 该系统功能完善、界面美观、操作简…

matlab 绘制高等数学中的二维函数示例

matlab 绘制高等数学中的二维函数示例 绘制高等数学中的二维函数示例绘制结果 绘制高等数学中的二维函数示例 clc,clear,close all; % 定义方程 eqn (x, y) (x.^2 y.^2).^3 - y.^4;% 绘制方程曲线和坐标轴 ezplot(eqn, [-2, 2, -2, 2]) hold on % 在同一图形中保持绘图% 绘…

国际上备考所有云计算/IT证书的五大优质免费课程网站

最近越来越多的小伙伴来问小李哥,小李哥亚马逊云科技AWS认证大满贯是在哪里上课复习的呢?全部上付费课程那不是一笔巨款吗?小李哥这次来盘点备考国际上IT证书的5大优质免费课程网站(不只是亚马逊云科技AWS的课程,其他课程同样可以…

满足GMSL静电防护要求的方案

什么是GMSL?它是做什么用的?它有什么优点?设计GMSL防静电有啥难度? 带着这些疑问我们先了解下什么是GMSL。 一.简述 GMSL GMSL(Gigabit Multimedia Serial Link)即千兆多媒体串行链路&#xf…

odoo 物联网 设备数据采集方案

图一 架构手稿(许老师专属) 图二 架构简图 部署 方案一: odoo业务数据库与设备采集数据库使用一个instance。 缺点:重启pg服务相互影响。 方案二: odoo业务数据库与设备采集数据库独立部署,使用两个instance。 优点:…

一个使用率超高的大数据实验室是如何练成的?

厦门大学嘉庚学院“大数据应用实训中心”(以下简称“实训中心”)自2022年建成以来,已经成为支撑“大数据专业”复合型人才培养的重要支撑,目前实训中心在专业课程实验教学、项目实训、数据分析类双创比赛、毕业设计等方面都有深入…

CVPR2024自动驾驶轨迹预测方向的论文整理

2024年自动驾驶轨迹预测方向的论文汇总 1、Producing and Leveraging Online Map Uncertainty in Trajectory Prediction 论文地址:https://arxiv.org/pdf/2403.16439 提出针对在线地图不确定性带给轨迹预测的影响对应的解决方案。 在轨迹预测中,利用在…

vscode连接SSH——连接学校服务器,使用conda配置个人环境并使用

服务器的连接 在vscode远程资源管理中配置配置文件,如下图: 然后点击左下角进行连接: 点击需要连接的服务器,输入对应密码即可登录成功。 服务器上创建自己的环境 确保服务器上已安装anaconda。 先查看服务器上的conda信息&…