Skip to content
A secure and extensible OCI-compliant image registry.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
authn
builtin/storage/backend/inmem
cmd/stori
http
jsonnet
openapi
plugin
schema
scripts
stori
.gitignore
.header
CONTRIBUTING.md
LICENSE
MAINTAINERS
Makefile
README.md
VERSION
go.mod
go.sum
jsonnetfile.json
jsonnetfile.lock.json

README.md

CII Best Practices Go Report Card

Stori Registry

Stori is an OCI-compliant image registry.

Status: In Development

Table of Contents

Features

  • Enhanced API: Stori provides a rich API with first-class support for registry administration tasks.

Philosophy

The Stori project is meant to be a reference implementation of, and serve as a testbed for improvements to, the OCI Distribution Specification. Stori also solves another problem in the current state of container affairs, the need for an extendable, lightweight, and enterprise-level image registry.

The standard open-source Docker registry provides a core API that only supports the distribution of images with minimal support for maintenance or administration. The Docker registry also lacks "enterprise" features like auditing, LDAP, and fine-grained access control policies. The Harbor project is a popular image registry hosted by the CNCF that is built on top of the Docker registry but has many limitations. Since Harbor uses the Docker registry under the covers, its administrative API is limited to the functionality that the Docker registry API provides. Also, Harbor is non-trivial to set up. The only reliable way of installing Harbor on a local machine is to use a custom offline installer that depends on docker and docker-compose and consumes 5GB+ of diskspace when fully installed. When running Harbor on a small VM like an AWS t3.micro, an EBS volume needs to be provisioned for the image storage directory or else there will be no space left on the filesystem.

The Stori project attempts to let registry administrators "have their cake and eat it too" when it comes to having an easily deployable and maintainable enterprise-level image registry with a small footprint.

Building

GOPATH=$HOME
go get -d github.com/atlaskerr/stori
cd $GOPATH/github.com/atlaskerr/stori
make build

Your stori binary will be in ./bin.

Quickstart

The stori binary comes with a development server for testing and exploratory purposes. The development server should not be used for any production workloads.

stori server --dev
You can’t perform that action at this time.