Harbor正是一个用于存储Docker镜像的企业级Registry服务。是一个开源的可信云本机注册表项目,用于存储,签名和扫描内容。
1、安装docker和docker-compose,之前一直在使用,安装比较简单。
2、从github下载最新版本harbor,https://github.com/goharbor/harbor/releases/
tar xf harbor-offline-installer-v2.0.2.tgz
解压后有一个harbor.yml.tpl文件,cp harbor.yml.tpl harbor.yml
生成harbor的配置文件,里面对于我自己测试就修改三点需求:
hostname: 自己可以访问到的ip ps:当然你可以把http的端口修改下,这样子可以自定义端口访问了
注释掉https标签,因为暂时没有ssl证书,先不开启
修改admin的登录密码,只能自己为所欲为
ps:另外data存放路径建议先别改了,自动运行脚本,会读取root.crt文件,默认目录下有。
3、部署harbor,先运行./prepare,然后运行../install.sh
如果修改了Harbor的配置文件harbor.yml,因为Harbor是基于docker-compose服务编排的,我们可以使用docker-compose命令重启Harbor。
未修改配置文件,重启Harbor命令:docker-compose start | stop | restart
当然个人建议:如果修改了harbor.yml文件,那么停止使用docker-compose down,启动使用 ./install.sh 。
Harbor启停:
方式一:
关闭harbor服务:docker-compose down -v
修改配置文件:vim harbor.yml
重新生成配置文件:./prepare或者或者bash prepare
启动Harbor服务:docker-compose up -d
方式二:
修改配置文件:vim harbor.yml
重新生成配置文件:./prepare或者或者bash prepare
重启harbor:docker-compose down -v && docker-compose up -d 注意:如果更改了harbor.yml文件,必须要重新执行install脚本,或者执行./prepare脚本,生成新的配置文件;
访问修改的ip和端口,http://ip:port/ 就会出来首页登录页面,用admin登录后可以创建自己的其他账号
可以按照自己的分类建立项目
这个总结图不错:
首先因为我配置的是http,因为docker默认是用https交互的,所以需要进行修改
修改/etc/docker/daemon.json文件,添加下面一行:
"insecure-registries":["ip:port"],
systemctl daemon-reload
systemctl restart docker
推送镜像
1、先登录harbor
docker login ip:prot -u xxx -p xxx
2、会提示登录成功,然后进行tag
docker tag image_id(本地需要push的镜像) ip:port/项目名/保存的镜像名(例如:xxx:version1)
3、推送
docker push ip:port/项目名/保存的镜像名(例如:xxx:version1)
这样就可以在harbor上看到对应项目下会多出一个xxx:version1镜像了
拉取镜像
docker pull ip:port/项目名/保存的镜像名(例如:xxx:version1)
有疑问可以联系一起沟通。