Tag, push, and pull your image
In this section, you tag and push your docker-whale
image to your newly created repository. When you are done, you test the repository by pulling your new image.
Step 1: Tag and push the image
If you don’t already have a terminal open, open one now:
-
Go back to your command line terminal.
-
At the prompt, type
docker images
to list the images you currently have:$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE docker-whale latest 7d9495d03763 38 minutes ago 273.7 MB <none> <none> 5dac217f722c 45 minutes ago 273.7 MB docker/whalesay latest fb434121fc77 4 hours ago 247 MB hello-world latest 91c95931e552 5 weeks ago 910 B
-
Find the
IMAGE ID
for yourdocker-whale
image.
7d9495d03763
. Notice that currently, the `REPOSITORY` shows the repo name `docker-whale` but not the namespace. You need to include the `namespace` for Docker Hub to associate it with your account. The `namespace` is the same as your Docker Hub account name. You need to rename the image to `YOUR_DOCKERHUB_NAME/docker-whale`.
-
Use
IMAGE ID
and thedocker tag
command to tag yourdocker-whale
image.The command you type looks like this:
Of course, your account name will be your own. So, you type the command with your image’s ID and your account name and press RETURN.
$ docker tag 7d9495d03763 maryatdocker/docker-whale:latest
-
Type the
docker images
command again to see your newly tagged image.$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE maryatdocker/docker-whale latest 7d9495d03763 5 minutes ago 273.7 MB docker-whale latest 7d9495d03763 2 hours ago 273.7 MB <none> <none> 5dac217f722c 5 hours ago 273.7 MB docker/whalesay latest fb434121fc77 5 hours ago 247 MB hello-world latest 91c95931e552 5 weeks ago 910 B
-
Use the
docker login
command to log into the Docker Hub from the command line.The format for the login command is:
docker login
When prompted, enter your password and press enter. So, for example:
$ docker login Login with your Docker ID to push and pull images from Docker Hub. If you don't have a Docker ID, head over to https://hub.docker.com to create one. Username: Password: Login Succeeded
-
Type the
docker push
command to push your image to your new repository.$ docker push maryatdocker/docker-whale The push refers to a repository [maryatdocker/docker-whale] (len: 1) 7d9495d03763: Image already exists c81071adeeb5: Image successfully pushed eb06e47a01d2: Image successfully pushed fb434121fc77: Image successfully pushed 5d5bd9951e26: Image successfully pushed 99da72cfe067: Image successfully pushed 1722f41ddcb5: Image successfully pushed 5b74edbcaa5b: Image successfully pushed 676c4a1897e6: Image successfully pushed 07f8e8c5e660: Image successfully pushed 37bea4ee0c81: Image successfully pushed a82efea989f9: Image successfully pushed e9e06b06e14c: Image successfully pushed Digest: sha256:ad89e88beb7dc73bf55d456e2c600e0a39dd6c9500d7cd8d1025626c4b985011
-
Return to your profile on Docker Hub to see your new image.
Step 2: Pull your new image
In this last section, you’ll pull the image you just pushed to hub. Before you do that though, you’ll need to remove the original image from your local machine. If you left the original image on your machine, Docker would not pull from the hub — why would it? The two images are identical.
-
Make sure Docker is running, and open a command line terminal.
-
At the prompt, type
docker images
to list the images you currently have on your local machine.$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE maryatdocker/docker-whale latest 7d9495d03763 5 minutes ago 273.7 MB docker-whale latest 7d9495d03763 2 hours ago 273.7 MB <none> <none> 5dac217f722c 5 hours ago 273.7 MB docker/whalesay latest fb434121fc77 5 hours ago 247 MB hello-world latest 91c95931e552 5 weeks ago 910 B
To make a good test, you need to remove the
maryatdocker/docker-whale
anddocker-whale
images from your local system. Removing them forces the nextdocker pull
to get the image from your repository. -
Use the
docker rmi
to remove themaryatdocker/docker-whale
anddocker-whale
images.You can use an ID or the name to remove an image.
$ docker rmi -f 7d9495d03763 $ docker rmi -f docker-whale
-
Pull and load a new image from your repository using the
docker run
command.The command you type should include your username from Docker Hub.
docker run yourusername/docker-whale
Since the image is no longer available on your local system, Docker downloads it.
$ docker run maryatdocker/docker-whale Unable to find image 'maryatdocker/docker-whale:latest' locally latest: Pulling from maryatdocker/docker-whale eb06e47a01d2: Pull complete c81071adeeb5: Pull complete 7d9495d03763: Already exists e9e06b06e14c: Already exists a82efea989f9: Already exists 37bea4ee0c81: Already exists 07f8e8c5e660: Already exists 676c4a1897e6: Already exists 5b74edbcaa5b: Already exists 1722f41ddcb5: Already exists 99da72cfe067: Already exists 5d5bd9951e26: Already exists fb434121fc77: Already exists Digest: sha256:ad89e88beb7dc73bf55d456e2c600e0a39dd6c9500d7cd8d1025626c4b985011 Status: Downloaded newer image for maryatdocker/docker-whale:latest ________________________________________ / Having wandered helplessly into a \ | blinding snowstorm Sam was greatly | | relieved to see a sturdy Saint Bernard | | dog bounding toward him with the | | traditional keg of brandy strapped to | | his collar. | | | | "At last," cried Sam, "man's best | \ friend -- and a great big dog, too!" / ---------------------------------------- \ \ \ ## . ## ## ## == ## ## ## ## === /""""""""""""""""___/ === ~~~ {~~ ~~~~ ~~~ ~~~~ ~~ ~ / ===- ~~~ \______ o __/ \ \ __/ \____\______/
Where to go next
You’ve done a lot, you’ve done all of the following fundamental Docker tasks.
- installed Docker
- run a software image in a container
- located an interesting image on Docker Hub
- run the image on your own machine
- modified an image to create your own and run it
- create a Docker Hub account and repository
- pushed your image to Docker Hub for others to share
You’ve only scratched the surface of what Docker can do. Go to the next page to learn more.
© 2017 Docker, Inc.
Licensed under the Apache License, Version 2.0.
Docker and the Docker logo are trademarks or registered trademarks of Docker, Inc. in the United States and/or other countries.
Docker, Inc. and other parties may also have trademark rights in other terms used herein.
https://docs.docker.com/v1.12/engine/getstarted/step_six/