How do I make a comment in a Dockerfile? How do I make a comment in a Dockerfile? docker docker

How do I make a comment in a Dockerfile?


You can use # at the beginning of a line to start a comment (whitespaces before # are allowed):

# do some stuffRUN apt-get update \    # install some packages    && apt-get install -y cron

#'s in the middle of a string are passed to the command itself, e.g.:

RUN echo 'we are running some # of cool things'


As others have mentioned, comments are referenced with a # and are documented here. However, unlike some languages, the # must be at the beginning of the line. If they occur part way through the line, they are interpreted as an argument and may result in unexpected behavior.

# This is a commentCOPY test_dir target_dir # This is not a comment, it is an argument to COPYRUN echo hello world # This is an argument to RUN but the shell may ignore it

It should also be noted that parser directives have recently been added to the Dockerfile which have the same syntax as a comment. They need to appear at the top of the file, before any other comments or commands. Originally, this directive was added for changing the escape character to support Windows:

# escape=`FROM microsoft/nanoserverCOPY testfile.txt c:\RUN dir c:\

The first line, while it appears to be a comment, is a parser directive to change the escape character to a backtick so that the COPY and RUN commands can use the backslash in the path. A parser directive is also used with BuildKit to change the frontend parser with a syntax line. See the experimental syntax for more details on how this is being used in practice.

With a multi-line command, the commented lines are ignored, but you need to comment out every line individually:

$ cat DockerfileFROM busybox:latestRUN echo first command \# && echo second command disabled \ && echo third command$ docker build .Sending build context to Docker daemon  23.04kBStep 1/2 : FROM busybox:latest ---> 59788edf1f3eStep 2/2 : RUN echo first command  && echo third command ---> Running in b1177e7b563dfirst commandthird commandRemoving intermediate container b1177e7b563d ---> 5442cfe321acSuccessfully built 5442cfe321ac


Use the # syntax for comments

From: https://docs.docker.com/engine/reference/builder/#format

# My comment hereRUN echo 'we are running some cool things'