深入理解 Docker Run 命令:从入门到精通
前言
在容器化技术的领域中,Docker 无疑是最为广泛使用的工具之一。而 docker run
命令则是使用 Docker 进行容器管理的核心命令之一。本文将深入探讨 docker run
命令的使用方法,旨在帮助初学者快速入门并掌握该命令的各种用法。
获取更多技术资料,请点击!
Docker Run 简介
docker run
命令用于在 Docker 中运行一个容器。它可以基于指定的镜像创建并启动一个新的容器实例。docker run
命令的基本语法如下:
其中,OPTIONS
是一系列用于配置容器运行方式的选项,IMAGE
是要运行的容器镜像,COMMAND
是在容器内部执行的命令,ARG
是传递给命令的参数。
docker run 执行流程
首先在指定镜像上创建一个可写的容器层
然后使用指定的命令(COMMAND)启动它
docker run 相当于执行了两个 API:/containers/create
、/containers/(id)/start
常用参数
使用示例
使用
tomcat7
镜像,创建名为tomcat_hogwarts
的容器,如下:
这样运行,会直接将容器运行日志打印出来,所以一般都需要加 -d 参数,否则无法继续敲其他命令
使用
tomcat7
镜像,创建名为tomcat_hogwarts01
的容器,并使用-d
参数,让其后台运行,命令如下:
运行如下图:
通过-d
参数创建容器,不影响我们运行其他命令。
使用镜像
tomcat:7
以后台模式启动一个容器将容器的 8080 端口映射到主机的随机端口,命令如下:
使用镜像 tomcat:7 以后台模式启动一个容器将容器的 8080 端口映射到主机的 8888 端口,命令如下:
可以看到 PORTS 一列,主机的 8888 端口指向了容器的 8080 端口。
使用镜像
tomcat:7
,以后台模式启动一个容器,将容器的8080
端口映射到主机127.0.0.1:8888
端口容器名字自定义为tomcat77
主机的目录/usr/local/tomcat/webapp
映射到容器/usr/local/tomcat/webapps
启动容器后,在容器内执行 bash 命令,命令如下:
容器 8080 端口映射到主机的 1111 端口
-it
以交互模式启动一个容器,在容器内执行 bash 命令
注:如果这里加了-d
参数,则不会进入容器的 CLI 界面;如果不加 bash 命令,则会执行 tomcat 容器本身自动会执行的命令( catalina.sh run ),也会进不了 CLI 界面,因为会打印一堆运行日志
以 root 权限创建容器,当进入容器之后,拥有 root 权限去执行命令
不加 --privileged
的例子
注:
-uroot
:是给了 root 用户身份,但并没有真正的 root 权限--privileged
:真正让当前用户有了 root 权限
设置容器自动重启
退出容器
总结
通过本文的介绍,相信大家已经对 docker run
命令有了更深入的理解。无论是基本的交互式运行,还是高级的数据卷挂载和端口映射,docker run
都能满足我们在容器化应用开发和部署过程中的各种需求。
评论