我正在写一个Dockerfile。有办法在这个文件中做注释吗?
Docker是否有一个注释选项来接受一行的剩余部分并忽略它?
我正在写一个Dockerfile。有办法在这个文件中做注释吗?
Docker是否有一个注释选项来接受一行的剩余部分并忽略它?
当前回答
Dockerfile注释以#开头,就像Python一样。 Kstaken有很好的例子:
# Install a more-up-to date version of MongoDB than what is included in the default Ubuntu repositories.
FROM ubuntu
MAINTAINER Kimbro Staken
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10
RUN echo "deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen" | tee -a /etc/apt/sources.list.d/10gen.list
RUN apt-get update
RUN apt-get -y install apt-utils
RUN apt-get -y install mongodb-10gen
#RUN echo "" >> /etc/mongodb.conf
CMD ["/usr/bin/mongod", "--config", "/etc/mongodb.conf"]
其他回答
你可以在一行的开头使用#来开始注释(允许在#之前有空格):
# do some stuff
RUN apt-get update \
# install some packages
&& apt-get install -y cron
字符串中间的#被传递给命令本身,例如:
RUN echo 'we are running some # of cool things'
# this is comment
this isn't comment
就是这样做的。你可以把它放在行中的任何地方,后面的任何内容都将被忽略
Dockerfile注释以#开头,就像Python一样。 Kstaken有很好的例子:
# Install a more-up-to date version of MongoDB than what is included in the default Ubuntu repositories.
FROM ubuntu
MAINTAINER Kimbro Staken
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10
RUN echo "deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen" | tee -a /etc/apt/sources.list.d/10gen.list
RUN apt-get update
RUN apt-get -y install apt-utils
RUN apt-get -y install mongodb-10gen
#RUN echo "" >> /etc/mongodb.conf
CMD ["/usr/bin/mongod", "--config", "/etc/mongodb.conf"]
Docker将以#开头的行视为注释,除非 Line是一个有效的解析器指令。一行中的任何地方都有#标记 被视为一个参数。 示例代码: #这一行是注释 RUN echo '我们正在运行一些#很酷的东西' 输出: 我们正在做一些很酷的事情
格式
Dockerfile的格式如下:
我们可以使用#来进行注释,例如#COMMENT
#FROM microsoft/aspnetcore
FROM microsoft/dotnet
COPY /publish /app
WORKDIR /app
ENTRYPOINT ["dotnet", "WebApp.dll"]
当我们构建docker时,从上面的文件中,它会跳过第一行并进入下一行,因为我们使用#注释了它