harbor是什么呢?英文单词的意思是:港湾。港湾用来存放集装箱(货物的),而docker的由来正是借鉴了集装箱的原理,所以harbor是用于存放docker的镜像,作为镜像仓库使用。官方的说法是:Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器。
harbor镜像仓库是由VMware开源的一款企业级镜像仓库,它包括权限管理(RBAC)、LDAP、日志审核、管理界面、自我注册、镜像复制等诸多功能。
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum install docker-ce -y
yum install epel-release -y
yum install docker-compose
harbor提供在线安装和离线安装两种方式,官方提供的安装包地址在https://github.com/goharbor/harbor/releases,在线安装包下载Harbor online installer,离线安装下载Harbor offline installer,本教程使用离线方式安装,这里我使用最新版本v2.1.4。
tar zxvf harbor-offline-installer-v2.1.4.tgz解压后需要把harbor.yml.tmpl配置文件修改为后缀为yml
默认情况下解压的目录下会提供harbor.cfg配置文件,修改地方:
hostname = 192.168.44.157 # 仓库地址,主机IP或者域名 harbor_admin_password = Harbor12345 # 默认管理员密码
由于没有设置证书先注释掉了https,不然启动会报错。
./install.sh
安装成功浏览器输入ip端口进行访问(配置默认是80,如果端口冲突需修改其他端口)
vim /etc/docker/daemon.json
{"registry-mirrors": ["https://registry.docker-cn.com"],
"insecure-registries": ["192.168.44.157"]
}
systemctl restart docker && docker-compose start
查看本地镜像:
docker images
给要推送的镜像打tag(这里一nginx镜像为例子),可以使用docker tag --help查看使用方式
docker tag nginx:v1 192.168.44.157/nginx/nginx:v1
推送镜像
docker push 192.168.44.157/nginx/nginx:v1