Harbor仓库搭建

1 下载harbor压缩包

下载地址:

https://github.com/goharbor/harbor/releases/download/v2.4.3/harbor-offline-installer-v2.4.3.tgz

我选择的是offline的压缩包,online下载可能不稳定

2 解压harbor压缩包,导出镜像

tar xf harbor-offline-installer-v2.4.3.tgz 

会得到一个harbor目录,cd进这个目录

cd harbor
[root@k8s-master harbor]# ls
common.sh  harbor.v2.4.3.tar.gz  harbor.yml.tmpl  install.sh  LICENSE  prepare

其中会看到一个镜像文件的压缩包,导出来即可

docker load < harbor.v2.4.3.tar.gz 

在这里插入图片描述

3 修改harbor.yml文件参数

cp harbor.yml.tmpl harbor.yml
vim harbor.yml

3.1 修改一: hostname的值,改为域名或者ip

在这里插入图片描述

3.2 如果用https–443端口

有公网ip则需要自己做证书,无公网ip则需要自己做证书,且需要注释掉80端口,如:
在这里插入图片描述
自己做diy安全证书过程(虽然并不安全,只是为了模拟443端口):

mkdir cert
cd cert/
openssl genrsa -out server.key 2048
openssl req -x509 -new -nodes -key server.key -subj "/CN=192.168.123.152" -days 3650 -out server.crt

[root@k8s-master cert]# ls
server.crt server.key

ls可以看到自己创建号的密钥和证书,可以到harbor.yml文件中,将server.crt 和server.key中的绝对路径写上去

vim /root/harbor/harbor.yml

# https related config
https:
  # https port for harbor, default is 443
  port: 443
  # The path of cert and key files for nginx
  certificate: /root/harbor/cert/server.crt
  private_key: /root/harbor/cert/server.key

然后执行harbor目录中的prepare文件

./prepare

./prepare 会得到一个docker-compose.yml文件
在这里插入图片描述
想要运行这个docker-compose.yml文件需要下载docker-compose

yum -y install docker-compose
docker-compose up -d

这个时候可以去浏览器访问harbor仓库了,输入master的ip即可
会显示不安全,可以点击继续访问
在这里插入图片描述
默认的用户名和密码如下

在这里插入图片描述
在这里插入图片描述
harbor仓库的443端口创建完成
harbor仓库的80端口更加简单,注释掉443相关内容

4 每个节点访问harbor仓库的设置

vim /etc/docker/daemon.json

{
"insecure-registries": ["192.168.123.152"]   
}

在每个节点进行此操作,ip改为master 的ip即可,重启docker

systemctl restart docker

5 pull和push镜像注意事项

push一个镜像到harbor的时候,需要授权才可以操作,因此先到harbor仓库创建一个用户
在这里插入图片描述
用户创建完毕则在项目中加入用户
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
用户创建完毕可以在需要push镜像的节点上,登录该用户

docker login 192.168.123.152

输入命令密码,登陆成功如下显示

[root@k8s-master ~]# docker login 192.168.123.152
Username: chenjiao
Password: 
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
[root@k8s-master ~]# 

这时候可以push镜像了,将需要推送的镜像标签修改一下,改为master节点的ip+要推送的地址。比如推给公开仓库library,以nginx为例子

docker tag nginx:1.16.1  192.168.123.152/library/nginx:1.16.1

然后再进行push

docker push 192.168.123.152/library/nginx:1.16.1

library公共仓库的pull不需要用户登录,但是私有仓库需要用户授权
完结撒花

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Harbor 是一个开源的云原生镜像仓库,支持 Docker 和 Kubernetes。搭建 Harbor 镜像仓库可以方便地管理和部署 Docker 镜像。 以下是 Harbor 镜像仓库搭建步骤: 1. 安装 DockerDocker Compose 首先需要在服务器上安装 DockerDocker Compose,可以参考 Docker 官方文档进行安装。 2. 下载并解压 Harbor 安装包 在 Harbor 的官网上下载最新版本的 Harbor 安装包,解压到服务器上的任意目录。 3. 配置 Harbor 进入 Harbor 安装包所在目录,编辑 `harbor.cfg` 文件,配置相关参数,例如: ``` hostname = example.com ui_url_protocol = https harbor_admin_password = StrongPassword ``` 这里的 `hostname` 是 Harbor 的访问地址,`ui_url_protocol` 是访问协议,`harbor_admin_password` 是管理员密码。 4. 启动 HarborHarbor 安装包所在目录下执行以下命令启动 Harbor: ``` docker-compose up -d ``` 这会启动 Harbor 的所有组件,并且在后台运行。 5. 配置 Docker 客户端 在需要使用 Harbor 镜像仓库的客户端机器上,编辑 Docker 配置文件 `/etc/docker/daemon.json`,加入以下内容: ``` { "insecure-registries": ["example.com"] } ``` 这里的 `example.com` 是 Harbor 的访问地址。 6. 登录 Harbor 在客户端机器上执行以下命令登录 Harbor: ``` docker login example.com ``` 这里的 `example.com` 是 Harbor 的访问地址。 7. 使用 Harbor 登录成功后,就可以使用 Harbor 镜像仓库了,例如: ``` docker pull example.com/library/nginx:latest docker push example.com/library/nginx:latest ``` 这里的 `library/nginx` 是一个示例镜像,可以替换成其他镜像。 以上是 Harbor 镜像仓库搭建步骤,希望对你有所帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值