Git Product home page Git Product logo

trow's Introduction

Trow

Image Management for Kubernetes

Build Status

We're building an image management solution for Kubernetes (and possibly other orchestrators). At its heart is the Trow Registry, which runs inside the cluster, is simple to set-up and fully integrated with Kubernetes, including support for auditing and RBAC.

Why "Trow"

"Trow" is a word with multiple, divergent meanings. In Shetland folklore a trow is a small, mischievous creature, similar to the Scandanavian troll. In England, it is a old style of cargo boat that transported goods on rivers. Finally, it is an archaic word meaning "to think, believe, or trust". The reader is free to choose which interpretation they like most, but it should be pronounced to rhyme with "brow".

Use Cases

The primary goal for Trow is to create a registry that runs within Kubernetes and provides a secure and fast way to get containers running on the cluster.

A major focus is providing controls for cluster administrators to define which images can run in the cluster. Trow can prevent unauthorised and potentially insecure or malicious images from touching your cluster.

Features include:

  • allowing operations such as approve/deny lists for images and external registries (implemented)
  • full auditing and authentication of image access (in progress)
  • distributed architecture for HA and scalability (planned)

Install

If you want to quickly try out Trow on a development cluster (either local or remote), follow the quick install instructions.

This screencast shows how quick it is to get started:

asciicast

Normal installations and all production installations should follow the standard installation instructions. The standard install requires a sub-domain that can pointed at the registry. The install is based on Kustomize, making it simple to install and maintain, and ideal for clusters following the GitOps model.

Note that Trow is currently alpha and you can expect to find rough edges.

Tests

There is a reasonably large test suite, which can be run with the docker/test.sh script.

Docs

Work has started on a User Guide. Currently this explains how to persist images and how to list repositories and tags via curl.

Notes

  • The project currently runs on Rust Nightly.

trow's People

Contributors

amouat avatar moredhel avatar ztulloch avatar sjpotter avatar ianmiell avatar ivuk avatar moretea avatar nebril avatar mostafagazar avatar ensonic avatar lukaszo avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.