前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >软件测试|docker create 与 docker run的异同,你都会了吗?

软件测试|docker create 与 docker run的异同,你都会了吗?

原创
作者头像
Tester_muller
发布2023-09-07 14:17:39
1260
发布2023-09-07 14:17:39
举报

Docker Run vs Docker Create:创建和管理容器的差异

Docker是一种流行的容器化平台,它提供了多种命令来创建和管理容器。其中两个常用的命令是"docker run"和"docker create"。虽然它们都用于创建容器,但在用法和功能上有一些区别。让我们来看看它们之间的差异。

docker create

docker create可以创建一个新的容器,但是这个容器不会被启动,语法如下:

代码语言:shell
复制
docker create [OPTIONS] IMAGE [COMMAND] [ARG...]

options 说明:

option

作用

--name

指定容器的名字

使用示例

根据 mysql 镜像,创建一个hogwarts_mysql容器

代码语言:shell
复制
docker create --name=hogwarts_mysql mysql

注:如果我们要启动该容器,我们可以使用docker start命令来启动该容器

这种分离的创建和启动过程可以为我们提供更多的灵活性和控制权,因为我们可以在容器创建后,根据需要对其进行更改或配置。

docker run

docker run可以创建并运行一个新的容器,语法如下:

代码语言:shell
复制
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

注: 跟 docker create一样的语法格式,只不过可以运行容器甚至进入容器内部

COMMAND :需要在容器内执行的命令

执行流程

  1. 首先在指定镜像上创建一个可写的容器层
  2. 然后使用指定的命令(COMMAND)启动它
  3. docker run相当于执行了两个 操作:/containers/create/containers/(id)/start

常用options参数

option

作用

-i

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

-t

启动容器后,为容器分配一个命令行,通常与 -i 同时使用

-v

目录映射,容器目录挂载到宿主机目录,格式: <host目录>:<容器目录>

|-d|

守护进程,后台运行该容器|

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

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

|-u| 以什么用户身份创建容器|

|--name "nginx-lb"| 容器名字|

|-m, --memory bytes| 设置容器使用内存最大值|

|-h, --hostname string| 指定容器的 host name|

|--dns 8.8.8.8| 指定容器 dns 服务器|

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

|--restar|t Docker 重启后,容器是否自动重启|

|--privileged| 容器内是否使用真正的 root 权限|

-p 的写法

代码语言:shell
复制
docker run -p ip:主机端口:容器端口
docker run -p 主机端口:容器端口 (常用) 
docker run -p 容器端口

使用示例:

代码语言:shell
复制
docker run --name muller_mysql mysql

总结

"docker run"命令用于创建并启动一个新的容器,而"docker create"命令仅用于创建容器,而不会自动启动它。使用"docker create"可以在容器创建后对其进行更多的配置或修改,然后使用"docker start"来手动启动容器。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Docker Run vs Docker Create:创建和管理容器的差异
    • docker create
      • docker run
        • 总结
        相关产品与服务
        容器镜像服务
        容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档