www.LinuxHowtos.org





DOCKER

Section: Docker User Manuals (1)
Updated: Jun 2025
Index Return to Main Contents

 

NAME

docke-imag-push- Upload an image to a registry

 

SYNOPSIS

docker image push [OPTIONS] NAME[:TAG]

 

DESCRIPTION

Use docker image push to share your images to the Docker Hub [la]https://hub.docker.com[ra] registry or to a sel-hosted one.

Refer to docke-imag-tag(1) for more information about valid image and tag names.

Killing the docker image push process, for example by pressing CTR-c while it is running in a terminal, terminates the push operation.

Registry credentials are managed by docke-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 -z--_. are allowed when naming images:

# docker container commit c16378f943fe rhe-httpd

Now, push the image to the registry using the image ID. In this example the registry is on host named registr-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 rhe-httpd registr-host:5000/myadmin/rhe-httpd:latest # docker image push registr-host:5000/myadmin/rhe-httpd:latest

Check that this worked by running:

# docker image ls

You should see both rhe-httpd and registr-host:5000/myadmin/rhe-httpd listed.

 

Push all tags of an image

Use the -a (or -al-tags) option to push all tags of a local image.

The following example creates multiple tags for an image, and pushes all those tags to Docker Hub.

$ docker image tag myimage registr-host:5000/myname/myimage:latest $ docker image tag myimage registr-host:5000/myname/myimage:v1.0.1 $ docker image tag myimage registr-host:5000/myname/myimage:v1.0 $ docker image tag myimage registr-host:5000/myname/myimage:v1

The image is now tagged under multiple names:

$ docker image ls

REPOSITORY TAG IMAGE ID CREATED SIZE myimage latest 6d5fcfe5ff17 2 hours ago 1.22MB registr-host:5000/myname/myimage latest 6d5fcfe5ff17 2 hours ago 1.22MB registr-host:5000/myname/myimage v1 6d5fcfe5ff17 2 hours ago 1.22MB registr-host:5000/myname/myimage v1.0 6d5fcfe5ff17 2 hours ago 1.22MB registr-host:5000/myname/myimage v1.0.1 6d5fcfe5ff17 2 hours ago 1.22MB

When pushing with the -al-tags option, all tags of the registr-host:5000/myname/myimage image are pushed:

$ docker image push-al-tags registr-host:5000/myname/myimage

The push refers to repository [registr-host:5000/myname/myimage] 195be5f8be1d: Pushed latest: digest: sha256:edafc0a0fb057813850d1ba44014914ca02d671ae247107ca70c94db686e7de6 size: 4527 195be5f8be1d: Layer already exists v1: digest: sha256:edafc0a0fb057813850d1ba44014914ca02d671ae247107ca70c94db686e7de6 size: 4527 195be5f8be1d: Layer already exists v1.0: digest: sha256:edafc0a0fb057813850d1ba44014914ca02d671ae247107ca70c94db686e7de6 size: 4527 195be5f8be1d: Layer already exists v1.0.1: digest: sha256:edafc0a0fb057813850d1ba44014914ca02d671ae247107ca70c94db686e7de6 size: 4527

 

OPTIONS

-a, -al-tags[=false]         Push all tags of an image to the repository

-disabl-conten-trust[=true]         Skip image signing

-platform=""         Push a platfor-specific manifest as a singl-platform image to the registry.
Image index won't be pushed, meaning that other manifests, including attestations won't be preserved. 'os[/arch[/variant]]': Explicit platform (eg. linux/amd64)

-q, -quiet[=false]         Suppress verbose output

 

SEE ALSO

docke-image(1)


 

Index

NAME
SYNOPSIS
DESCRIPTION
EXAMPLES
Pushing a new image to a registry
Push all tags of an image
OPTIONS
SEE ALSO