olareg

package module
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 24, 2024 License: Apache-2.0 Imports: 24 Imported by: 0

README

olareg

Go Workflow Status Docker Workflow Status Dependency Workflow Status Vulnerability Workflow Status

Go Reference License OpenSSF Scorecard

Pronounced: oh-la-reg

olareg (named from being an OCI Layout based Registry) is a minimal OCI conformant container registry. The minimal nature includes avoiding external dependencies, making the project easy to embed in unit tests or deployed in an edge environment as a cache.

Documentation

Overview

Package olareg is used for running a minimal OCI conformant container registry.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Server

type Server struct {
	// contains filtered or unexported fields
}

func New

func New(conf config.Config) *Server

New returns a Server. Ensure the resource is cleaned up with either Server.Close or Server.Shutdown.

func (*Server) Close

func (s *Server) Close() error

Close is used to release the backend store resources.

func (*Server) Run

func (s *Server) Run(ctx context.Context) error

Run starts a listener and serves requests. It only returns after a call to Server.Shutdown.

func (*Server) ServeHTTP

func (s *Server) ServeHTTP(resp http.ResponseWriter, req *http.Request)

ServeHTTP handles requests to the OCI registry.

func (*Server) Shutdown

func (s *Server) Shutdown(ctx context.Context) error

Shutdown is used to stop the http listener and close the backend store.

Directories

Path Synopsis
cmd
Package config contains data types for configuration of olareg.
Package config contains data types for configuration of olareg.
internal
cache
Package cache is used to store values with limits.
Package cache is used to store values with limits.
copy
Package copy is used internally to recursively copy filesystem content.
Package copy is used internally to recursively copy filesystem content.
slog
Package slog is a temporary interface to support older versions of Go.
Package slog is a temporary interface to support older versions of Go.
store
Package store is used to interface with different types of storage (memory, disk)
Package store is used to interface with different types of storage (memory, disk)
Package types contains various data types and well known constants.
Package types contains various data types and well known constants.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL