<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh-Hans-CN">
	<id>https://wiki.linuxsa.org/index.php?action=history&amp;feed=atom&amp;title=Dockerfile</id>
	<title>Dockerfile - 版本历史</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.linuxsa.org/index.php?action=history&amp;feed=atom&amp;title=Dockerfile"/>
	<link rel="alternate" type="text/html" href="https://wiki.linuxsa.org/index.php?title=Dockerfile&amp;action=history"/>
	<updated>2026-04-20T12:59:52Z</updated>
	<subtitle>本wiki上该页面的版本历史</subtitle>
	<generator>MediaWiki 1.43.1</generator>
	<entry>
		<id>https://wiki.linuxsa.org/index.php?title=Dockerfile&amp;diff=331&amp;oldid=prev</id>
		<title>Evan：​/* dockerfile常用指令： */</title>
		<link rel="alternate" type="text/html" href="https://wiki.linuxsa.org/index.php?title=Dockerfile&amp;diff=331&amp;oldid=prev"/>
		<updated>2022-06-13T02:43:40Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;dockerfile常用指令：&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新页面&lt;/b&gt;&lt;/p&gt;&lt;div&gt;=dockerfile常用指令：=&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
　　FROM：指定基础镜像（FROM是必备的指令，并且必须为第一条指令）。&lt;br /&gt;
&lt;br /&gt;
　　RUN: 用来执行命令行命令。其基本格式：&lt;br /&gt;
&lt;br /&gt;
　　　　　　shell格式： RUN  &amp;lt;命令&amp;gt;  ，输入在bash环境中的命令即可，一个dockerfile允许使用RUN不得超过127层，所以，使用一次RUN， 使用 ‘ \ ’ 换行，使用‘ &amp;amp;&amp;amp; ’执行下一条命令。一般使用此种格式；&lt;br /&gt;
&lt;br /&gt;
　　　　　　exec格式： RUN  &amp;lt;&amp;quot;可执行文件&amp;quot;, &amp;quot;参数1&amp;quot;, &amp;quot;参数2&amp;quot;&amp;gt;，此种方式像是函数调用中的格式；&lt;br /&gt;
&lt;br /&gt;
　　COPY:  复制文件。 其基本格式：&lt;br /&gt;
&lt;br /&gt;
　　　　　　格式1：COPY &amp;lt;源路径&amp;gt;...&amp;lt;目标路径&amp;gt;&lt;br /&gt;
&lt;br /&gt;
　　　　　　格式2：COPY [“&amp;lt;源路径1&amp;gt;”,.....&amp;quot;&amp;lt;目标路径&amp;gt;&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
　　ADD: 更高级的复制文件，在COPY的基础上增加了一些功能，如果复制的是压缩包的话，会直接解压，而不需要在使用RUN解压；&lt;br /&gt;
&lt;br /&gt;
　　CMD：容器启动命令。其基本格式：&lt;br /&gt;
&lt;br /&gt;
　　　　　　shell格式： CMD &amp;lt;命令&amp;gt;&lt;br /&gt;
&lt;br /&gt;
　　　　　　exec格式： CMD [&amp;quot;可执行文件&amp;quot;, &amp;quot;参数1&amp;quot;, &amp;quot;参数2&amp;quot;...]&lt;br /&gt;
&lt;br /&gt;
　　　　　　参数列表格式： CMD [“参数1”, “参数2”...]，在指定了ENTRYPOINT指令后，用CMD指定具体的参数&lt;br /&gt;
&lt;br /&gt;
　　ENTRYPOINT: 入口点。其基本格式分为exec和shell， 只能用一次  写多个 就最后一个生效而已&lt;br /&gt;
&lt;br /&gt;
　　　　　　ENTRYPOINT的目的和CMD一样，都是在指定容器启动程序及参数。ENTRYPOINT在运行中可以替代，不过比CMD繁琐，需要通过docker run 的参数--entrypoint 来指定。当指定了ENTRYPOINT后，CMD的含义就发生了改变，不在是直接运行其命令，而是将CMD的内容作为参数传递给ENTRYPOINT指令。其执行时就变成了：  &amp;lt;ENTRYPOINT&amp;gt; &amp;quot;&amp;lt;CMD&amp;gt;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
　　ENV： 设置环境变量。（都可以使用这里使用的变量）其基本格式：&lt;br /&gt;
&lt;br /&gt;
　　　　　　格式1：ENV &amp;lt;key&amp;gt; &amp;lt;value&amp;gt;&lt;br /&gt;
&lt;br /&gt;
　　　　　　格式2：ENV &amp;lt;key1&amp;gt;=&amp;lt;value1&amp;gt; &amp;lt;key2&amp;gt;=&amp;lt;value&amp;gt;...&lt;br /&gt;
&lt;br /&gt;
　　ARG: 构建参数。构建参数和ENV的效果一样，都是设置环境变量，所不同的是ARG所构建的环境变量在将来容器运行时是不存在的。其基本格式：&lt;br /&gt;
&lt;br /&gt;
　　　　　　格式1： ARG &amp;lt;参数名&amp;gt; [=&amp;lt;默认值&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
　　　　　　格式2： 该默认值可以在构建命令 docker build  中用 --build-arg &amp;lt;参数名&amp;gt;=&amp;lt;值&amp;gt; 来覆盖&lt;br /&gt;
&lt;br /&gt;
　　VOLUME: 定义匿名卷。 其基本格式：&lt;br /&gt;
&lt;br /&gt;
　　　　　　格式1： VOLUME [&amp;quot;&amp;lt;路径1&amp;gt;&amp;quot;, &amp;quot;&amp;lt;路径2&amp;gt;&amp;quot;...]&lt;br /&gt;
&lt;br /&gt;
　　　　　　格式2： VOLUME &amp;lt;路径&amp;gt;&lt;br /&gt;
&lt;br /&gt;
　　EXPOSE:  暴露端口。EXPOSE指令是声明运行时容器所提供的端口，在启动容器时不会在因为这个声明而开启端口。 其基本格式：&lt;br /&gt;
&lt;br /&gt;
　　　　　　格式1： EXPOSE &amp;lt;端口1&amp;gt; [&amp;lt;端口2&amp;gt;...]&lt;br /&gt;
&lt;br /&gt;
　　WORKDIR： 指定工作目录。其基本格式：&lt;br /&gt;
&lt;br /&gt;
　　　　　　格式1： WORKDIR &amp;lt;工作目录路径&amp;gt;&lt;br /&gt;
&lt;br /&gt;
　　USER： 指定当前用户。USER是帮助你切换到指定用户。 其基本格式：&lt;br /&gt;
&lt;br /&gt;
　　　　　　格式1： USER &amp;lt;用户名&amp;gt;&lt;br /&gt;
&lt;br /&gt;
　　HEALTCHECK： 健康检查，判断容器的状态是否正常。 其基本格式：&lt;br /&gt;
&lt;br /&gt;
　　　　　　格式1： HEALTCHECK [选项] CMD &amp;lt;命令&amp;gt; ：设置检查容器健康状况的命令&lt;br /&gt;
&lt;br /&gt;
　　　　　　格式2： HEALTCHECK NONE： 如果基础镜像有健康检查指令，使用此格式可以屏蔽掉其健康检查指令&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=see also=&lt;br /&gt;
&lt;br /&gt;
[https://www.cnblogs.com/yinzhengjie/p/11706241.html Dockerfile详解]&lt;br /&gt;
&lt;br /&gt;
[https://blog.csdn.net/youcijibi/article/details/88781014 docker运行nginx为什么要使用 nginx -g &amp;#039;daemon off;&amp;#039;]&lt;br /&gt;
&lt;br /&gt;
[https://www.cnblogs.com/jie-fang/p/7927643.html Docker基础-使用Dockerfile创建nginx镜像]&lt;br /&gt;
&lt;br /&gt;
[https://www.cnblogs.com/roverliang/p/8431206.html docker 使用入门，创建一个Nginx服务器]&lt;br /&gt;
&lt;br /&gt;
[https://www.itzgeek.com/how-tos/linux/how-to-build-docker-images-with-dockerfile.html How to Build Docker Images with DockerFile]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[https://www.cnblogs.com/boshen-hzb/p/6400272.html dockerfile 介绍]&lt;br /&gt;
&lt;br /&gt;
[https://blog.csdn.net/birdben/article/details/49877549 Docker实战（二）：制作自己的Docker镜像]&lt;br /&gt;
[[category:Container]]&lt;/div&gt;</summary>
		<author><name>Evan</name></author>
	</entry>
</feed>