使用Docker镜像
<h3 id="什么是docker镜像">什么是Docker镜像? Docer的镜像是一个只读的文件系统,除了提供容器(进程)运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的一些配置参数(如匿名卷、环境变量、用户等)。镜像不包含任何动态数据,其内容在构建之后也不会改变。 Docker Hub上有大量的高质量的镜像可以用,从Docker镜像仓库获取镜像的命令是docker pull,其命令格式为 docker pull [选项] [Docker Registry 地址[:端口号]/]仓库名[:标签] 镜像名称的格式为:
有了镜像之后,我们就可以以这个镜像为基础启动一个容器来运行。以上面的 ubuntu:16.04 为 例,如果我们打算启动里面的 bash 并且进行交互式操作的话,可以执行下面的命令。 docker run -it --rm ubuntu:16.04 bash 这里我们是手动的根据镜像启动容器,我们接下来看下docker run的各种参数的详解。Docker run后的参数很多,Docker会在隔离的容器中运行进程,当运行docker run 命令时,Docker回启动一个进程,并为这个进程分配其独占的文件系统、网络资源和以此进程为根进程的进程组。在容器启动时,镜像可能已经定义了要运行的二进制文件、暴露的网络端口等,但是用户可以通过docker run命令重新的定义,就是说,docker run可以控制一个容器运行时的行为,比如监听的端口号,它可以覆盖docker build在构建镜像时的一些默认配置。 正常的命令行为
这里我们先来说下OPTIONS Detached(-d) 容器运行在后台模式?后台模式和前台模式的区别待详细。 COMMAND也就是CMD是可以用来覆盖默认的执行命令的。 run指令参考文章 。 想要列出已经下载了的镜像,可以使用docker image ls命令。 在镜像下载和上传的过程中镜像是保持着压缩状态的,所以这里列表出来的镜像的大小会比较大。 docker system df 命令用来查看镜像、容器、数据卷所占用的控件、 由于新旧镜像同名,旧镜像名称被取消,从而出现仓库名、标签均为none的镜像。这类无标签镜像也被成为虚悬镜像。 docker image ls -f dangling=true 用来查看虚悬镜像 首先,如果有在使用该镜像的容器正在运行,则需要首先停止该容器并删除该容器 //停止运行中的容器 docker stop [容器id] <h3 id="中间层镜像">中间层镜像 Docker会利用中间层镜像,所以在使用了一段时间之后,可能会看到一些依赖的中间层镜像。 docker image -a 列出包括着中间层镜像在内的所有镜像
|