介绍Docker基础指令的概要
由于似乎又要离开一段时间的Docker负责人职位,所以我想把这些内容记录下来,以备忘录的形式进行描述。
本次将简要介绍FROM、RUN和CMD。
从
在Dockerfile中,通过添加FROM指令来确定基础镜像。比如,指定使用最新版本的Ubuntu镜像。
FROM ubuntu:latest
我认为在习惯之前,可以选择拥有所需工具的系统。当适应后,可以考虑只安装必要的工具。
奔跑
使用此命令,您可以根据需要自定义服务器所需的内容。
在映像操作系统上创建名为test1.txt和test2.txt的文件。
RUN touch test1.txt
RUN touch test2.txt
通过运行多行的 RUN 命令,可以在映像操作系统上设置环境,但每个 RUN 命令都会创建一个新的图层。
注意,随着图层数的增加,映像大小也会增加。
减少图层的方法
如果需要使用多个命令RUN、COPY、ADD来创建层,则应使用”&&”将命令连接起来进行描述。如果一行变得很长,Dockerfile会变得难以阅读,因此应使用反斜杠进行换行。
RUN apt-get update
RUN apt-get install aaa
RUN apt-get install bbb
RUN apt-get install ccc
请将以下内容用中文进行释义,只需要一种选项:
↓
RUN apt-get update && apt-get install aaa bbb ccc
当安装包变多时,为了方便查看,我们会使用换行进行整理。
RUN apt-get update && apt-get install \
aaa \
bbb \
ccc```
インタラクティブに実行許可のyを入力する必要があるのでyesを意味する-yを入れるとインストールがスムーズに実行されます。
```docker:Dockerfile
RUN apt-get update && apt-get install \
aaa \
bbb \
ccc
有效利用缓存
每次在使用apt-get等命令安装工具时,如果每个aaa,bbb都成功安装后,连接ccc并进行测试…为了获得执行结果,就会每次都需要访问网络。
如果想要安装 aaa bbb ccc 工具,
使用 Dockerfile 文件:
RUN apt-get install \
aaa \
bbb
如果继续写入 ccc,由于缓存未被利用,将从网络上获取全部内容。
RUN apt-get install \
aaa \
bbb \
ccc
首先,我们将使用不同的 “RUN” 进行描述。
RUN apt-get install \
aaa \
bbb
RUN apt-get ccc
我們首先將後來有更動的部分分開來,以確認它們能否正常運作。如果順利的話,我們可以將其以一行文字的形式記述,以減少從編寫到執行的時間損耗。
命令行
通过在Dockerfile的最后进行指定,可以设置容器默认执行的命令。
CMD [“command”, “parameter1”, “parameter2”, “parameter3”]
例如:启动bash命令。
FROM ...
RUN ...
CMD ["bin/bash"]
结束
如果尝试使用上述提到的命令:FROM、RUN、CMD,我认为您可以很容易地创建像简单的 Web 服务器等环境。Docker 非常方便,请务必尝试一下。