0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

私有镜像仓库Harbor极简搭建指南(HTTP版)

马哥Linux运维 来源:bambrow.com 2023-05-05 14:41 次阅读

本文简要介绍私有镜像仓库 Harbor 的搭建指南(HTTP 版),以及使用方法。搭建部分主要参考官网。本文基于以下版本:

 Docker: 20.10.12
 Docker-compose: 1.29.2
 Harbor: 2.4.1

1.准备工作

1.1 安装 Docker 与 Docker Compose

请直接参考官网。这里仅给出在 CentOS 上的例子:

sudo yum install -y yum-utils
sudo yum-config-manager 
  --add-repo 
  https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install docker-ce docker-ce-cli containerd.io
sudo systemctl start docker
sudo systemctl enable docker


sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

1.2 安装 OpenSSL

这里仅给出 CentOS 的例子:

yum install -y openssl

2.安装 Harbor

官网给出了两种安装模式,在线安装包或离线安装包。其区别是离线安装包里面含有镜像,在线版本在安装时则去Docker Hub拉取镜像。我们这里使用离线安装包。

wget https://github.com/goharbor/harbor/releases/download/v2.4.1/harbor-offline-installer-v2.4.1.tgz
tar zxvf harbor-offline-installer-v2.4.1.tgz
cd harbor

在harbor文件夹里可以看到有一份文件harbor.yml.tmpl,这是 Harbor 的配置信息,我们复制一份并进行修改(以下仅显示修改部分):

cp harbor.yml.tmpl harbor.yml

harbor.yml

# Configuration file of Harbor


# The IP address or hostname to access admin UI and registry service.
# DO NOT use localhost or 127.0.0.1, because Harbor needs to be accessed by external clients.
- hostname: reg.mydomain.com
+ hostname: your.domain.com (自行指定)


# http related config
http:
 # port for http, default is 80. If https enabled, this port will redirect to https port
 port: 80


# https related config
# 直接禁用 HTTPS
- https:
+ # https:
 # https port for harbor, default is 443
- port: 443
+ # port: 443
 # The path of cert and key files for nginx
- certificate: /your/certificate/path
- private_key: /your/private/key/path
+ # certificate: /your/certificate/path
+ # private_key: /your/private/key/path


# # Uncomment following will enable tls communication between all harbor components
# internal_tls:
#  # set enabled to true means internal tls is enabled
#  enabled: true
#  # put your cert and key files on dir
#  dir: /etc/harbor/tls/internal


# Uncomment external_url if you want to enable external proxy
# And when it enabled the hostname will no longer used
# external_url: https://reg.mydomain.com:8433


# The initial password of Harbor admin
# It only works in first time to install harbor
# Remember Change the admin password from UI after launching Harbor.
- harbor_admin_password: Harbor12345
+ harbor_admin_password: yourPassword (自行指定)

修改完毕后,直接运行 ./install.sh,并等待 Docker Compose 执行完毕。部署完毕后,你就可以使用这台机器的 80 端口看到 Harbor 界面了。如果需要启动 Helm Chart 的管理功能,请使用 ./install.sh --with-chartmuseum。

3.登录与使用方法

在安装 Harbor 的本机,可以直接在/etc/hosts 里配置,在 127.0.0.1 后面加上你在配置文件里定义的 hostname,随后可以使用如下命令直接登录:

docker login -u admin -p yourPassword http://your.domain.com

上面的密码与 hostname 需要自行替换。

如果在其他机器登录,首先还是需要配/etc/hosts,将 hostname 指向安装 Harbor 的机器 IP。登录时,可能会遇到如下情况:

$ docker login -u admin -p yourPassword http://your.domain.com


Error response from daemon: Get https://your.domain.com/v2/: dial tcp xxx.xxx.xxx.xxx connect: connection refused

这个原因是访问 HTTPS 被拒绝(我们只配置了 HTTP),需要关闭安全验证。修改/etc/docker/daemon.json 并加入如下内容:

/etc/docker/daemon.json

+ "insecure-registries": ["your.domain.com:port", "0.0.0.0"]

如果是 80 端口号则可以忽略端口部分。修改完毕后,重启 Docker:

sudo systemctl restart docker

必要时,可以在安装 Harbor 的机器上重启 Harbor:

cd harbor
docker-compose down -v
docker-compose up -d

再次登录即可正常使用。需要注意,使用 Harbor 时,镜像需要遵循以下格式:

# Docker
docker tag SOURCE_IMAGE[:TAG] your.domain.com/PROJECT_NAME/REPOSITORY[:TAG]
docker push your.domain.com/PROJECT_NAME/REPOSITORY[:TAG]
docker pull your.domain.com/PROJECT_NAME/REPOSITORY[:TAG]


# Helm
helm repo add --username admin --password ADMIN_PASSWORD harbor http://your.domain.com/chartrepo/
helm plugin install https://github.com/chartmuseum/helm-push
helm cm-push CHART_PATH --version="CHART_VERSION" harbor
helm repo update
helm search repo CHART_PATH
helm install RELEASE_NAME CHART_NAME

其中 PROJECT_NAME 是你在 Harbor UI 新建的项目名,CHART_PATH 是存储 Helm Chart 的路径,CHART_NAME 是使用 helm search 后搜索到的 Chart 名称,RELEASE_NAME 是 Helm 部署后的自定义名称。

审核编辑:汤梓红
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 存储
    +关注

    关注

    13

    文章

    4353

    浏览量

    86099
  • HTTP
    +关注

    关注

    0

    文章

    511

    浏览量

    31431
  • 镜像
    +关注

    关注

    0

    文章

    170

    浏览量

    10786
  • CentOS
    +关注

    关注

    0

    文章

    79

    浏览量

    13790
  • Docker
    +关注

    关注

    0

    文章

    492

    浏览量

    11926

原文标题:私有镜像仓库 Harbor 极简搭建指南(HTTP 版)

文章出处:【微信号:magedu-Linux,微信公众号:马哥Linux运维】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    【新功能】企业级Maven私有仓库服务结束公测,全面开放使用

    摘要: 目前云效上线了企业级Maven私有仓库服务。用户可以一键开通Maven私有仓库服务,零配置实现私有二方库的上传和下载。经过半个月的公
    发表于 06-20 15:50

    清理Docker镜像仓库时遇到的坑点

    Docker镜像仓库PC蛋蛋搭建清理的探索之路
    发表于 04-29 17:13

    docker搭建仓库

    docker 简单私有仓库搭建
    发表于 05-07 09:00

    怎么构建docker镜像仓库软件

    【Docker Registry】用docker registry 镜像搭建私有测试仓库
    发表于 08-13 11:03

    harbor二进制文件的下载

    使用harbor搭建私有docker镜像仓库
    发表于 08-16 08:16

    基于Linux系统的私有镜像仓库搭建

    【docker】基于Harbor搭建自己的私有镜像仓库-全过程详解
    发表于 09-19 08:59

    Harbor源代码结构解析

    结构,帮助开发和运维人员理解代码的工作原理。 Harbor项目概览 容器应用的开发和运行离不开可靠的镜像管理。从安全和效率等方面考虑,在企业私有环境内部署的Registry服务是非常必要
    发表于 10-11 10:25 0次下载
    <b class='flag-5'>Harbor</b>源代码结构解析

    关于Gitlab私有仓库建设的实践

    本文介绍了 Gitlab 私有仓库建设的实践。
    的头像 发表于 03-16 08:48 2136次阅读

    HH-SCDAYU200镜像烧录指南

    镜像烧录指南
    发表于 07-20 16:24 33次下载

    使用Nexus在本地搭建npm、yum和maven私有仓库

    使用Nexus在本地搭建npm、yum和maven私有仓库 为保证在无互联网的情况下,可正常搭建、构建项目,并自动化部署项目,本系统采用Nexus+Jenkins+Maven+Gitl
    的头像 发表于 08-21 14:46 390次阅读
    使用Nexus在本地<b class='flag-5'>搭建</b>npm、yum和maven<b class='flag-5'>私有</b><b class='flag-5'>仓库</b>

    云服务器Flexus X实例,Docker集成搭建Gitea私有仓库

    Gitea 私有仓库是一款轻量级的自托管 Git 服务,它提供了与 Github、Gitlab 等类似的功能,但允许用户在自己的服务器上部署和运行,从而完全掌控代码的存储和访问权限。
    的头像 发表于 12-29 15:51 185次阅读
    云服务器Flexus X实例,Docker集成<b class='flag-5'>搭建</b>Gitea<b class='flag-5'>私有</b><b class='flag-5'>仓库</b>

    Flexusx 实例与 Harbor 私有镜像仓库的完美结合

    前言 华为云 828 企业上云节,Flexus X 实例携手 Harbor 私有镜像仓库,共创云上安全高效新生态!Flexus X 以其卓越性能与稳定性,为
    的头像 发表于 01-22 18:04 87次阅读
    Flexusx 实例与 <b class='flag-5'>Harbor</b> <b class='flag-5'>私有</b><b class='flag-5'>镜像</b><b class='flag-5'>仓库</b>的完美结合

    用普通电脑搭建私有云,用普通电脑搭建私有云教程

    随着云存储的普及,越来越多的用户开始考虑搭建自己的私有云系统。那普通电脑也能搭建私有云吗?当然可以,并且方法很简单。首先,私有云是什么?与公
    的头像 发表于 01-13 13:55 126次阅读
    用普通电脑<b class='flag-5'>搭建</b><b class='flag-5'>私有</b>云,用普通电脑<b class='flag-5'>搭建</b><b class='flag-5'>私有</b>云教程

    苹果电脑搭建私有云,苹果电脑搭建私有云的详细操作步骤

        随着云计算技术的飞速发展,云电脑逐渐走进了人们的视野。它像一朵神奇的云,承载着我们的数据和应用,让我们随时随地都能享受到高效的计算服务。今天就为大家介绍苹果电脑搭建私有云的详细操作步骤
    的头像 发表于 01-17 10:17 124次阅读
    苹果电脑<b class='flag-5'>搭建</b><b class='flag-5'>私有</b>云,苹果电脑<b class='flag-5'>搭建</b><b class='flag-5'>私有</b>云的详细操作步骤

    私有云电脑,怎样成功搭建私有云电脑

        在信息时代,远程连接使我们能够在不同的地点之间建立起紧密的联系,实现资源的共享和协同工作。这次给大家介绍怎样成功搭建私有云电脑?    怎样成功搭建私有云电脑?    硬件准备
    的头像 发表于 01-24 10:14 68次阅读
    <b class='flag-5'>私有</b>云电脑,怎样成功<b class='flag-5'>搭建</b><b class='flag-5'>私有</b>云电脑