An open source trusted cloud native registry project that stores, signs, and scans content.
Go to file
kun wang 838ba8cb44 Merge pull request #397 from yhua123/patch-2
removed required restriction on username/password when adding a target.
2016-06-24 15:26:50 +08:00
.github provide issue template 2016-04-22 15:04:29 +08:00
api Merge remote-tracking branch 'upstream/new-ui-with-sync-image' into bug_fix_for_access_log 2016-06-23 11:17:09 +08:00
auth change code as the review reqired 2016-06-02 17:33:10 +08:00
contrib update docs 2016-05-17 22:04:16 +08:00
controllers add comments on addnew controller code. 2016-06-22 16:36:48 +08:00
dao 1.only target of disabled policy can be modified 2.duplicated policy can not be created 2016-06-22 14:19:19 +08:00
Deploy Merge pull request #393 from reasonerjt/job-service 2016-06-23 11:07:46 +08:00
docs Merge pull request #342 from wemeya/develop 2016-06-15 11:53:38 +08:00
job pass variable insecure to base handler 2016-06-24 13:57:48 +08:00
jobservice resume running jobs when jobservice starts 2016-06-17 18:54:29 +08:00
migration data migration script to 0.2.0 2016-06-22 12:22:02 +08:00
models resume running jobs when jobservice starts 2016-06-17 18:54:29 +08:00
service create a new registry client when refreshing cache 2016-06-23 15:18:32 +08:00
static Update create-destination.directive.html 2016-06-23 15:19:12 +08:00
tests Update hbapisearch_test.go 2016-06-20 14:39:22 +08:00
ui Merge branch 'new-ui-with-sync-image' of https://github.com/vmware/harbor into new-ui-with-sync-image 2016-06-22 15:15:31 +08:00
utils pass go test 2016-06-23 13:02:36 +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 add more restriction check on sync-image of UI. 2016-06-22 19:03:12 +08:00
.gitignore integrate jobservice into docker-compose template 2016-05-27 16:21:32 +08:00
.travis.yml Update .travis.yml 2016-06-15 12:14:45 +08:00
AUTHORS update roadmap 2016-06-03 16:57:38 +08:00
Dockerfile.job integrate jobservice into docker-compose template 2016-05-27 16:21:32 +08:00
Dockerfile.ui bump to golang 1.6.2 image to fix compilation error 2016-05-04 14:18:52 +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
NOTICE add NOTICE, update README.md 2016-03-03 10:15:12 +08:00
README.md update readme 2016-06-06 12:07:30 +08:00
ROADMAP.md update roadmap 2016-06-03 17:03:58 +08:00

Harbor

Build Status

alg tag

Project Harbor is initiated by VMware China R&D as a Cloud Application Accelerator (CAA) project. CAA provides a set of tools to improve the productivity of cloud developers in China and other countries. CAA includes tools like registry server, mirror server, decentralized image distributor, etc.

Project Harbor is an enterprise-class registry server, which extends the open source Docker Registry server by adding the functionality usually required by an enterprise, such as security, control, and management. Harbor is primarily designed to be a private registry - providing the needed security and control that enterprises require. It also helps minimize bandwidth usage, which is helpful to both improve productivity (local network access) as well as performance (for those with poor internet connectivity).

Features

  • Role Based Access Control: Users and Docker repositories are organized via "projects", a user can have different permission for images under a project.
  • Graphical user portal: User can easily browse, search Docker repositories, manage projects/namespaces.
  • AD/LDAP support: Harbor integrates with existing enterprise AD/LDAP for user authentication and management.
  • Auditing: All the operations to the repositories are tracked.
  • Internationalization: Already localized for English, Chinese, German, Japanese and Russian. More languages can be added.
  • RESTful API: RESTful APIs for most administrative operations, easing intergration with external management platforms.

Getting Started

Harbor is self-contained and can be easily deployed via docker-compose (Quick-Start steps below). Refer to the Installation and Configuration Guide for detailed information.

System requirements:
Harbor only works with docker 1.10+ and docker-compose 1.6.0+, and an internet-connected host.

  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 hostname, admin password and mail server. Refer to Installation and Configuration Guide for more info.

  3. Install Harbor with the following commands. Note that the docker-compose process can take a while.

    $ 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 worked properly, you should be able to open a browser to visit the admin portal at http://reg.yourdomain.com . Note that the default administrator username/password are admin/Harbor12345 .

Log in to the admin portal and create a new project, e.g. myproject. You can then use docker commands to login and push images (By default, the registry server listens on port 80):

$ docker login reg.yourdomain.com
$ docker push reg.yourdomain.com/myproject/myrepo

NOTE:
For those who don't want to clone the source, or need to install Harbor on a server not connected to the Internet - there is a pre-built installation package available. For details on how to download and use this installation package, please refer to Installation and Configuration 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 and you have not signed our contributor license agreement (CLA), our bot will update the issue when you open a pull request. For any questions about the CLA process, please refer to our FAQ.

License

Harbor is available under the Apache 2 license.

Partners

DataMan     SlamTec     CaiCloud

Users

MaDaiLiCai Dianrong

Supporting Technologies

beego Harbor is powered by Beego, an open source framework to build and develop applications in the Go way.