手把手教你搭建docker私有仓库harbor-kb88凯时官网登录

来自:
时间:2024-06-12
阅读:
免费资源网,https://freexyz.cn/

1、什么是docker私有仓库

docker私有仓库是用于存储和管理docker镜像的私有存储库。docker默认会有一个公共的仓库docker hub,而与docker hub不同,私有仓库是受限访问的,只有授权用户才能够上传、下载和管理其中的镜像。这种私有仓库可以部署在本地云环境中,用于组织内部开发、测试和生产环境中的容器镜像管理。保证数据安全性。

2、docker有哪些私有仓库

以下是一些常见的docker私有仓库:

  • harbor:作为一个企业级的docker registry服务,harbor提供了安全、可信赖的镜像存储和管理功能。它支持rbac权限控制、镜像复制、镜像签名、漏洞扫描等功能。
  • docker trusted registry (dtr):由docker官方推出的企业级docker私有仓库服务,与docker engine紧密集成,支持高度的安全性和可靠性。
  • portus:一个开源的docker镜像管理和认证服务,提供用户管理、团队管理、镜像审核等功能,与docker registry兼容。
  • nexus repository manager:虽然主要是用于构建和管理java组件,但也可以用作docker私有仓库。它具有强大的存储管理和权限控制功能。
  • gitlab container registry:gitlab集成了容器注册表功能,允许您存储、管理和分发docker镜像。这是gitlab自带的功能,无需额外部署。
  • aws elastic container registry (ecr):如果使用aws云服务,可以考虑使用aws ecr作为私有仓库。它与aws的其他服务集成紧密,对aws用户来说是一个方便的选择。

本篇使用harbor搭建docker私有仓库。

3、harbor简介

harbor是一个开源的企业级docker registry服务,它提供了一个安全、可信赖的仓库来存储和管理docker镜像。harbor翻译为中文名称为"庇护;居住;"。可以理解为是docker镜像的"居住环境"或者是镜像的"庇护所"。harbor最初由vmware公司开发,旨在解决企业级docker镜像管理的安全和可信任性问题。vmware于2016年发布,在2017年,vmware将harbor开源,这使得更广泛的社区和组织可以自由地使用和贡献代码。harbor是一个成熟、功能丰富且安全可靠的企业级docker registry服务,为企业容器化应用的部署和管理提供了强大的支持。

harbord88尊龙官网手机app官网地址:

github开源地址:

4、harbor下载

4.1、通过linux命令下载
wget https://github.com/goharbor/harbor/releases/download/v2.10.0/harbor-offline-installer-v2.10.0.tgz
4.2、github下载

下载地址: 下载离线版本

手把手教你搭建docker私有仓库harbor

下载成功后,把包通过 xftp 上传到。

4.3、解压

解压文件

tar -zxvf harbor-offline-installer-v2.10.0.tgz 

5、启动harbor

5.1、修改配置文件

复制harbor.yml.tmpl 文件并重命名为harbor.yml修改此配置文件,需要设置hostname、端口、数据库密码等。

cp harbor.yml.tmpl harbor.yml #拷贝
vim harbor.yml

修改配置文件:

#修改hostname的值,如果没有域名就使用本机ip地址
hostname: 192.168.42.133
#配置启动端口号
# http related config 
http:
  # port for http, default is 80. if https enabled, this port will redirect to https port
  port: 5000
# 如果没有申请证书,需要隐藏https
#https:
  # https port for harbor, default is 443
#  port: 443
  # the path of cert and key files for nginx
#  certificate: /your/certificate/path
#  private_key: /your/private/key/path
#启动成功后,admin用户登录密码
# remember change the admin password from ui after launching harbor.
harbor_admin_password: adminharbor12345

手把手教你搭建docker私有仓库harbor

5.2、启动

配置文件修改成功后,执行 install.sh 脚本进行安装harbor

./install.sh 

启动报错:

[step 0]: checking if docker is installed ...
note: docker version: 26.1.3
[step 1]: checking docker-compose is installed ...
/opt/harbor/common.sh: line 119: docker-compose: command not found
✖ failed to parse docker-compose version.

可以看到,该服务器安装的 docker 没有安装 docker-compose 插件

5.3、安装docker-compose

进入docker-compose d88尊龙官网手机app官网下载执行文件,地址: 下载成功后,把可执行文件加入linux 系统命令目录

cp docker-compose-linux-x86_64 /usr/local/bin/

重命名:

mv docker-compose-linux-x86_64 docker-compose

授权:

chmod  x /usr/local/bin/docker-compose

执行命令查看是否安装成功:

docker-compose --version

如果需要卸载,直接删除即可:

rm -f /usr/bin/docker-compose
5.4、再次启动

再次执行 ./install.sh

手把手教你搭建docker私有仓库harbor

提示安装成功。接下来就可以访问harbor了。访问ip 端口:
手把手教你搭建docker私有仓库harbor

访问成功,由于harbor是通过docker管理的,所以启动非常方便。如果kb88凯时d88尊龙官网手机app官网登录首页访问成功说明docker私有仓库已经部署成功了。

6、harbor web页面操作说明

默认用户名是admin,密码是启动时设置的密码:adminharbor12345

手把手教你搭建docker私有仓库harbor

登录成功进入d88尊龙官网手机app主页面了。从系统kb88凯时d88尊龙官网手机app官网登录首页可以看到系统分为三个菜单:项目、日志、系统管理。

6.1、项目

项目管理顾名思义就是用来管理项目的。可以为每一个开发项目创建一个私有项目库,然后把docker镜像存储到指定的项目中,为每个项目实现项目镜像隔离。创建项目的时候,harbor提供了公开库(public repository)和私有库(private repository)两种类型的镜像存储空间。

手把手教你搭建docker私有仓库harbor

通过详情信息可以看到:公开库中的镜像是对所有用户可见和可访问的,任何人都可以查看和拉取其中的镜像。而私有库中的镜像则需要登录才能访问控制,只有被授权的用户或团队才能够查看、拉取和推送镜像。 可以根据需要创建相关的项目。

手把手教你搭建docker私有仓库harbor

项目创建成功后,可以点击进入项目。在里面可以为每个项目单独设置不同的配置信息。可以为每一个项目添加成员信息。

手把手教你搭建docker私有仓库harbor

角色权限说明:

  • 项目管理员(project administrator):拥有项目的最高权限,可以对项目进行全面管理,包括创建和删除项目、管理项目成员和权限、配置项目属性、查看项目日志等。
  • 维护人员(maintainer):类似于项目管理员,但权限稍低,通常用于协助管理项目,可以进行项目的部分管理操作,如添加和删除镜像、配置镜像的复制和同步规则等。
  • 开发者(developer):具有对项目中镜像仓库的读写权限,可以拉取、推送和删除镜像,以及管理部分项目配置,但不能进行项目管理操作。
  • 访客(guest):只具有对项目中镜像仓库的只读权限,可以查看镜像和元数据,但无法对镜像进行修改或删除操作。通常用于分享项目或镜像给外部团队或用户。
  • 受限访客(restricted guest):是一种更加受限的访客角色,通常用于提供给外部用户或系统,具有对项目中镜像仓库的只读权限,但可能会限制访问的部分内容或功能。

在右上角显示推送命令,可以通过提示命令进行docker镜像推送。

手把手教你搭建docker私有仓库harbor

6.2、日志

日志菜单就是记录用户操作日志信息的。

手把手教你搭建docker私有仓库harbor

6.3、系统管理

系统管理主要用来管理harbor用户人员信息、镜像仓库的各种配置、权限和系统设置。

手把手教你搭建docker私有仓库harbor

7、docker命令使用私有仓库

7.1、登录

首先登录私有仓库地址:

docker login  -u admin -p adminharbor12345 http://192.168.42.133:5000

会报错:

warning! using --password via the cli is insecure. use --password-stdin.
error response from daemon: get "https://192.168.42.133:5000/v2/": proxyconnect tcp: dial tcp 192.168.65.7:3128: connect: connection refused

docker认为这个地址是不安全的,所以需要在docker守护进程配置文件中把该地址加入安全范围。

{
  "registry-mirrors": ["https://ejes884z.mirror.aliyuncs.com"],
  "log-driver":"json-file",
  "log-opts": {"max-size":"1g", "max-file":"3"},
  "live-restore": true,
  "insecure-registries": ["192.168.42.133:5000"]
}
# insecure-registries 不安全的注册表配置一些不安全的地址信息,让docker认为是安全的。多个地址使用 "," 分割

加入配置成功后,再次登录。

warning! using --password via the cli is insecure. use --password-stdin.
warning! your password will be stored unencrypted in /root/.docker/config.json.
configure a credential helper to remove this warning. see
https://docs.docker.com/engine/reference/commandline/login/#credentials-store
login succeeded

通过输出发现登录成功。认证信息存储在 ~/.docker/config.json 文件中,只要登录信息存在,登录会一直生效不需要每次推送拉取之前都登录。

7.2、推送

重新命名镜像名称

docker tag 94543a6c1aef 192.168.42.133:5000/blog_project/nginx:1.26.0

推送

docker push 192.168.42.133:5000/blog_project/nginx:1.26.0

查看harbor仓库,推送成功。

手把手教你搭建docker私有仓库harbor

7.3、拉取

通过另一台服务器,使用 docker pull 拉取镜像从私有仓库拉取镜像:

docker pull 192.168.42.133:5000/blog_project/nginx:1.26.0

拉取成功

手把手教你搭建docker私有仓库harbor

查看下载数,发现已经更新了。

手把手教你搭建docker私有仓库harbor

8、总结

关于使用harbor搭建docker私有仓库就介绍完毕了,如果大家有兴趣可以查看一下其他搭建方式,然后在它们之间进行对比一下看看那种方式更适合。本篇为入门级harbor的基础使用,其他功能可以自行研究。

免费资源网,https://freexyz.cn/
返回顶部
顶部
网站地图