
是一个帮助开发人员构建和部署容器化应用程序的平台。它通过为管理这些应用程序提供轻量级虚拟化环境,帮助解决操作系统兼容性难题。
docker 的主要为开发人员使用容器提供了强大的工具。从基本命令 docker 开始,CLI 支持近 60 个子命令,其中大部分都接受大量命令行参数,以处理不同的任务。
你的 Docker 环境可能是开源的 ,也可能是用户友好的图形用户界面 。在 Docker Engine 环境中,CLI 将是你的主要界面,但如果你安装了 Docker Desktop,你也可以使用命令行工具。
我们认为,即使是 Docker Desktop 的用户,一旦熟悉了至少这 20 条基本的 docker 命令,也会发现自己已经开始使用 CLI 了。
让我们深入了解一下哪些 Docker 命令是你应该最熟悉的。
docker system 命令有助于检查和管理 Docker 环境。它支持用于执行特定管理相关任务的命令行参数,包括
df 显示磁盘的使用情况prune 删除未使用的 *** 、容器、映像或卷info 显示系统相关信息events 实时显示系统事件日志下面是执行 docker system prune 后的初始提示。

docker system prune 输出
该命令可帮助您导航和配置不同的上下文。在 Docker 中,上下文包括名称、传输层安全信息、端点配置和协调器。
一些 docker context 参数:
ls 显示默认上下文的详细信息inspect [CONTEXT} 检查指定的上下文create [CONTEXT] 创建一个新的上下文use [CONTEXT] 在上下文之间切换下面是 docker context ls 输出的示例:

docker context ls 输出
docker pause 命令会冻结容器的活动进程。要运行它,必须指定容器的名称,如下所示:
docker pause [CONTAINER]
下面是暂停容器后的输出示例。

docker pause 输出
docker unause 命令会恢复已暂停的容器进程。与前一条命令一样,你必须指定容器名称,如下所示:
docker unpause [CONTaiNER]
下面是取消暂停容器后的输出示例。

docker unpause 输出
该命令可移除容器、卷和 *** 。它允许根据组件的属性选择要移除的组件。例如,你可以强制移除正在运行的容器或所有指定的容器:
docker rm [CONTAINER] 移除指定名称的容器。该命令的输出截图如下。

docker rm 输出
使用该命令可以删除图像。您可以删除单个图像,也可以同时删除多个图像。您可以使用短 ID 或长 ID 来描述要删除的图像。该命令对于保持主机节点的整洁和高效非常重要。
图像删除命令使用以下结构:
docker rmi [IMAGE ID]
下面是其输出示例。

docker rmi 输出
该命令允许你管理 Docker 中的卷。你可以用它来创建、移除、列出和检查卷。
docker volume 的一些参数如下:
create [OPTIONAL NAME] 创建一个新卷。你可以指定卷名,也可以让 Docker 随机生成一个卷名。ls 列出可用的卷inspect [NAME] 显示卷的详细信息。rm [NAME] 从 Docker 中删除卷。下面是创建卷后的输出示例。

docker volume create 输出
使用此命令从 搜索镜像,然后将其作为容器在你的机器上运行。它允许你在不访问网站的情况下访问 Docker Hub 注册表镜像。
该命令的结构如下: Docker search。你可以指定要搜索的镜像名称,也可以创建一个过滤器。
下面是以下查询输出的示例:
docker search --filter is-official=true --filter stars=500 mysql

docker search 输出
通过 docker push 命令,你可以在 Docker Hub 注册表或私有资源库 *** 享你的镜像。
该命令的结构如下:
docker push [OPTIONS] NAME[:TAG]
[OPTIONS] 允许你设置 -disable-content-trust (禁用内容信任)。
默认情况下,该值为 true,并非必须包含。
NAME[:TAG] 要求使用注册表名称、版本库和图片标签。
下面是一个 docker push 输出的示例。

docker push 输出
该命令从私有或公共注册库中的存储库下载 Docker 镜像。
该命令是这样运行的:
docker pull [OPTIONS] NAME[:TAG|@DIGEST]
只要必须创建容器化应用程序,该命令就能让你使用现有镜像,而不是创建新镜像。
下面的示例显示了 docker pull 命令的输出结果:

docker pull 输出
默认情况下,该命令会显示所有正在运行的容器列表。不过,你可以添加一个标记,根据磁盘使用大小、链接容器和标签等属性列出容器。
该命令的结构如下:
docker ps [OPTIONS]
其参数包括:
-a 显示正在运行和已退出的容器列表-s 显示每个容器的磁盘大小和虚拟大小您可以像这样将两者结合使用:
docker ps -as
下面是一个 docker ps 命令输出的示例。

docker ps 命令的部分输出
使用这个标签可以为你的镜像添加元数据,比如版本。标签通常是在构建镜像时创建的,但 docker tag 命令允许你稍后添加标签,本质上是为目标镜像创建一个别名。
该命令的结构如下:
docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]
在下面的示例中,我们列出了名称为 “redis” 的图片。用版本号(”2.0″)标记图片后,新的别名和最初标记的图片就会出现在列表中。

docker tag 输出
使用此命令重命名容器。如果您有多个容器,并希望根据用途对它们进行区分,那么这条命令就非常有用。
该命令的结构如下:
docker rename [OLD_NAME] [NEW_NAME]
下面是执行 docker rename 命令前后的输出示例。

docker rename 输出
此命令允许您在更改容器文件后创建新映像。这一点很重要,因为它可以让您使用交互式 shell 调试容器。
该命令的结构如下:
docker commit [CONTAINER_ID] [name-of-new-image]
下面是一个示例和 docker commit 的输出结果。

docker commit 输出
这是一个 *** 管理命令,可让您通过连接服务和容器创建功能强大的应用程序。
该命令的结构如下:
docker network [OPTIONS]
其参数包括:
connect 用于将容器连接到 *** create 用于构建新 *** disconnect 用于将运行中的容器从 *** 中断开rm 用于删除单个或多个 *** 以下是 docker network create 的输出结果。

docker network create 输出
该命令提供指定图像的历史记录,帮助您了解图像的创建过程并显示图像大小。
该命令的结构如下:
docker history [IMAGE]
下面,我们看到了与图像 redis:latest 相关的历史记录。

docker history 输出
使用该命令可以更新容器的配置。它有助于防止容器消耗过多的 Docker 主机资源。该命令的格式为:
docker update [OPTIONS] [CONTAINER]
其部分选项包括:
--restart 更新容器重启策略--memory 设置容器的内存限制--cpus 设置分配的CPU数量下面是一个 docker update 命令的输出示例。

docker update 输出
通过该命令可以管理插件。它非常重要,因为它可以在不改变 Docker 主机配置的情况下添加新功能。
docker plugin 参数包括:
create 用于创建新插件enable 用于启用已安装的插件install 用于安装新插件rm 用于删除单个或多个插件ls 用于显示插件列表下面,我们使用 docker plugin install 将一个插件添加到我们的环境中。然后,我们使用 docker plugin ls 来显示它的状态。

docker plugin ls 输出
该命令允许你管理容器。你可以用它来执行创建、杀死和删除容器等操作。
docker container 选项包括
create 用于创建容器commit 用于在对容器进行更改后创建新映像exec 用于在运行中的容器内执行命令kill 用于停止正在运行的容器ls 用于显示 Docker 主机内的容器列表restart 用于重新启动容器run 用于从映像创建容器并运行它rm 用于从 Docker 主机中移除容器下面是一个 docker container 命令输出的示例。

docker container restart 输出
该命令从容器中检索日志。它能让人深入了解容器的运行情况,这在调试时非常重要。
下面是一个 docker logs 命令输出的示例。

docker logs 输出
该命令有助于管理 Docker 星群–一组运行 Docker 并配置为在集群中协同工作的机器(虚拟机或物理机)。使用该命令可以轻松建立一个群集,并享受其带来的好处。
下面是一些 docker swarm 选项:
init 用于启动一个群集join 用于加入一个群集leave 用于退出群集update 用于更新群集下面是一个例子和一个 docker swarm init 命令的输出。

docker swarm init 输出
Docker 是构建和管理容器化应用程序的有效工具。其 CLI 命令简单易懂,即使是复杂的应用程序,创建和操作起来也更加容易。
掌握以上 20 条命令可以加快容器化应用程序的开发速度。
扫描二维码推送至手机访问。
版权声明:本文由2345好导航站长资讯发布,如需转载请注明出处。
不久前,PHP 8.0大张旗鼓地发布了。它带来了许多新特性、性能增强和变化——其中最令人兴奋的是新的JIT编译器。 技术世界总是在向前发展,PHP也是如此。 ,包含了几个令人兴奋的特性。它定于今年晚些时候于2021年11月25日发布。 在本文中,我们将详细介绍PHP 8.1将带来哪些新的东...
JavaScript是世界上最流行的编程语言之一。今天,它为数百万个网站提供支持,并吸引了成群的开发人员和设计人员为Web构建功能。如果您是编程新手,那么 JavaScript很容易成为之一。 在最初的20年里,JavaScript主要用于客户端脚本。由于JavaScript只能在<scr...
无服务器计算是一种基于云的执行模型,可以将应用程序作为服务托管,而无需维护服务器。 服务提供商维护服务器上的资源分配,并根据实际使用情况向用户收费。焦点转移到一个人正在创建的核心应用程序上,基础设施完全由服务提供商处理。无服务器计算也称为功能即服务 (FaaS)。 换句话说,Serverle...
您可能听说过SaaS,您可能听说过PaaS和IaaS,但您听说过函数即服务 (FaaS) 吗? FaaS市场正在快速增长。根据Allied Market Research的数据,2018年市场价值 。预计到2026年,这一数字将增长到240亿美元——这意味着该行业将从2020年到2026年以2...
PHP 8.2预计将于今年11月发布,最新的稳定版本是PHP 8.1.5。虽然现在还为时过早,但对更新的接受程度参差不齐。 但是,知道会发生什么可以帮助您。通过了解新功能和不推荐使用的功能,您可以了解更新可能如何影响开发。这些知识还可以帮助您为最终发布做好准备。 在这篇文章中,我们将回顾最新...
随着越来越需要以更快的周转时间生产可扩展、安全和灵活的应用程序,Microservices和APIs在软件开发领域无处不在。 客户需求瞬息万变,他们希望软件解决方案能够减轻他们的任务并为他们提供便利。 采用单体架构的传统方法限制了开发人员进行大量创新。由于它们的成分很硬,因此在应用程序中进行...