why we need docker pull in addition to docker run