In Dockerfiles there are two commands that look similar to me: CMD and ENTRYPOINT. But I guess that there is a (subtle?) difference between them -
CMD
ENTRYPOINT
CMD command mentioned inside Dockerfile file can be overridden via docker run command while ENTRYPOINT can not be.
Dockerfile
docker run