Josh Dolitsky d50a07c149 rename Dockerfile to Dockerfile.build
Signed-off-by: Josh Dolitsky <393494+jdolitsky@users.noreply.github.com>
2020-01-24 11:47:16 -06:00
2019-06-21 15:29:19 -07:00
2020-01-16 15:05:55 -08:00
2019-06-21 15:29:19 -07:00
2019-06-21 15:29:19 -07:00
2019-06-21 15:29:19 -07:00
2020-01-07 14:04:01 -08:00
2020-01-07 14:04:01 -08:00
2019-06-21 14:40:59 -07:00
2020-01-24 11:47:16 -06:00
2019-08-29 10:56:59 -07:00
2020-01-16 15:05:55 -08:00
2019-06-21 15:29:19 -07:00

zot Build Status codecov.io

zot is a vendor-neutral OCI image repository server purely based on OCI Distribution Specification.

  • Conforms to OCI distribution spec APIs zot zot w. auth
  • Uses OCI storage layout for storage layout
  • Currently suitable for on-prem deployments (e.g. colocated with Kubernetes)
  • TLS support
  • Authentication via TLS mutual authentication and HTTP BASIC (local htpasswd and LDAP)
  • Doesn't require root privileges
  • Swagger based documentation
  • Released under Apache 2.0 License
  • go get -u github.com/anuvu/zot/cmd/zot

Presentations

Build and install binary (using host's toolchain)

go get -u github.com/anuvu/zot/cmd/zot

Full CI/CD Build

  • Build inside a container (preferred)
make binary-container
  • Alternatively, build inside a container using stacker (preferred)
make binary-stacker
  • Build using host's toolchain
make

Build artifacts are in bin/

Serving

bin/zot serve _config-file_

Examples of config files are available in examples/ dir.

Ecosystem

Since we couldn't find clients or client libraries that are stictly compliant to the dist spec, we had to patch containers/image (available as anuvu/image) and then link various binaries against the patched version.

skopeo

skopeo is a tool to work with remote image repositories.

We have a patched version available that works with zot.

git clone https://github.com/anuvu/skopeo

cd skopeo

make GO111MODULE=on binary-local

cri-o

cri-o is a OCI-based Kubernetes container runtime interface.

We have a patched version of containers/image available that works with zot which must be linked with cri-o.

git clone https://github.com/cri-o/cri-o

cd cri-o

echo 'replace github.com/containers/image => github.com/anuvu/image v1.5.2-0.20190827234748-f71edca6153a' >> go.mod

make bin/crio crio.conf GO111MODULE=on

Caveats

  • go 1.12+
  • The OCI distribution spec is still WIP, and we try to keep up
Description
No description provided
Readme 22 MiB
Languages
Dockerfile 100%