1podman-push(1)()                                              podman-push(1)()
2
3
4

NAME

6       podman-push  -  Push  an image, manifest list or image index from local
7       storage to elsewhere
8
9

SYNOPSIS

11       podman push [options] image [destination]
12
13
14       podman image push [options] image [destination]
15
16

DESCRIPTION

18       Pushes an image, manifest list or image index from local storage  to  a
19       specified  destination.  Push  is  mainly  used  to push images to reg‐
20       istries, however podman push can be used to save images to tarballs and
21       directories  using  the  following  transports:  dir:, docker-archive:,
22       docker-daemon: and oci-archive:.
23
24

Image storage

26       Images are pushed from those stored in local image storage.
27
28

DESTINATION

30       The DESTINATION is a location to store container images
31        The Image "DESTINATION" uses a "transport":"details" format.
32        If a transport is not given, podman push will attempt to push
33        to a registry.
34
35
36       Multiple transports are supported:
37
38
39       dir:path
40         An existing local directory path storing the manifest, layer tarballs
41       and  signatures as individual files. This is a non-standardized format,
42       primarily useful for debugging or noninvasive container inspection.
43
44
45              $ podman push myimage dir:/tmp/myimage
46
47
48
49       docker://docker-reference
50         An image in a registry implementing the  "Docker  Registry  HTTP  API
51       V2".  By default, uses the authorization state in $XDG_RUNTIME_DIR/con‐
52       tainers/auth.json, which is set using (podman login). If the authoriza‐
53       tion  state  is  not found there, $HOME/.docker/config.json is checked,
54       which is set using (docker login).
55
56
57              $ podman push myimage quay.io/username/myimage
58
59
60
61       docker-archive:path[:docker-reference]
62         An image is stored in the docker save formatted file.   docker-refer‐
63       ence  is only used when creating such a file, and it must not contain a
64       digest.
65
66
67              $ podman push myimage docker-archive:/tmp/myimage
68
69
70
71       docker-daemon:docker-reference
72         An image in docker-reference  format  stored  in  the  docker  daemon
73       internal storage. docker-reference must contain a tag.
74
75
76              $ sudo podman push myimage docker-daemon:docker.io/library/myimage:33
77
78
79
80       oci-archive:path:tag
81         An image tag in a directory compliant with "Open Container Image Lay‐
82       out Specification" at path.
83
84
85              $ podman push myimage oci-archive:/tmp/myimage
86
87
88

OPTIONS

90   --authfile=path
91       Path of the authentication file. Default is ${XDG_RUNTIME_DIR}/contain‐
92       ers/auth.json,  which  is set using podman login.  If the authorization
93       state is not found there, $HOME/.docker/config.json is  checked,  which
94       is set using docker login.
95
96
97       Note: You can also override the default path of the authentication file
98       by setting the REGISTRY_AUTH_FILE  environment  variable.  export  REG‐
99       ISTRY_AUTH_FILE=path
100
101
102   --creds=[username[:password]]
103       The  [username[:password]]  to use to authenticate with the registry if
104       required.  If one or both values  are  not  supplied,  a  command  line
105       prompt  will  appear  and  the  value  can be entered.  The password is
106       entered without echo.
107
108
109   --cert-dir=path
110       Use certificates at path (*.crt, *.cert, *.key) to connect to the  reg‐
111       istry.  Default certificates directory is /etc/containers/certs.d. (Not
112       available for remote commands)
113
114
115   --compress
116       Compress tarball image layers when pushing to  a  directory  using  the
117       'dir'  transport.  (default  is  same  compression  type, compressed or
118       uncompressed, as source) Note: This flag can only be set when using the
119       dir transport
120
121
122   --digestfile Digestfile
123       After copying the image, write the digest of the resulting image to the
124       file.  (Not available for remote commands)
125
126
127   --disable-content-trust
128       This is a Docker specific option to disable  image  verification  to  a
129       Docker  registry  and  is not supported by Podman.  This flag is a NOOP
130       and provided solely for scripting compatibility.
131
132
133   --format, -f=format
134       Manifest Type (oci, v2s1, or v2s2) to use when pushing an  image  to  a
135       directory  using  the  'dir:'  transport  (default  is manifest type of
136       source) Note: This flag can only be set when using the  dir  transport.
137       (Not available for remote commands)
138
139
140   --quiet, -q
141       When writing the output image, suppress progress output
142
143
144   --remove-signatures
145       Discard  any  pre-existing  signatures in the image. (Not available for
146       remote commands)
147
148
149   --sign-by=key
150       Add a signature at the destination using the specified key. (Not avail‐
151       able for remote commands)
152
153
154   --tls-verify=true|false
155       Require  HTTPS  and  verify  certificates  when  contacting  registries
156       (default: true). If explicitly set to true, then TLS verification  will
157       be  used.  If  set to false, then TLS verification will not be used. If
158       not specified, TLS verification will be used unless the target registry
159       is listed as an insecure registry in registries.conf.
160
161

EXAMPLE

163       This  example  pushes  the  image  specified  by the imageID to a local
164       directory in docker format.
165
166
167       # podman push imageID dir:/path/to/image
168
169
170       This example pushes the image specified  by  the  imageID  to  a  local
171       directory in oci format.
172
173
174       # podman push imageID oci-archive:/path/to/layout:image:tag
175
176
177       This  example  pushes the image specified by the imageID to a container
178       registry named registry.example.com
179
180
181       # podman push imageID docker://registry.example.com/repository:tag
182
183
184       This example pushes the image specified by the imageID to  a  container
185       registry  named registry.example.com and saves the digest in the speci‐
186       fied digestfile.
187
188
189       #  podman   push   --digestfile=/tmp/mydigest   imageID   docker://reg‐
190       istry.example.com/repository:tag
191
192
193       This example pushes the image specified by the imageID and puts it into
194       the local docker container store
195
196
197       # podman push imageID docker-daemon:image:tag
198
199
200       This example pushes the alpine image to  umohnani/alpine  on  dockerhub
201       and reads the creds from the path given to --authfile
202
203
204              # podman push --authfile temp-auths/myauths.json alpine docker://docker.io/umohnani/alpine
205              Getting image source signatures
206              Copying blob sha256:5bef08742407efd622d243692b79ba0055383bbce12900324f75e56f589aedb0
207               4.03 MB / 4.03 MB [========================================================] 1s
208              Copying config sha256:ad4686094d8f0186ec8249fc4917b71faa2c1030d7b5a025c29f26e19d95c156
209               1.41 KB / 1.41 KB [========================================================] 1s
210              Writing manifest to image destination
211              Storing signatures
212
213
214
215       This  example  pushes the rhel7 image to rhel7-dir with the "oci" mani‐
216       fest type
217
218
219              # podman push --format oci registry.access.redhat.com/rhel7 dir:rhel7-dir
220              Getting image source signatures
221              Copying blob sha256:9cadd93b16ff2a0c51ac967ea2abfadfac50cfa3af8b5bf983d89b8f8647f3e4
222               71.41 MB / 71.41 MB [======================================================] 9s
223              Copying blob sha256:4aa565ad8b7a87248163ce7dba1dd3894821aac97e846b932ff6b8ef9a8a508a
224               1.21 KB / 1.21 KB [========================================================] 0s
225              Copying config sha256:f1b09a81455c351eaa484b61aacd048ab613c08e4c5d1da80c4c46301b03cf3b
226               3.01 KB / 3.01 KB [========================================================] 0s
227              Writing manifest to image destination
228              Storing signatures
229
230
231

SEE ALSO

233       podman(1), podman-pull(1), podman-login(1)
234
235
236
237                                                              podman-push(1)()
Impressum