harbor是一个开源的docker私有镜像仓库软件,安装比较简单,它是由多个docker容器服务组成的,所以第一步需要安装docker。
一、安装docker:可以参考docker菜鸟教程中的安装部分。
二、安装docker-compose:方便管理docker容器的一个软件,官网地址https://github.com/docker/compose/releases/,可以在里面找一个合适的版本下载。
三、安装harbor
1.下载解压安装包:官网地址:https://github.com/vmware/harbor/releases/,我下载的是2.0版本。
2. 配置harbor:harbor的模板配置文件是harbor.yml.tmpl,拷贝一份 -> harbor.yml。
3. 配置https:harbor默认工作方式是http,但是这只能在页面访问,默认harbor推送拉取镜像时走的是https,所以需要配置下https。
1. 需要的文件:
1. harbor.centos123.com.crt:服务器端的证书文件
2. harbor.centos123.com.key:服务器端的秘钥
3. ca.crt:客户端的证书文件
2. 生成秘钥和自签名证书:
openssl req -newkey rsa:4096 -nodes -sha256 -keyout ca.key -x509 -days 365 -out ca.crt
这里的问题随便填写就行
3. 生成证书签名请求(域名访问,就把common name的值写为域名)
openssl req -newkey rsa:4096 -nodes -sha256 -keyout harbor.centos123.com.key \ -out harbor.centos123.com.csr
4.生成服务器证书
openssl x509 -req -days 365 -in harbor.centos123.com.csr -CA ca.crt \ -CAkey ca.key -CAcreateserial -out harbor.centos123.com.crt
最终得到的是这样的目录:
5.安装证书:
将服务器需要的文件拷贝到一个目录下,我放在了 /etc/cert/harbor下面:
将配置文件也一起修改了:
6.安装并启动harbor:
直接执行harbor目录下的install.sh脚本即可。
7.配置下host,打开浏览器就可以用https访问了
默认账号是 admin 密码 Harbor12345
8.docker 登录:
首先配置host,然后在 /etc/docker/certs.d目录下创建目录,目录名称就是配置的hostname。然后将客户端证书放入该目录即可。
测试下登录:
9.docker推送镜像:
登录harbor,可以看到有一个预置的项目,library。
直接推送到这个项目就行,
可以看到已经推送成功: