/ note

Creating Dockerfile

Difference between CMD and ENTRYPOINT

Difference between CMD and ENTRYPOINT

Both instructions run command inside docker after it starts. Difference in behavior is happend when you add some additional params while run container:

docker run <some_image> <some_command>

If you set some-command, this command rewrite CMD instruction in Dockerfile. But if you have ENTRYPOINT instruction in Dockerfile, some_command will not rewrite, but append to the end of your ENTRYPOINT instruction.

What happend if Dockerfile has both instructions - ENTRYPOINT and CMD? It will be joined, for example:

# some Dockerfile
ENTRYPOINT ['docker-entrypoint.sh']
CMD ["apache2-foreground"]

will be evaluated to:

docker run <some_image> docker-entrypoint.sh apache2-foreground

Difference between ADD and COPY

Difference between Bind Mount and Volume Mount

Volume mounting -