{"repo":"google/go-containerregistry","free":true,"listed":false,"github":"https://github.com/google/go-containerregistry","clone":"git clone https://github.com/google/go-containerregistry.git","description":"Go library and CLIs for working with container registries","language":"Go","stars":4015,"topics":["docker","container","registry","container-registry"],"license":"Apache-2.0","category":"deployment-docker-iac","readme_excerpt":"go-containerregistry Introduction This is a golang library for working with container registries. It's largely based on the Python library of the same name. The following diagram shows the main types that this library handles. Philosophy The overarching design philosophy of this library is to define interfaces that present an immutable view of resources (e.g. Image , Layer , ImageIndex ), which can be backed by a variety of medium (e.g. registry, tarball, daemon, ...). To complement these immutable views, we support functional mutations that produce new immutable views of the resulting resource (e.g. mutate). The end goal is to provide a set of versatile primitives that can compose to do extraordinarily powerful things efficiently and easily. Both the resource views and mutations may be lazy, eager, memoizing, etc, and most are optimized for common paths based on the tooling we have seen in the wild (e.g. writing new images from disk to the registry as a compressed tarball). v1.Image Sources remote.Image tarball.Image daemon.Image layout.Image random.Image Sinks remote.Write tarball.Write daemon.Write legacy/tarball.Write layout.AppendImage v1.ImageIndex Sources remote.Index random.Index layout.ImageIndexFromPath Sinks remote.WriteIndex layout.Write v1.Layer Sources remote.Layer tarball.LayerFromFile random.Layer stream.Layer Sinks remote.WriteLayer Overview mutate The simplest use for these libraries is to read from one source and write to another. For example, crane pull is","default_branch":null,"files":null,"tree":[],"storefront":"/r/google","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/google/go-containerregistry/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}