欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

docker run

程序员文章站 2022-05-15 13:10:12
...

docker run :创建一个新的容器并运行一个命令

语法

docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

OPTIONS说明:

  • -a stdin: 指定标准输入输出内容类型,可选 STDIN/STDOUT/STDERR 三项;

  • -d: 后台运行容器,并返回容器ID;

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

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

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

  • -t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;

  • --name="nginx-lb": 为容器指定一个名称;

  • --dns 8.8.8.8: 指定容器使用的DNS服务器,默认和宿主一致;

  • --dns-search example.com: 指定容器DNS搜索域名,默认和宿主一致;

  • -h "mars": 指定容器的hostname;

  • -e username="ritchie": 设置环境变量;

  • --env-file=[]: 从指定文件读入环境变量;

  • --cpuset="0-2" or --cpuset="0,1,2": 绑定容器到指定CPU运行;

  • -m :设置容器使用内存最大值;

  • --net="bridge": 指定容器的网络连接类型,支持 bridge/host/none/container: 四种类型;

  • --link=[]: 添加链接到另一个容器;

  • --expose=[]: 开放一个端口或一组端口;

  • --volume , -v: 绑定一个卷

实例

使用docker镜像tomcat:latest以后台模式启动一个容器,并将容器命名为mytomcat。

tomcat:latest  tomcat表示要运行tomcat程序。 latest表示运行最新版本。

  • 首先查看下本地库镜像,没有tomcat镜像;
[[email protected] ~]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
  • 运行最新tomcat镜像,发现开始下载;

docker run

  • 再查看下本地库镜像,发现已经存在最新tomcat镜像;
[[email protected] ~]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
tomcat              latest              c43a65faae57        4 weeks ago         667MB
  •  同时查看进程,发现tomcat正运行中
[[email protected] ~]# docker ps 
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
e6c24833399a        tomcat:latest       "catalina.sh run"   36 seconds ago      Up 34 seconds       8080/tcp            mytomcat

再次开启新容器

  •  运行最新tomcat镜像,运行名称为mytomcat2 ;
[[email protected] ~]# docker run --name mytomcat2 -d tomcat:latest
24dd6e344d68e9350ca1889b6e5759e2b6d564bba88e61f6486c1513a504b7fd
  •  查看docker进程,image版本显示是最新;
[[email protected] ~]# docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
d612eb7d2a8f        tomcat:latest       "catalina.sh run"   59 seconds ago      Up 59 seconds       8080/tcp            mytomcat2
e6c24833399a        tomcat:latest       "catalina.sh run"   4 minutes ago       Up 4 minutes        8080/tcp            mytomcat

综上所述,运行一个镜像会按照以下逻辑进行,见图;

docker run

 

 

 

相关标签: docker docker