zl程序教程

您现在的位置是:首页 >  工具

当前栏目

微服务轮子项目(41) -Docker私有镜像仓库

Docker项目服务镜像 仓库 私有 41 轮子
2023-09-11 14:15:40 时间

1. 安装部署

1.1 下载安装包

直接去github地址,找releases下载最新的offlinehttps://github.com/goharbor/harbor
在这里插入图片描述

解压安装包:

tar -xvf harbor-offline-installer-v1.7.1.tgz

1.2 修改配置文件

1.修改harbor.cfg:

  • 修改hostname: 在这里插入图片描述
  • 修改secretkey_path,改为当前目录:在这里插入图片描述

2.修改docker-compose.yml文件

  • 修改所有的volumes配置,把所有的文件都挂载到当前目录下在这里插入图片描述
  • 修改端口80:80,改为8080:80在这里插入图片描述

1.3 安装

./install.sh

安装成功后显示如下:
在这里插入图片描述

1.4 访问

1.配置host
192.168.28.138 hub.zlt.com

2.通过域名访问
http://hub.zlt.com:8080

默认用户名/密码: admin/Harbor12345
如果密码不对,请查看harbor.cfgharbor_admin_password配置
在这里插入图片描述

2. 使用介绍

Harbor是一个企业级开源镜像仓库,也是首个加入 CNCF 且原创于中国的项目,时间于2018年8月。在2014年由VMware中国研发中心内部立项和使用,并于2016年对社区开源。Harbor项目扎根、成长和壮大于中国社区,在 CNCF 中是唯一原生支持中文的项目,深受中国用户推崇和喜爱。

Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器。Harbor用于容器镜像管理,主要提供基于角色的镜像访问控制、镜像复制、镜像漏洞分析、镜像验真和操作审计等功能。迄今为止,HarborGitHub上已获得超过 4700+ 颗星。

2.1 新建项目

默认是私有项目,必需通过docker login登录后才能拉取或者提交
在这里插入图片描述

2.2 从私有仓库提交/拉取镜像

1.打tag

docker tag zookeeper:3.4 hub.zlt.com:8080/test-harbor/zookeeper:3.4

2.提交镜像

docker push hub.zlt.com:8080/test-harbor/zookeeper:3.4

3.拉取镜像

docker pull hub.zlt.com:8080/test-harbor/zookeeper:3.4

2.3 问题锦集

2.3.1 http: server gave HTTP response to HTTPS client

在这里插入图片描述
原因:因为Docker从1.3.X之后,与docker registry交互默认使用的是https,然而此处搭建的私有仓库只提供http服务,所以当与私有仓库交互时就会报上面的错误。为了解决这个问题需要在启动docker server时增加启动参数为默认使用http访问。

解决:修改docker启动配置文件

vim /usr/lib/systemd/system/docker.service

找到ExecStart在后面添加--insecure-registry hub.zlt.com:8080:
在这里插入图片描述
重启docker

systemctl daemon-reload
systemctl restart docker

2.3.2 denied: requested access to the resource is denied

在这里插入图片描述
解决:通过docker login 登录后再操作
在这里插入图片描述