Haufe Group interview question

In Docker what's the difference between CMD, ENTRYPOINT and RUN