docker 命令 run
docker run
:创建并运行一个新的容器
docker run语法
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
- docker run 是固定命令
- OPTIONS 是可选的参数,中括号中的参数是可选的
- IMAGE:表示具体的镜像,如nginx
- COMMAND:表示是执行镜像中的命令
- ARG...:表示COMMAND命令的参数
docker run参数(OPTIONS)说明
这里是OPTIONS的取值:
参数 | 说明 |
---|---|
-a |
指定标准输入输出内容类型,可选 STDIN/STDOUT/STDERR 三项 |
-d |
后台运行容器,并返回容器ID |
-i |
以交互模式运行容器,通常与 -t 同时使用 |
-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=[] |
开放一个端口或一组端口 |
实例
使用docker镜像nginx:latest
以后台模式启动一个容器,并将容器命名为mynginx
,参数详解:
- 使用镜像nginx:latest以后台模式启动一个容器,并将容器的80端口映射到主机随机端口
docker run --name mynginx -d nginx:latest
使用镜像nginx:latest以后台模式启动一个容器,并将容器的80端口映射到主机随机端口
- -d:后台启动一个容器
- P:将容器的80端口映射到主机随机端口
docker run -P -d nginx:latest
将宿主机的路径映射到容器中,各参数意义如下:
- -d: 使用镜像
nginx:latest
以后台模式启动一个容器 - -P:将容器的80端口映射到主机的80端口
- -v:主机的目录
/data
映射到容器的/data
docker run -p 80:80 -v /data:/data -d nginx:latest
使用镜像nginx:latest
以交互模式启动一个容器,在容器内执行/bin/bash
命令:
- -i:以交互模式运行容器
- -t:为容器重新分配一个伪输入终端
- /bin/bash:执行容器中的这个命令
$ docker run -it nginx:latest /bin/bash #