<commit_before>Portus: a user interface for the [next generation of Docker registry](https://github.com/docker/distribution).

Portus targets [version 2](https://github.com/docker/distribution/blob/master/docs/spec/api.md)
of the Docker registry API. It aims to act both as
an authoritzation server and as a user interface for the next generation of the
Docker registry.

## Specs


### Authentication

Portus implements the [token based authentication system](https://github.com/docker/distribution/blob/master/docs/spec/auth/token.md)
described by the new ersion of the Docker registry.

### Notifications

The registry can be configured to notify a 3rd party about the events that took
place (eg: push, pull,...).

This is described by [this](https://github.com/docker/distribution/blob/master/docs/notifications.md).

Portus can takes advantage of this feature to be aware of all the Docker images
pushed to the registry.

## Development environment

This project contains a Vagrant based development environment which consists of
three nodes:

  * `registry.test.lan`: this is the node running the next generation of the
    Docker registry.
  * `portus`: this is the node running portus itself.
  * `client`: a node where latest version of Docker is installed

All the nodes are based on openSUSE 13.2 x86_64. VirtualBox is the chosen
provisioner.


### Sinatra POF

There's a really stupid sinatra app that can be used to fake the new UI.<commit_msg>Add link to wiki<commit_after>Portus: a user interface for the [next generation of Docker registry](https://github.com/docker/distribution).

Portus targets [version 2](https://github.com/docker/distribution/blob/master/docs/spec/api.md)
of the Docker registry API. It aims to act both as
an authoritzation server and as a user interface for the next generation of the
Docker registry.

## Specs


### Authentication

Portus implements the [token based authentication system](https://github.com/docker/distribution/blob/master/docs/spec/auth/token.md)
described by the new ersion of the Docker registry.

[This](https://gitlab.suse.de/docker/portus/wikis/authentication-process) page
contains more details about the ongoing efforts to implement authentication.

### Notifications

The registry can be configured to notify a 3rd party about the events that took
place (eg: push, pull,...).

This is described by [this](https://github.com/docker/distribution/blob/master/docs/notifications.md).

Portus can takes advantage of this feature to be aware of all the Docker images
pushed to the registry.

## Development environment

This project contains a Vagrant based development environment which consists of
three nodes:

  * `registry.test.lan`: this is the node running the next generation of the
    Docker registry.
  * `portus`: this is the node running portus itself.
  * `client`: a node where latest version of Docker is installed

All the nodes are based on openSUSE 13.2 x86_64. VirtualBox is the chosen
provisioner.


### Sinatra POF

There's a really stupid sinatra app that can be used to fake the new UI.
{'fraction_non_alphanumeric': 0.07774886141834743, 'fraction_numerical': 0.005855562784645413, 'mean_word_length': 4.423280423280423, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 9, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1131621', 'n_tokens_mistral': 866, 'n_tokens_neox': 807, 'n_words': 376}