docker中create与run的区别是什么

网友投稿 2938 2022-10-11

本站部分文章、图片属于网络上可搜索到的公开信息,均用于学习和交流用途,不能代表睿象云的观点、立场或意见。我们接受网民的监督,如发现任何违法内容或侵犯了您的权益,请第一时间联系小编邮箱jiasou666@gmail.com 处理。

docker中create与run的区别是什么

在docker中,create命令与run命令都可以创建一个新的容器,区别就是create命令创建一个新的容器但是不启动它,而run命令创建一个新的容器会运行一个命令。

本教程操作环境:linux7.3系统、docker-1.13.1版、Dell G3电脑

docker中create与run的区别是什么

以下是这些命令的用途:

docker create命令从 Docker 映像创建一个全新的容器。但是,它不会立即运行它。docker start命令将启动任何已停止的容器。如果使用 docker create命令创建容器,则可以使用此命令启动它。docker run 命令是创建和启动的组合,因为它创建了一个新容器并立即启动它。实际上,如果docker run命令在您的系统上找不到上述映像,它甚至可以从 Docker Hub 中提取映像。

让我们用例子来看看它,这样你就能更清楚地知道事情。

让我们通过示例来查看它

如果要遵循示例,请确保已安装 Docker。

假设您使用 docker pull ubuntu 命令从 Docker Hub 下载 Ubuntu 映像。

您可以查看系统上所有可用的 Docker 映像。在这个例子中,我只有ubuntu(为了避免混淆):

# docker imagesREPOSITORY TAG IMAGE ID CREATED SIZEubuntu latest 775349758637 5 weeks ago 64.2MB

现在,使用 docker create 命令创建一个名为 container-1 的新docker容器:

# docker create --name container-1 ubuntu6a81a998658e9e0d3b612ee65b07d76a45d79812d860baf3f1cbc60fe997ebec

可以看到它已创建一个新容器。如果尝试查看所有正在运行的容器,则不会看到 container-1,因为尽管它已创建,但从未启动过。

# docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

如果检查所有容器,无论它们是否正在运行,都会看到 container-1 具有"已创建"状态:

# docker ps -aCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES6a81a998658e ubuntu "/bin/bash" 18 seconds ago Created container-1

现在,让我们使用docker run 命令来创建并运行一个名为 container-2 的容器:

# docker run -it -d --name container-2 ubuntu bash6391c1a0cac6c9f5fc6f5cfb05d75a22c208e63223c3b231035a40a4b134c521

您可以看到容器-2 正在运行,因为它的状态为"已启动":

# docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES6391c1a0cac6 ubuntu "bash" About a minute ago Up About a minute container-2

让我们停止这个正在运行的容器:

# docker stop container-2container-2# docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES# docker ps -aCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES6391c1a0cac6 ubuntu "bash" 2 minutes ago Exited (0) 28 seconds ago container-26a81a998658e ubuntu "/bin/bash" 3 minutes ago Created container-1

现在我们有一个停止的容器,您可以使用docker start 命令再次启动它:

# docker start container-2container-2# docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES6391c1a0cac6 ubuntu "bash" 2 minutes ago Up 2 seconds container-2

但是,使用 docker create 命令创建的 container-1 会发生什么情况呢?您可以使用 docker start 命令启动此容器,然后使用docker exec运行特定的东西。

推荐学习:《docker视频教程》

php入门到就业线上直播课:查看学习

上一篇:如何解决putty linux乱码问题
下一篇:linux python 中文乱码如何解决
相关文章

 发表评论

暂时没有评论,来抢沙发吧~