在使用k8s时,需要指定使用的镜像,但是如果发布springboot等私密项目,将镜像发布到网络上或许不安全,那么需要我们在本地安装一个私人仓库,然后将镜像上传到私人仓库在获取,这里我们选择市面上通用的harbor。本文楼主亲测,按照步骤执行即可。
1.安装docker
请参考前文,不在概述。
2.安装docker-compose
此为必备插件,不可跳过。
curl -L "https://get.daocloud.io/docker/compose/releases/download/1.27.3/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose //验证版本 复制代码
3.搭建Harbor
1.下载
这里我们选择首页下载安装包,在浏览器上访问https://storage.googleapis.com/harbor-releases/release-1.8.0/harbor-offline-installer-v1.8.4.tgz
2.解压
tar zxvf harbor-offline-installer-v1.8.4.tgz 复制代码
3.修改配置
修改下图文件
这里分别指定了:当前服务ip,服务端口,登录账号,登录密码。
4.安装
执行即可。
./prepare ./install.sh 复制代码
5.验证
访问 ip:端口 出现以下页面为成功,账号密码为admin/1234。
以上端口号,账号,密码均为配置文件中配置,请根据各自配置自行修改。
4.配置docker
当安装好之后,我们需要赋予docker访问harbor的权限。否则连接不上就不能上传或者拉取镜像了。这里我们需要修改docker的配置文件。
vi /etc/docker/daemon.json 复制代码
"registry-mirrors": ["http://295c6a59.m.daocloud.io"], "insecure-registries":["192.168.44.11:9000"] 复制代码
insecure-registries 为上文配置的地址与端口,请根据个人自行修改。
重启docker容器
systemctl daemon-reload systemctl restart docker 重启dokcer 复制代码
验证docker能否连接harbor
docker login 192.168.44.31:9000 #前文配置的ip 然后输入前文配置的账号密码admin/123456 复制代码
登录成功输出:
5.上传镜像
1.新建harbor上传路径
harbor新建以下文件夹,请记住路径。
2.上传镜像
docker images //查看镜像 复制代码
示例我们将eureka上传到harbor仓库。
docker tag 02d27f7b9531 192.168.43.33:9000/electronic_government_project2.0/eureka //将镜像打标签 02d27f7b9531为镜像id electronic_government_project2.0为刚才新建的文件夹 docker push 192.168.43.33:9000/electronic_government_project2.0/eureka //推送到harbor 复制代码
访问harbor路径,如果出现以推送镜像,则推送完成。
6.拉取镜像
按照上文修改docker配置文件,确认能够连接harbor后,执行以下语句。
docker pull 192.168.48.35:9000/electronic_government_project2.0/eureka 复制代码
7.重启harbor
docker-compose stop docker-compose up -d 复制代码
以上harbor的用法就全部讲解完了,如有疑问,可以留言私信楼主。