An open source trusted cloud native registry project that stores, signs, and scans content.
Go to file
2016-03-23 13:15:27 +08:00
api use the method in standard lib 2016-03-08 11:53:13 +08:00
auth bug fix: 1.UI exits when ldap binds failed 2.make fields in templates match with go files after executing golint 2016-02-29 18:48:11 +08:00
controllers Merge pull request #17 from reasonerjt/master 2016-03-08 15:39:47 +08:00
dao update file names, remove tests folder 2016-02-29 10:50:47 +08:00
Deploy update README, LICENSE, and bump to registry/2.3.0 2016-03-01 18:21:56 +08:00
docs Update Swagger Guide 2016-03-17 13:01:55 +08:00
log add comment 2016-03-16 15:58:08 +08:00
models update file names, remove tests folder 2016-02-29 10:50:47 +08:00
routers fix package comment issue 2016-02-26 18:54:14 +08:00
service use the method in standard lib 2016-03-08 11:53:13 +08:00
static added logo for Harbor. 2016-03-11 13:10:53 +08:00
utils use the method in standard lib 2016-03-08 11:53:13 +08:00
vendor switch to /vendor, remove docker/distribution docker/libtrust go-sql-driver/mysql, and update Dockerfile to use go get to download these packages. 2016-02-19 13:01:58 +08:00
views added logo for Harbor. 2016-03-11 13:10:53 +08:00
.gitignore refactor logger in main.go & add harbor.cfg to .gitignore 2016-03-23 13:15:27 +08:00
.travis.yml add travis support 2016-02-29 11:24:52 +08:00
AUTHORS README and AUTHORS 2016-03-11 21:21:06 +08:00
Dockerfile added favicon.ico for Harbor 2016-03-11 14:34:56 +08:00
favicon.ico added favicon.ico for Harbor 2016-03-11 14:34:56 +08:00
LICENSE update README, LICENSE, and bump to registry/2.3.0 2016-03-01 18:21:56 +08:00
main.go refactor logger in main.go & add harbor.cfg to .gitignore 2016-03-23 13:15:27 +08:00
NOTICE add NOTICE, update README.md 2016-03-03 10:15:12 +08:00
README.md README 2016-03-11 21:36:16 +08:00

Harbor

Build Status

alg tag

Project Harbor is an enterprise-class registry server. It extends the open source Docker Registry server by adding more functionalities usually required by an enterprise. Harbor is designed to be deployed in a private environment of an organization. A private registry is important for organizations who care much about security. In addition, a private registry improves productivity by eliminating the need to download images from public network. This is very helpful to container users who do not have a good network to the Internet. For example, Harbor accelerates the progress of Chinese developers, because they no longer need to pull images from the Internet.

Features

  • Role Based Access Control: Users and docker repositories are organized via "projects", a user can have differernt permission for images under a namespace.
  • Graphical user portal: User can easily browse, search docker repositories, manage projects/namepaces.
  • AD/LDAP support: Harbor integrates with existing AD/LDAP of enterprise for user authentication and management.
  • Audting: All the operations to the repositories are tracked and can be used for auditing purpose.
  • Internationalization: Localized for English and Chinese languages. More languages can be added.
  • RESTful API: RESTful APIs are provided for most administrative operations of Harbor. The integration with other management software becomes easy.

Try it

Harbor is self-contained and can be easily deployed via docker-compose.

System requirements:
Harbor only works with docker 1.8+ and docker-compose 1.6.0+ . The host must be connected to the Internet.

  1. Get the source code:

    $ git clone https://github.com/vmware/harbor
    
  2. Edit the file Deploy/harbor.cfg, make necessary configuration changes such as host name, admin password and mail server. Refer to Installation Guide for more info.

  3. Install Harbor by the following commands. It may take a while for the docker-compose process to finish.

    $ cd Deploy
    
    $ ./prepare
    Generated configuration file: ./config/ui/env
    Generated configuration file: ./config/ui/app.conf
    Generated configuration file: ./config/registry/config.yml
    Generated configuration file: ./config/db/env
    
    $ docker-compose up
    

If everything works fine, you can open a browser to visit the admin portal at: http://yourhostname . The default administrator username and password is admin/Harbor12345 .

NOTE:
To simplify the installation process, a pre-built installation package of Harbor is provided so that you don't need to clone the source code. By using this package, you can even install Harbor onto a host that is not connected to the Internet. For details on how to download and use this installation package, please refer to Installation Guide .

For information on how to use Harbor, please see User Guide .

Contribution

We welcome contributions from the community. If you wish to contribute code, we require that you first sign our Contributor License Agreement and return a copy to osscontributions@vmware.com before we can merge your contribution.

License

Harbor is available under the Apache 2 license.