Câu trả lời:
Bạn có thể sử dụng # là bắt đầu của dòng để nhận xét dòng .
# Everything on this line is a comment
Lưu ý: # như một nhận xét chỉ có thể được sử dụng ở đầu dòng.
Như những người khác đã đề cập, ý kiến được tham chiếu với một #
và được ghi lại ở đây . Tuy nhiên, không giống như một số ngôn ngữ, #
phải ở đầu dòng. Nếu chúng xảy ra một phần thông qua dòng, chúng được hiểu là một đối số và có thể dẫn đến hành vi không mong muốn.
# This is a comment
COPY test_dir target_dir # This is not a comment, it is an argument to COPY
RUN echo hello world # This is an argument to RUN but the shell may ignore it
Cũng cần lưu ý rằng các chỉ thị của trình phân tích cú pháp gần đây đã được thêm vào Dockerfile có cùng cú pháp như một nhận xét. Chúng cần xuất hiện ở đầu tệp, trước bất kỳ nhận xét hoặc lệnh nào khác. Ban đầu, lệnh này đã được thêm vào để thay đổi ký tự thoát để hỗ trợ Windows:
# escape=`
FROM microsoft/nanoserver
COPY testfile.txt c:\
RUN dir c:\
Dòng đầu tiên, trong khi nó có vẻ là một nhận xét, là một lệnh phân tích cú pháp để thay đổi ký tự thoát thành một backtick để các lệnh COPY
và RUN
có thể sử dụng dấu gạch chéo ngược trong đường dẫn. Một lệnh trình phân tích cú pháp cũng được sử dụng với BuildKit để thay đổi trình phân tích cú pháp frontend bằng một syntax
dòng. Xem cú pháp thử nghiệm để biết thêm chi tiết về cách sử dụng trong thực tế.
Với lệnh nhiều dòng, các dòng nhận xét sẽ bị bỏ qua, nhưng bạn cần nhận xét từng dòng riêng lẻ:
$ cat Dockerfile
FROM busybox:latest
RUN echo first command \
# && echo second command disabled \
&& echo third command
$ docker build .
Sending build context to Docker daemon 23.04kB
Step 1/2 : FROM busybox:latest
---> 59788edf1f3e
Step 2/2 : RUN echo first command && echo third command
---> Running in b1177e7b563d
first command
third command
Removing intermediate container b1177e7b563d
---> 5442cfe321ac
Successfully built 5442cfe321ac
#
hoặc chỉ dòng đầu tiên? Một thí nghiệm cho thấy nó là trước đây. Câu trả lời này có thể được cập nhật để bao gồm điều đó (làm cho nó thậm chí còn tuyệt vời hơn).
Sử dụng #
cú pháp cho ý kiến
Từ: https://docs.docker.com/engine/reference/builder/#format
# My comment here
RUN echo 'we are running some cool things'
ADD . $foo # ADD . /bar
Nhận xét Dockerfile bắt đầu bằng '#', giống như Python. Đây là một ví dụ tốt ( kstaken / dockerfile-example ):
# 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"]
MAINTAINER
không được dùng nữa, hiện được khuyên nên sử dụng nhãn:LABEL maintainer="foo@abc.com"
Docker xử lý các dòng bắt đầu bằng # như một nhận xét, trừ khi dòng đó là một lệnh phân tích cú pháp hợp lệ. Dấu # ở bất kỳ nơi nào khác trong dòng được coi là đối số.
mã ví dụ:
# this line is a comment RUN echo 'we are running some # of cool things'
Đầu ra:
we are running some # of cool things
Đây là định dạng của Dockerfile:
Chúng ta có thể sử dụng #
cho mục đích bình luận #Comment
chẳng hạn
#FROM microsoft/aspnetcore
FROM microsoft/dotnet
COPY /publish /app
WORKDIR /app
ENTRYPOINT ["dotnet", "WebApp.dll"]
Từ tệp trên khi chúng tôi xây dựng docker, nó bỏ qua dòng đầu tiên và đi đến dòng tiếp theo vì chúng tôi đã nhận xét nó bằng cách sử dụng #