Docker 单次运行的语法为:
haicoder(www.haicoder.net)# docker run IMAGE [COMMAND] [ARG]
Docker 单次运行,即 Docker 启动后执行 COMMAND 命令结束后,立即退出 Docker。
使用 docker run 命令单次运行 Docker 。
haicoder(www.haicoder.net)# docker run centos /bin/echo "Docker from Haicoder"
#输出
Docker from Haicoder
我们使用 docker run 命令单次运行 Docker,即运行后 Docker 立即退出。
运行结束后,我们使用 docker ps 命令,查看正在运行的 docker,显示输出如下图所示:
docker ps 命令没有任何的输出,说明刚才运行的 Docker 已经退出。
命令 | 说明 |
---|---|
docker | Docker 的二进制执行文件。 |
run | 与前面的 docker 组合来运行一个容器。 |
centos | 要运行的镜像,Docker 首先从本地主机上查找镜像是否存在,如果存在,则直接运行。如果不存在,Docker 就会从镜像仓库 Docker Hub 下载该镜像,然后再运行。 |
/bin/echo “” | 在启动的容器里执行的命令。 |
以上命令的完整理解为:Docker 以 centos 镜像创建一个容器,然后在容器里执行 bin/echo “Docker from Haicoder”,输出结果后退出 Docker。
Docker交互式运行的语法为:
haicoder(www.haicoder.net)# docker run -i -t IMAGE [COMMAND] [ARG]
Docker交互式运行,即 Docker 启动直接进入 Docker 内部。
使用 docker run -i -t 命令以交互式方式运行 Docker 。
haicoder(www.haicoder.net)# docker run -i -t centos /bin/bash
我们使用 docker run -i -t 命令以交互式方式运行 Docker。
以交互式方式运行 Docker 后,终端显示如下图所示:
以交互式方式运行 Docker 后,此时命令行提示符变成了 docker image id 的形式,此时已经进入了 Docker 容器的内部,我们可以在里面执行任何 Centos 的命令。
使用 exit 命令或者 Crtrl+d,退出 Docker容器,回到宿主机。
命令 | 说明 |
---|---|
docker | Docker 的二进制执行文件。 |
run | 与前面的 docker 组合来运行一个容器。 |
-i | 与容器内的标准输入 (STDIN) 进行交互。 |
-t | 在新容器内指定一个伪终端或终端。 |
centos | 要运行的镜像,Docker 首先从本地主机上查找镜像是否存在,如果存在,则直接运行。如果不存在,Docker 就会从镜像仓库 Docker Hub 下载该镜像,然后再运行。 |
/bin/bash | 在启动的容器里执行的命令。 |
Docker后台运行的语法为:
haicoder(www.haicoder.net)# docker run -d IMAGE [COMMAND] [ARG]
Docker后台运行,即 Docker 启动直接进入后台。
使用 docker run -d 命令以后台方式运行 Docker 。
haicoder(www.haicoder.net)# docker run -d centos /bin/bash -c "while true; do echo hello world; sleep 3; done"
#输出
5c4c1e900a4ccbfe38f72b6ea995f883d6407fbd29bcdc205c6392ff22d7ab1f
我们使用 docker run -d 命令以后台方式运行 Docker。
以后台方式运行 Docker 后,终端显示如下图所示:
以后台方式运行 Docker 后,此时终端输出了完整的容器 Id。
使用 docker ps 命令,查看当前正在运行的容器,发现有刚才启动的容器。
此时,我们使用 docker logs 命令,查看 Docker 内部的日志,显示如下图:
可以看出,此时 Dokcer 内部,不停的输出 hello world。
命令 | 说明 |
---|---|
docker | Docker 的二进制执行文件。 |
run | 与前面的 docker 组合来运行一个容器。 |
-d | 以后台方式运行容器。 |
centos | 要运行的镜像,Docker 首先从本地主机上查找镜像是否存在,如果存在,则直接运行。如果不存在,Docker 就会从镜像仓库 Docker Hub 下载该镜像,然后再运行。 |
Docker单次运行的语法为:
docker run IMAGE [COMMAND] [ARG]
Docker交互式运行的语法为:
docker run -i -t IMAGE [COMMAND] [ARG]
Docker后台运行的语法为:
docker run -d IMAGE [COMMAND] [ARG]