From b404cdfe90d59c2f92fd39a980eb2badd5abefad Mon Sep 17 00:00:00 2001 From: Henry Zhang Date: Thu, 14 Apr 2016 15:57:42 +0800 Subject: [PATCH 1/3] update documents --- AUTHORS | 3 ++- README.md | 3 +++ docs/configure_https.md | 10 +++++++--- docs/img/beegoLogo.png | Bin 0 -> 5306 bytes docs/installation_guide.md | 13 ++++++++----- 5 files changed, 20 insertions(+), 9 deletions(-) create mode 100644 docs/img/beegoLogo.png diff --git a/AUTHORS b/AUTHORS index f6e2e7e0e..d292ef8c7 100644 --- a/AUTHORS +++ b/AUTHORS @@ -1,5 +1,6 @@ # This file lists all individuals having contributed content to the repository. +Alexander Zeitler Amanda Zhang Benniu Ji Bobby Zhang @@ -9,8 +10,8 @@ Haining Henry Zhang Hao Xia Jack Liu Kun Wang +Peng Zhao Shan Zhu Victoria Zheng Wenkai Yin Yan Wang - diff --git a/README.md b/README.md index 88b93ad34..d94dd1b3c 100644 --- a/README.md +++ b/README.md @@ -68,3 +68,6 @@ Harbor is available under the [Apache 2 license](LICENSE). ### Users MaDaiLiCai + +### Supporting Technologies +Harbor is powered by beego, an open source framework to build and develop applications in the Go way. diff --git a/docs/configure_https.md b/docs/configure_https.md index e366cb5d7..ccb667c35 100644 --- a/docs/configure_https.md +++ b/docs/configure_https.md @@ -1,8 +1,8 @@ -#Configure Harbor with HTTPS Access +#Configuring Harbor with HTTPS Access Because Harbor does not ship with any certificates, it uses HTTP by default to serve registry requests. This makes it relatively simple to configure. However, it is highly recommended that security be enabled for any production environment. Harbor has an Nginx instance as a reverse proxy for all services, you can configure Nginx to enable https. -##Get a certificate +##Getting a certificate Assuming that your registry's **hostname** is **reg.yourdomain.com**, and that its DNS record points to the host where you are running Harbor. You first should get a certificate from a CA. The certificate usually contains a .crt file and a .key file, for example, **yourdomain.com.crt** and **yourdomain.com.key**. @@ -22,7 +22,7 @@ In a test or development environment, you may choose to use a self-signed certif ``` 3) Generate the certificate of your registry host: -You need to configure openssl first. On Ubuntu, the config file locates at /etc/ssl/openssl.cnf. Refer to openssl document for more information. The default CA directory of openssl is called demoCA. Let's create necessary directories and files: +You need to configure openssl first. On Ubuntu, the config file locates at **/etc/ssl/openssl.cnf**. Refer to openssl document for more information. The default CA directory of openssl is called demoCA. Let's create necessary directories and files: ``` mkdir demoCA cd demoCA @@ -41,6 +41,10 @@ After obtaining the **yourdomain.com.crt** and **yourdomain.com.key** files, cha cd Deploy/config/nginx ``` Create a new directory cert/, if it does not exist. Then copy **yourdomain.com.crt** and **yourdomain.com.key** to cert/. +``` + cp yourdomain.com.crt cert/ + cp yourdomain.com.key cert/ +``` Rename the existing configuration file of Nginx: ``` diff --git a/docs/img/beegoLogo.png b/docs/img/beegoLogo.png new file mode 100644 index 0000000000000000000000000000000000000000..4cd801385d7c954d8d6881cdd36303177dc4c1e7 GIT binary patch literal 5306 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 M07*qoM6N<$f&igDQUCw| literal 0 HcmV?d00001 diff --git a/docs/installation_guide.md b/docs/installation_guide.md index 1c4aa4bd4..6b17cc3b5 100644 --- a/docs/installation_guide.md +++ b/docs/installation_guide.md @@ -28,7 +28,7 @@ Before installing Harbor, you should configure the parameters in the file **harb At minimum, you need to change the **hostname** attribute in **harbor.cfg**. The description of each attribute is as follows: **hostname**: The hostname for a user to access the user interface and the registry service. It should be the IP address or the fully qualified domain name (FQDN) of your target machine, for example 192.168.1.10 or reg.yourdomain.com . Do NOT use localhost or 127.0.0.1 for the hostname because the registry service needs to be accessed by external clients. -**ui_url_protocol**: The protocol for accessing the user interface and the token/notification service, by default it is http. +**ui_url_protocol**: The protocol for accessing the user interface and the token/notification service, by default it is http. To set up https protocol, refer to [Configuring Harbor with HTTPS](configure_https.md). **Email settings**: the following 5 attributes are used to send an email to reset a user's password, they are not mandatory unless the password reset function is needed in Harbor. * email_server = smtp.mydomain.com * email_server_port = 25 @@ -40,8 +40,9 @@ At minimum, you need to change the **hostname** attribute in **harbor.cfg**. The **auth_mode**: The authentication mode of Harbor. By default it is *db_auth*, i.e. the credentials are stored in a database. Please set it to *ldap_auth* if you want to verify user's credentials against an LDAP server. **ldap_url**: The URL for LDAP endpoint, for example ldaps://ldap.mydomain.com. It is only used when **auth_mode** is set to *ldap_auth*. **ldap_basedn**: The basedn template for verifying the user's credentials against LDAP, for example uid=%s,ou=people,dc=mydomain,dc=com. It is only used when **auth_mode** is set to *ldap_auth*. -**db_password**: The password of root user of mySQL database. +**db_password**: The password of root user of mySQL database. Change this password for any production use. **self_registration**: The flag to turn on or off the user self-registration function. If this flag is turned off, only an admin user can create new users in Harbor. The default value is on. +NOTE: When **auth_mode** is *ldap_auth*, the self-registration feature is always disabled, therefore, this flag is ignored. #### Building and starting Harbor After configuring harbor.cfg, build and start Harbor by the following commands. Because it requires downloading necessary files from the Internet, it may take a while for the docker-compose process to finish. @@ -61,7 +62,7 @@ After configuring harbor.cfg, build and start Harbor by the following commands. If everything works fine, you can open a browser to visit the admin portal at http://reg.yourdomain.com . The default administrator username and password are admin/Harbor12345 . -Create a new project, e.g. myproject, in the admin portal. You can then use docker commands to login and push images. The default port of Harbor registry server is 80: +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. The default port of Harbor registry server is 80: ```sh $ docker login reg.yourdomain.com $ docker push reg.yourdomain.com/myproject/myrepo @@ -121,8 +122,10 @@ $ cd ../ $ tar -cvzf harbor_offline-0.1.1.tgz harbor ``` -The file **harbor_offline-0.1.1.tgz** contains the images saved by previously steps and the files required to start Harbor. -You can use tools such as scp to transfer the file **harbor_offline-0.1.1.tgz** to the target machine that does not have Internet connection. On the target machine, you can execute the following commands to start Harbor. Again, before running the **prepare** script, be sure to update **harbor.cfg** to reflect the right configuration of the target machine. (Refer to Section [Configure Harbor](#configuring-harbor) .) +The file **harbor_offline-0.1.1.tgz** contains the images saved by previous steps and the other files required to start Harbor. +You can use tools such as scp to transfer the file **harbor_offline-0.1.1.tgz** to the target machine that does not have Internet connection. +On the target machine, you can execute the following commands to start Harbor. Again, before running the **prepare** script, +be sure to update **harbor.cfg** to reflect the right configuration of the target machine. (Refer to Section [Configuring Harbor](#configuring-harbor) .) ``` $ tar -xzvf harbor_offline-0.1.1.tgz $ cd harbor From a9a12bacfab0298b63b6d29a5eeceee2bba039a8 Mon Sep 17 00:00:00 2001 From: Henry Zhang Date: Thu, 14 Apr 2016 17:27:09 +0800 Subject: [PATCH 2/3] update document --- README.md | 4 ++-- docs/configure_https.md | 2 +- docs/img/beegoLogo.png | Bin 5306 -> 4015 bytes docs/installation_guide.md | 4 ++-- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index d94dd1b3c..64df2368e 100644 --- a/README.md +++ b/README.md @@ -46,7 +46,7 @@ The host must be connected to the Internet. If everything works fine, you can open a browser to visit the admin portal at http://reg.yourdomain.com . The default administrator username and password are admin/Harbor12345 . -Create a new project, e.g. myproject, in the admin portal. You can then use docker commands to login and push images. The default port of Harbor registry server is 80: +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. The default port of Harbor registry server is 80: ```sh $ docker login reg.yourdomain.com $ docker push reg.yourdomain.com/myproject/myrepo @@ -70,4 +70,4 @@ Harbor is available under the [Apache 2 license](LICENSE). MaDaiLiCai ### Supporting Technologies -Harbor is powered by beego, an open source framework to build and develop applications in the Go way. +beego Harbor is powered by Beego, an open source framework to build and develop applications in the Go way. diff --git a/docs/configure_https.md b/docs/configure_https.md index ccb667c35..003fcfd6a 100644 --- a/docs/configure_https.md +++ b/docs/configure_https.md @@ -40,7 +40,7 @@ After obtaining the **yourdomain.com.crt** and **yourdomain.com.key** files, cha ``` cd Deploy/config/nginx ``` -Create a new directory cert/, if it does not exist. Then copy **yourdomain.com.crt** and **yourdomain.com.key** to cert/. +Create a new directory cert/, if it does not exist. Then copy **yourdomain.com.crt** and **yourdomain.com.key** to cert/, e.g. : ``` cp yourdomain.com.crt cert/ cp yourdomain.com.key cert/ diff --git a/docs/img/beegoLogo.png b/docs/img/beegoLogo.png index 4cd801385d7c954d8d6881cdd36303177dc4c1e7..ada97519d27f5cd1ca4cf3fc9ffb1ec87a47aae4 100644 GIT binary patch delta 3912 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 Xh6# diff --git a/docs/installation_guide.md b/docs/installation_guide.md index 6b17cc3b5..56d0c5152 100644 --- a/docs/installation_guide.md +++ b/docs/installation_guide.md @@ -28,7 +28,7 @@ Before installing Harbor, you should configure the parameters in the file **harb At minimum, you need to change the **hostname** attribute in **harbor.cfg**. The description of each attribute is as follows: **hostname**: The hostname for a user to access the user interface and the registry service. It should be the IP address or the fully qualified domain name (FQDN) of your target machine, for example 192.168.1.10 or reg.yourdomain.com . Do NOT use localhost or 127.0.0.1 for the hostname because the registry service needs to be accessed by external clients. -**ui_url_protocol**: The protocol for accessing the user interface and the token/notification service, by default it is http. To set up https protocol, refer to [Configuring Harbor with HTTPS](configure_https.md). +**ui_url_protocol**: The protocol for accessing the user interface and the token/notification service, by default it is http. To set up the https protocol, refer to [Configuring Harbor with HTTPS Access](configure_https.md). **Email settings**: the following 5 attributes are used to send an email to reset a user's password, they are not mandatory unless the password reset function is needed in Harbor. * email_server = smtp.mydomain.com * email_server_port = 25 @@ -97,7 +97,7 @@ $ sudo docker-compose up -d ...... ``` -### Deploying Harbor to a target machine that does not have Internet access +### Deploying Harbor to a host which does not have Internet access When you run *docker-compose up* to start Harbor, it will pull base images from Docker Hub and build new images for the containers. This process requires accessing the Internet. If you want to deploy Harbor to a host that is not connected to the Internet, you need to prepare Harbor on a machine that has access to the Internet. After that, you export the images as tgz files and transfer them to the target machine. Then load the tgz file into Docker's local image repo. #### Building and saving images for offline installation From c66edd02d074b3339cd7b2619e6df53ecf7cd2aa Mon Sep 17 00:00:00 2001 From: Henry Zhang Date: Thu, 14 Apr 2016 17:40:03 +0800 Subject: [PATCH 3/3] update docs --- AUTHORS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/AUTHORS b/AUTHORS index d292ef8c7..8e9802ff4 100644 --- a/AUTHORS +++ b/AUTHORS @@ -10,7 +10,7 @@ Haining Henry Zhang Hao Xia Jack Liu Kun Wang -Peng Zhao +Peng Zhao Shan Zhu Victoria Zheng Wenkai Yin