docker image push

Estimated reading time: 3 minutes

Description

Push an image or a repository to a registry

Usage

docker image push [OPTIONS] NAME[:TAG]

Options

Name, shorthand Default Description
--disable-content-trust true Skip image signing

Parent command

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

Extended description

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).

EXAMPLES

Pushing a new image to a registry

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.

Examples

Pushing a new image to a registry

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.

chat icon Feedback? Suggestions? Can't find something in the docs?
Edit this page Request docs changes Get support
Rate this page: