docker私有仓库的搭建和使用(harbor)

本篇博客将为您介绍如何利用Harbor构建一个安全可靠的私有仓库,以确保您的软件包和容器镜像得到妥善的管理和保护。

一、什么是Harbor?

Harbor是由VMware开发的一个开源的企业级容器镜像仓库,它可以为企业提供一个集中式的管理平台,用于存储、分发和保护Docker镜像和Helm Chart。Harbor支持角色基础的访问控制、镜像复制、内置的安全扫描和漏洞管理等功能,使得用户可以更好地掌控其软件交付过程。

二、搭建Harbor私有仓库的步骤

安装harbor前请先安装dokcer环境:可参考centos7安装docker

1.安装harbor

您可以从Harbor的官方GitHub页面(https://github.com/goharbor/harbor/releases)下载最新的Harbor安装包。根据您的操作系统选择适当的版本,下载后传入虚拟机内。
或者使用命令(本文使用的版本是v2.7.1):

# 可能下载不成功,建议下载后上传到环境
wget https://github.com/goharbor/harbor/releases/download/v2.7.1/harbor-offline-installer-v2.7.1.tgz
yum install -y docker-compose		

2.安装harbor

[root@aliyun composetest]# ls
harbor-offline-installer-v2.7.1.tgz
[root@aliyun composetest]# mkdir /harb
[root@aliyun composetest]# mv harbor-offline-installer-v2.7.1.tgz /harb/
[root@aliyun composetest]# cd /harb/
[root@aliyun harb]# ls
harbor-offline-installer-v2.7.1.tgz
[root@aliyun harb]# tar xf harbor-offline-installer-v2.7.1.tgz 
[root@aliyun harb]# ls
harbor  harbor-offline-installer-v2.7.1.tgz
[root@aliyun harb]# cd harbor/
[root@aliyun harbor]# ls
common.sh  harbor.v2.7.1.tar.gz  harbor.yml.tmpl  install.sh  LICENSE  prepare

3.修改配置文件

[root@aliyun harbor]# cp harbor.yml.tmpl harbor.yml
[root@aliyun harbor]# vim harbor.yml

修改IP,并且把下面的https的注释掉
在这里插入图片描述
注释以下行:
在这里插入图片描述

4.安装harbor

./install.sh
# 查看是否安装成功
docker-compose ps

在这里插入图片描述

三、harbor的基本使用

1.网页登录

浏览器输入 http://ip:80 访问 Harbor 页面,用户名和密码为 harbor.yml 配置文件中默认设置的 admin,Harbor12345。

看到以下页面就说明登录成功:
在这里插入图片描述

2.终端登录

编辑 /etc/docker/daemon.json,设置允许访问的 HTTP 仓库地址。

{
    
    
  "insecure-registries":["ip:80"]	#harbor仓库IP地址
}

修改后重启docker服务,开启harbor:

systemctl daemon-reload 
systemctl restart  docker
#进入harbor目录后执行以下命令
docker compose restart

登录终端,出现Login Succeeded说明登录仓库成功:

[root@aliyun harbor]# docker login IP:80
Username: admin
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

3.镜像推送

修改镜像 tag:

docker tag  busybox:latest ip:80/library/busybox:latest

推送镜像到 Harbor:

[root@aliyun harbor]# docker push ip:80/library/busybox
Using default tag: latest
The push refers to repository [ip:80/library/busybox]
3d24ee258efc: Pushed 
latest: digest: sha256:023917ec6a886d0e8e15f28fb543515a5fcd8d938edb091e8147db4efed388ee size: 528

登录仓库查看:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/zheng_long_/article/details/132284838