Push an image or a repository to a registry
docker image push [OPTIONS] NAME[:TAG]
Name, shorthand | Default | Description |
---|---|---|
--disable-content-trust |
true |
Skip image signing |
Command | Description |
---|---|
docker image | Manage images |
Command | Description |
---|---|
docker image build | Build an image from a Dockerfile |
docker image history | Show the history of an image |
docker image import | Import the contents from a tarball to create a filesystem image |
docker image inspect | Display detailed information on one or more images |
docker image load | Load an image from a tar archive or STDIN |
docker image ls | List images |
docker image prune | Remove unused images |
docker image pull | Pull an image or a repository from a registry |
docker image push | Push an image or a repository to a registry |
docker image rm | Remove one or more images |
docker image save | Save one or more images to a tar archive (streamed to STDOUT by default) |
docker image tag | Create a tag TARGET_IMAGE that refers to SOURCE_IMAGE |
Use docker image push
to share your images to the Docker Hub
registry or to a self-hosted one.
Refer to docker-image-tag(1) for more information about valid image and tag names.
Killing the docker image push process, for example by pressing CTRL-c while it is running in a terminal, terminates the push operation.
Registry credentials are managed by docker-login(1).
First save the new image by finding the container ID (using docker container ls) and then committing it to a new image name. Note that only a-z0-9-_. are allowed when naming images:
# docker container commit c16378f943fe rhel-httpd
Now, push the image to the registry using the image ID. In this example the
registry is on host named registry-host
and listening on port 5000
. To do
this, tag the image with the host name or IP address, and the port of the
registry:
# docker image tag rhel-httpd registry-host:5000/myadmin/rhel-httpd
# docker image push registry-host:5000/myadmin/rhel-httpd
Check that this worked by running:
# docker image ls
You should see both rhel-httpd
and registry-host:5000/myadmin/rhel-httpd
listed.
First save the new image by finding the container ID (using docker container ls)
and then committing it to a new image name. Note that only a-z0-9-_.
are
allowed when naming images:
$ docker container commit c16378f943fe rhel-httpd
Now, push the image to the registry using the image ID. In this example the
registry is on host named registry-host
and listening on port 5000
. To do
this, tag the image with the host name or IP address, and the port of the
registry:
$ docker image tag rhel-httpd registry-host:5000/myadmin/rhel-httpd
$ docker image push registry-host:5000/myadmin/rhel-httpd
Check that this worked by running:
$ docker image ls
You should see both rhel-httpd
and registry-host:5000/myadmin/rhel-httpd
listed.