Docker run命令
docker有一些常用的命令,可以通过帮助命令查看全部命令
$ docker help
当然,我们也有一些常用的命令,下面对run命令进行简单描述,参数说明,并不是全部内容,也只是列举了部分常用的
run 命令:创建一个新的容器并运行一个命令
参数说明:
-d: 后台运行容器,并返回容器ID;
-i: 以交互模式运行容器,通常与 -t 同时使用;
-p: 端口映射,格式为:主机(宿主)端口:容器端口
-P:大写的P,表示会 端口随机映射
-t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;
--name="tomcat_01": 为容器指定一个名称,不指定名称,docker会默认创建一个名称;
-v 是指定卷的目录,例如:tomcat下的logs目录,在tomcat启动的时候,会产生日志,如果需要查看日志,就需要进去docker容器中的运行的tomcat实例中的logs目录下,查看日志信息;镜像实例,都是相互沙箱隔离的;使用该命令,可以把tomcat的目录,建立成共享目录,这样,在docker下,也可以查看该目录
运行容器的时候,需要指定版本号,不指定版本号,会使用默认的latest为默认版本,如果没有默认版本,运行run命令,会从仓库,拉取latest版本的容器,并创建实例;如果docker没有该镜像,那么docker先去拉取镜像,然后再创建镜像的实例,并启动
举例:
使用docker镜像nginx:latest以后台模式启动一个容器,并将容器命名为mynginx
$ docker run -d --name mynginx -d nginx:latest
使用镜像nginx:latest以后台模式启动一个容器,并将容器的80端口映射到主机随机端口。nginx默认是80端口
$ docker run -P -d nginx:latest
使用镜像 nginx:latest,以后台模式启动一个容器,将容器的 80 端口映射到主机的 80 端口,主机的目录 /data 映射到容器的 /data
$ docker run -d -p 80:80 -v /data:/data -d nginx:latest
如果要绑定多个端口(同时将容器的9999端口映射到本地主机90端口),可以这样写:
$ docker run -d -p 80:80 -p 90:9999 -v /data:/data -d nginx:latest
绑定容器的 8080 端口,并将其映射到本地主机 127.0.0.1 的 80 端口上
$ docker run -d -p 127.0.0.1:80:8080/tcp ubuntu bash
使用镜像nginx:latest以交互模式启动一个容器,在容器内执行/bin/bash命令
$ docker run -it nginx:latest /bin/bash
[email protected]:/#
到此Docker run命令详解介绍完成。