Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
CONTAINERS-TRANSPORTS(5)	      Man	      CONTAINERS-TRANSPORTS(5)

Valentin Rothberg April	2019

NAME
       containers-transports - description of supported	transports for copying
       and storing container images

DESCRIPTION
       Tools  which  use  the  containers/image	 library, including skopeo(1),
       buildah(1), podman(1), all share	a common syntax	for referring to  con-
       tainer  images in various locations.  The general form of the syntax is
       transport:details, where	details	are dependent on the specified	trans-
       port, which are documented below.

       The  semantics  of the image names ultimately depend on the environment
       where they are evaluated. For example: if evaluated on a	remote server,
       image names might refer to paths	on that	 server;  relative  paths  are
       relative	to the current directory of the	image consumer.

   containers-storage:[[storage-specifier]]{image-id|docker-reference[@image-
       id]}
       An  image located in a local containers storage.	 The format of docker-
       reference is described in detail	in the docker transport.

       The storage-specifier allows for	referencing storage locations  on  the
       file  system  and  has  the format [[driver@]root[+run-root][:options]]
       where the optional driver refers	to the storage driver  (e.g.,  overlay
       or  btrfs) and where root is an absolute	path to	the storage's root di-
       rectory.	 The optional run-root can be used to specify the  run	direc-
       tory  of	 the  storage  where all temporary writable content is stored.
       The optional options are	a comma-separated list of driver-specific  op-
       tions.  Please refer to containers-storage.conf(5) for further informa-
       tion on the drivers and supported options.

   dir:path
       An  existing  local directory path storing the manifest,	layer tarballs
       and signatures as individual files.  This is a non-standardized format,
       primarily useful	for debugging or noninvasive container inspection.

   docker://docker-reference
       An image	in a registry implementing the "Docker Registry	HTTP API  V2".
       By  default,  uses the authorization state in $XDG_RUNTIME_DIR/contain-
       ers/auth.json, which is set using podman-login(1).  If  the  authoriza-
       tion  state  is	not found there, $HOME/.docker/config.json is checked,
       which is	set using docker-login(1).  The	 containers-registries.conf(5)
       further allows for configuring various settings of a registry.

       Note that a docker-reference has	the following format: name[:tag	| @di-
       gest].	While  the  docker transport does not support both a tag and a
       digest at the same time some formats like containers-storage  do.   Di-
       gests  can also be used in an image destination as long as the manifest
       matches the provided digest.

       The docker transport supports pushing images without a tag or digest to
       a registry when the image name is suffixed with @@unknown-digest@@. The
       name@@unknown-digest@@ reference	format cannot be used with a reference
       that has	a tag or digest.  The digest of	images can  be	explored  with
       skopeo-inspect(1).

       If  name	 does  not  contain  a	slash,	it is treated as docker.io/li-
       brary/name.  Otherwise, the component before the	first slash is checked
       if it is	recognized as a	hostname <i.e.,	it contains either a `.` or  a
       `:`,  or	the component is exactly `localhost`>.	If the first component
       of name is not recognized as a  hostname[:port],	 name  is  treated  as
       docker.io/name.

   docker-archive:path[:{docker-reference|@source-index}]
       An image	is stored in the docker-save(1)	formatted file.

       Unless  a  tool	explicitly  documents  otherwise, a write to a docker-
       archive:	destination completely overwrites path,	replacing it with  the
       single provided image.

       The path	can refer to a stream, e.g. docker-archive:/dev/stdin.

       docker-reference	must not contain a digest.  Alternatively, for reading
       archives,  @source-index	 is a zero-based index in archive manifest (to
       access untagged images).	 If neither docker-reference nor  @_source_in-
       dex  is specified when reading an archive, the archive must contain ex-
       actly one image.

   docker-daemon:docker-reference|algo:digest
       An image	stored in the docker daemon's  internal	 storage.   The	 image
       must  be	 specified as a	docker-reference or in an alternative algo:di-
       gest format when	being used as an image source.	The algo:digest	refers
       to the image ID reported	by docker-inspect(1).

   oci:path[:reference]
       An image	in a directory structure compliant with	 the  "Open  Container
       Image Layout Specification" at path.

       The path	value terminates at the	first :	character; any further : char-
       acters  are  not	separators, but	a part of reference.  The reference is
       used to set, or match, the org.opencontainers.image.ref.name annotation
       in the top-level	index.	If reference is	not specified when reading  an
       image, the directory must contain exactly one image.

   oci-archive:path[:reference]
       An  image  in  a	 tar(1)	archive	with contents compliant	with the "Open
       Container Image Layout Specification" at	path.

       Unless a	tool explicitly	 documents  otherwise,	a  write  to  an  oci-
       archive:	 destination completely	overwrites path, replacing it with the
       single provided image.

       The path	value terminates at the	first :	character; any further : char-
       acters are not separators, but a	part of	reference.  The	 reference  is
       used to set, or match, the org.opencontainers.image.ref.name annotation
       in  the top-level index.	 If reference is not specified when reading an
       archive,	the archive must contain exactly one image.

   ostree:docker-reference[@/absolute/repo/path]
       An image	in the local ostree(1)	repository.   /absolute/repo/path  de-
       faults to /ostree/repo.

   sif:path
       An image	using the Singularity image format at path.

       Only  reading  images  is  supported, and not all scripts can be	repre-
       sented in the OCI format.

Examples
       The following examples demonstrate how some of  the  containers	trans-
       ports  can  be  used.  The examples use skopeo-copy(1) for copying con-
       tainer images.

       Copying an image	from one registry to another:

       $ skopeo	copy docker://docker.io/library/alpine:latest docker://localhost:5000/alpine:latest

       Copying an image	from a running Docker daemon to	a directory in the OCI
       layout:

       $ mkdir alpine-oci
       $ skopeo	copy docker-daemon:alpine:latest oci:alpine-oci
       $ tree alpine-oci
       test-oci/
	blobs
	   sha256
	       83ef92b73cf4595aa7fe214ec6747228283d585f373d8f6bc08d66bebab531b7
	       9a6259e911dcd0a53535a25a9760ad8f2eded3528e0ad5604c4488624795cecc
	       ff8df268d29ccbe81cdf0a173076dcfbbea4bb2b6df1dd26766a73cb7b4ae6f7
	index.json
	oci-layout

       2 directories, 5	files

       Copying an image	from a registry	to the local storage:

       $ skopeo	copy docker://docker.io/library/alpine:latest containers-storage:alpine:latest

SEE ALSO
       docker-login(1),	docker-save(1),	 ostree(1),  podman-login(1),  skopeo-
       copy(1),	 skopeo-inspect(1), tar(1), container-registries.conf(5), con-
       tainers-storage.conf(5)

AUTHORS
       Miloslav	Trma mitr@redhat.com <mailto:mitr@redhat.com>  Valentin	 Roth-
       berg rothberg@redhat.com	<mailto:rothberg@redhat.com>

Transports			  Containers	      CONTAINERS-TRANSPORTS(5)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=containers-transports&sektion=5&manpath=FreeBSD+Ports+14.3.quarterly>

home | help