0
Fork 0
mirror of https://github.com/project-zot/zot.git synced 2024-12-16 21:56:37 -05:00
zot - A scale-out production-ready vendor-neutral OCI-native container image/artifact registry (purely based on OCI Distribution Specification)
Find a file
Ramkumar Chinchani 7779188a9c ldap: pull in external library code so go modules are in control
1) github.com/jtblin/go-ldap-client is an abandoned project and not keeping
up with go modules, so pull that code in (single file, BSD license)

2) minor refactor ldap as a result of 1)

3) update go.mod
2019-12-11 14:17:06 -08:00
.bazel zot: initial commit 2019-06-21 15:29:19 -07:00
cmd/zot zot: initial commit 2019-06-21 15:29:19 -07:00
docs docs: fix Makefile 2019-08-29 10:56:59 -07:00
errors ldap: improve recovery when connection failures 2019-11-18 11:54:11 -08:00
examples auth: add LDAP support 2019-09-20 11:54:49 -07:00
pkg ldap: pull in external library code so go modules are in control 2019-12-11 14:17:06 -08:00
test/data tls: require mutual auth only when htpasswd not available 2019-07-21 15:10:09 -07:00
.bazelignore zot: initial commit 2019-06-21 15:29:19 -07:00
.bazelrc zot: initial commit 2019-06-21 15:29:19 -07:00
.gitignore zot: initial commit 2019-06-21 15:29:19 -07:00
.travis.yml CI/CD: code coverage and bazel improvements 2019-06-26 15:01:52 -07:00
BUILD.bazel zot: initial commit 2019-06-21 15:29:19 -07:00
Dockerfile build: support building inside a container 2019-08-14 12:39:38 -07:00
go.mod ldap: pull in external library code so go modules are in control 2019-12-11 14:17:06 -08:00
go.sum ldap: pull in external library code so go modules are in control 2019-12-11 14:17:06 -08:00
LICENSE Initial commit 2019-06-21 14:40:59 -07:00
Makefile auth: add LDAP support 2019-09-20 11:54:49 -07:00
Makefile.bazel docs: fix Makefile 2019-08-29 10:56:59 -07:00
README.md README: fix typo 2019-10-14 14:25:48 -07:00
stacker.yaml build: support building inside a container using stacker 2019-08-14 16:26:49 -07:00
WORKSPACE ldap: pull in external library code so go modules are in control 2019-12-11 14:17:06 -08:00
zot.go zot: initial commit 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
  • Uses OCI storage layout for storage layout
  • TLS support
  • Authentication via TLS mutual authentication and HTTP BASIC (local htpasswd and LDAP)
  • Doesn't require root privileges
  • Swagger based documentation
  • Can run compliance checks against registries
  • Released under Apache 2.0 License

Presentations

Building

  • 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.

Compliance checks

bin/zot compliance -H hostIP -P port [-V "all"]

Ecosystem

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