GithubHelp home page GithubHelp logo

kryndex / docker-registry-ui Goto Github PK

View Code? Open in Web Editor NEW

This project forked from atcol/docker-registry-ui

0.0 2.0 0.0 41.23 MB

A web frontend/UI for easy private/local Docker Registry integration

License: GNU General Public License v3.0

Shell 0.28% JavaScript 1.00% CSS 15.20% Groovy 78.47% Batchfile 5.05%

docker-registry-ui's Introduction

Build Status Gitter chat

Docker Registry UI

A web UI for easy private/local Docker Registry integration.

Docker Registry UI is a mature, easy-to-use and fast web application for administering your Docker Registry through a sleek user interface. You can register one-to-many registries and then browse, search and delete images.

Features

The application boasts the following features:

  • View all images for all registries (one to many)

  • Further info. page for images for inspection of config. etc

  • Pull copy/paste shortcuts

  • Delete images

  • Search for images

  • Containerized via Docker

  • Custom deployment context (e.g. /reg-ui)

  • Read only mode for preventing registry configuration changes once running

  • Stateless application

Demo

This project is containerized. You can run with docker right now by simply running:

docker run -d -p 8080:8080 atcol/docker-registry-ui

and browsing to localhost:8080/.

Dependencies

You need to have a running instance of docker registry that has a search backend enabled! See this issue for further information.

Statelessness

The app' requires registry configuration which can be supplied once the app's running, or through container environment variables:

docker run -d -p 8080:8080 -e REG1=http://dev:5000/v1/ -e REG2=http://prod/v1/ atcol/docker-registry-ui

which will run the application and automatically register two registries at the hosts dev and prod respectively, both running API versions v1. You must provide URLs that include the API version.

Note: don't use localhost in registry URLs! The host needs to be visible from inside the container, so -e REG1=http://localhost/... won't work because localhost will resolve to the container's IP. If registry is running on the host, then remember to use its IP: 172.17.42.1.

Volumes

The webapp's configuration data is stored inside the container in a H2 database under /var/lib/h2/. You can hold this data on the host machine using the -v flag:

docker run -d -p 8080:8080 -v /some/data/dir:/var/lib/h2 atcol/docker-registry-ui

which survives container restarts.

You could also use the data-container pattern using --volumes-from:

docker run -d -v /var/lib/h2 --name="registry_web_data" ubuntu

docker run -d -p 8080:8080 --volumes-from=registry_web_data atcol/docker-registry-ui

Now all data will be kept in the registry_web_data container.

Custom Deployment Context

You can deploy this container in a custom context as such:

docker run -d -p 80:8080 -it -e APP_CONTEXT=ui -e REG1=http://172.17.42.1:5000/v1/ atcol/docker-registry-ui

will expose the container under http://localhost/ui.

Read Only Mode

Using the container parameter -e READ_ONLY=true will enable read only mode, which prevents manipulation of the registry configurations at runtime.

License

As of release 0.9.5, this project is licenced under GPL v3.0. See the LICENSE file.

Troubleshooting

My registry can't be found/seen by docker registry web! Help!

If you're seeing error messages like Connection to http://registry refused, make sure you've configured the port and hostname correctly. Do not set the registry hostname to localhost, because the container will resolve this to itself (127.0.0.1). If the registry instance runs on the host machine (that which runs the container), then set the registry IP/hostname to 172.17.42.1. Alternatively, you could use writable /etc/hosts as of Docker 1.2 and 'route' it that way.

Registries behind HTTPS or Ping failed: javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated

You need to register the CA with the container's keystore; see issue #108.

docker-registry-ui's People

Contributors

paweloczadly avatar marcellodesales avatar jonathanrosado avatar ascheman avatar hhxiao avatar theodorosploumis avatar yuval-k 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.