Kubernetes(二十六)——搭建Harbor私有镜像仓库

简介

Habor是由VMWare公司开源的容器镜像仓库。事实上,Habor是在Docker
Registry上进行了相应的企业级扩展,从而获得了更加广泛的应用,这些新的企业级特性包括:管理用户界面,基于角色的访问控制,AD/LDAP集成以及审计日志等,足以满足基本企业需求。

安装

下载离线安装包

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

配置对Harbor的HTTPS访问

服务器从阿里云申请证书下载密钥之后将密钥上传到服务器/root/harbor/(申请方法自行百度)

cp harbor.yml.tmpl harbor.yml
vim harbor.yml
hostname: harbor.yutao.co
http:
  port: 8080
https:
  port: 443
  certificate: /root/harbor/harbor.yutao.co.pem
  private_key: /root/harbor/harbor.yutao.co.key
harbor_admin_password: Harbor12345
database:
  password: root123
  max_idle_conns: 50
  max_open_conns: 100
data_volume: /data
clair:
  updaters_interval: 12
trivy:
  ignore_unfixed: false
  skip_update: false
  insecure: false
jobservice:
  max_job_workers: 10
notification:
  webhook_job_max_retry: 10
chart:
  absolute_url: disabled
log:
  level: info
  local:
    rotate_count: 50
    rotate_size: 200M
    location: /var/log/harbor
_version: 2.0.0
proxy:
  http_proxy:
  https_proxy:
  no_proxy:
  components:
    - core
    - jobservice
    - clair
    - trivy

部署Harbor

安装docker compose

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

通过使用prepare脚本为nginx配置启用HTTPS
通过以下compose启动Harbor:

./prepare
docker-compose up -d

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

上传镜像

docker login harbor.yutao.co
Username: admin
Password: 

将自己阿里云私有镜像仓库的镜像上传到Harbor私有镜像仓库

docker pull registry.cn-hangzhou.aliyuncs.com/yutao517/hello-app:1.0
docker tag registry.cn-hangzhou.aliyuncs.com/yutao517/hello-app:1.0 harbor.yutao.co/library/hello-app:1.0
docker push harbor.yutao.co/library/hello-app:1.0

在这里插入图片描述

可以看到library已经有1个hello-app镜像

在这里插入图片描述

注意:如果使用HTTP而不是HTTPS连接Harbor镜像仓库,由于Harbor默认不允许HTTP连接,则必须在Docker客户端主机中使用–insecure-registry将Harbor镜像仓库访问地址添加进允许连接访问的列表中。即在Docker客户端主机中使用vi编辑器修改/etc/docker/daemon.json文件配置

vim /etc/docker/daemon.json

新增

{
    
    
"insecure-registries" : ["这里填自己的域名或ip:这里填HTTP暴露的端口(80可省略)", "0.0.0.0"]
}

拉取镜像

docker pull harbor.yutao.co/library/hello-app:1.0

在这里插入图片描述
因为library在Harbor中是公开项目,所以不用登陆也能拉取镜像,但推送至library必须先登录具有library管理权限的用户。

猜你喜欢

转载自blog.csdn.net/weixin_46415378/article/details/125009637