 Docker 从入门到实践 0.9.0(2017-12-31)镜像加速器 使用镜像 获取镜像 列出镜像 删除本地镜像 利用 commit 理解镜像构成 使用 Dockerfile 定制镜像 Dockerfile 指令详解 COPY 复制文件 ADD 更高级的复制文件 CMD 容器启动命令 ENTRYPOINT 入口点 ENV 设置环境变量 2 1.7.6.6 1.7.6.7 1.7.6.8 1.7.6.9 1.7.6.10 FROM scratch ... 如果你以 scratch 为基础镜像的话,意味着你不以任何镜像为基础,接下来所写的指令将作 为镜像第一层开始存在。 不以任何系统为基础,直接将可执行文件复制进镜像的做法并不罕见,比如 swarm 、 coreos/etcd 。对于 Linux 下静态编译的程序来说,并不需要有操作系统提供运行时 支持,所需的一切库都已经在可执行文件里了,因此直接 引擎)完成。也因为这种 C/S 设计, 让我们操作远程服务器的 Docker 引擎变得轻而易举。 当我们进行镜像构建的时候,并非所有定制都会通过 RUN 指令完成,经常会需要将一些本地 文件复制进镜像,比如通过 COPY 指令、 ADD 指令等。而 docker build 命令构建镜像,其 实并非在本地构建,而是在服务端,也就是 Docker 引擎中构建的。那么在这种客户端/服务0 码力 | 370 页 | 6.73 MB | 1 年前3 Docker 从入门到实践 0.9.0(2017-12-31)镜像加速器 使用镜像 获取镜像 列出镜像 删除本地镜像 利用 commit 理解镜像构成 使用 Dockerfile 定制镜像 Dockerfile 指令详解 COPY 复制文件 ADD 更高级的复制文件 CMD 容器启动命令 ENTRYPOINT 入口点 ENV 设置环境变量 2 1.7.6.6 1.7.6.7 1.7.6.8 1.7.6.9 1.7.6.10 FROM scratch ... 如果你以 scratch 为基础镜像的话,意味着你不以任何镜像为基础,接下来所写的指令将作 为镜像第一层开始存在。 不以任何系统为基础,直接将可执行文件复制进镜像的做法并不罕见,比如 swarm 、 coreos/etcd 。对于 Linux 下静态编译的程序来说,并不需要有操作系统提供运行时 支持,所需的一切库都已经在可执行文件里了,因此直接 引擎)完成。也因为这种 C/S 设计, 让我们操作远程服务器的 Docker 引擎变得轻而易举。 当我们进行镜像构建的时候,并非所有定制都会通过 RUN 指令完成,经常会需要将一些本地 文件复制进镜像,比如通过 COPY 指令、 ADD 指令等。而 docker build 命令构建镜像,其 实并非在本地构建,而是在服务端,也就是 Docker 引擎中构建的。那么在这种客户端/服务0 码力 | 370 页 | 6.73 MB | 1 年前3
 Docker 从入门到实践 0.4commit 一样)。当所有的指令都执行完毕之 后,返回了最终的镜像 id。所有的中间步骤所产生的容器都被删除和清理了。 *注意一个镜像不能超过 127 层 此外,还可以利用 ADD 命令复制本地文件到镜像;用 EXPOSE 命令来向外部开放端口;用 CMD 命令来 描述容器启动后运行的程序等。例如 # put my local web site in myApp folder 服务正常运行所需要的目录。 COPY supervisord.conf /etc/supervisor/conf.d/supervisord.conf 添加 supervisord 的配置文件,并复制配置文件到对应目录下面。 EXPOSE 22 80 CMD ["/usr/bin/supervisord"] 这里我们映射了 22 和 80 端口,使用 supervisord 的可执行路径启动服务。 ATH 格式为 ADD Docker 从入门到实践 0.4commit 一样)。当所有的指令都执行完毕之 后,返回了最终的镜像 id。所有的中间步骤所产生的容器都被删除和清理了。 *注意一个镜像不能超过 127 层 此外,还可以利用 ADD 命令复制本地文件到镜像;用 EXPOSE 命令来向外部开放端口;用 CMD 命令来 描述容器启动后运行的程序等。例如 # put my local web site in myApp folder 服务正常运行所需要的目录。 COPY supervisord.conf /etc/supervisor/conf.d/supervisord.conf 添加 supervisord 的配置文件,并复制配置文件到对应目录下面。 EXPOSE 22 80 CMD ["/usr/bin/supervisord"] 这里我们映射了 22 和 80 端口,使用 supervisord 的可执行路径启动服务。 ATH 格式为 ADD- 。 该命令将复制指定的 - 到容器中的 - 。 其中 - 可以是Dockerfile所在目录的一个相对路 径;也可以是一个 URL;还可以是一个 tar 文件(自动解压为目录)。 格式为 COPY - 。 复制本地主机的 - (为 Dockerfile 所在目录的相对路径)到容器中的 0 码力 | 179 页 | 2.27 MB | 1 年前3
 Docker 从⼊⻔到实践Dockerfile 好处 1. 使⽤#来注释 2. FROM 指令告诉 Docker 使⽤哪个镜像作为基础 3. RUN 开头的指令会在创建中运⾏,⽐如安装⼀个软件包 4. COPY 指令将⽂件复制进镜像中 5. WORKDIR 指定⼯作⽬录 6. CMD/ENTRYPOINT 容器启动执⾏命令 Dockerfile 规则 FROM mhart/alpine-node:8.9.3 LABEL0 码力 | 30 页 | 2.88 MB | 1 年前3 Docker 从⼊⻔到实践Dockerfile 好处 1. 使⽤#来注释 2. FROM 指令告诉 Docker 使⽤哪个镜像作为基础 3. RUN 开头的指令会在创建中运⾏,⽐如安装⼀个软件包 4. COPY 指令将⽂件复制进镜像中 5. WORKDIR 指定⼯作⽬录 6. CMD/ENTRYPOINT 容器启动执⾏命令 Dockerfile 规则 FROM mhart/alpine-node:8.9.3 LABEL0 码力 | 30 页 | 2.88 MB | 1 年前3
共 3 条
- 1













