Harbor搭建

安装Harbor之前必须保证系统已安装docker和docker-compose。

一、安装docker

docker安装

二、安装docker-compose

Harbor对docker-compse的版本是有要求的,要高于1.19版本。这里我安装的是1.25版本。

1、在线安装

下载路径是【/usr/local/bin/】下载完之后可以看下【/usr/local/bin】这个目录有没有【docker-compose】文件。

curl -L https://dn-dao-github-mirror.daocloud.io/docker/compose/releases/download/1.25.4/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

赋予可执行权限

# 给docker-compose添加执行权限
chmod +x /usr/local/bin/docker-compose
# 可以省略这一步 ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
# 查看docker-compose是否安装成功
docker-compose -version

在这里插入图片描述

2、离线安装

docker-compose官网 下载指定版本的源文件。

1、https://github.com/docker/compose/releases下载指定版本的源文件,上传到/usr/local/bin路径
2、chmod +x /usr/local/bin/docker-compose
3、docker-compose --version
3、基础使用命令
#前台启动
docker-compose up

# 后台启动
docker-compose up -d

# 停止容器
docker-compose down

# 停止容器并移除数据
docker-compose down -v

三、安装Harbor

1、下载Harbor安装包

Harbor官方 下载安装包。

#上传压缩包到linux,并解压 
tar -zxvf harbor-offline-installer-v2.1.6.tgz -C /usr/local/soft/

在这里插入图片描述

2、修改Harbor的配置文件

进入/usr/local/soft/harbor目录 然后将harbor.yml.tmp复制一份并命名为harbor.yml,harbor.yml就是harbor的配置文件。

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

文件开头的hostname一定要修改,可以改成系统的实际地址。配置中注释也说得很清楚,不能使用localhost或者127.0.0.1,因为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: ip

http和https配置根据实际需要二者取其一,另一个注释掉。

# 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 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

UI界面的管理员密码,默认Harbor12345,可以根据实际需求修改。

# Remember Change the admin password from UI after launching Harbor.
harbor_admin_password: Harbor12345

其他配置可保持不变或根据需求修改。

3、执行安装命令
# 预处理命令,会创建一些文件夹,初始化一些文件
./prepare

# 真正的安装命令,--with-trivy表示启用镜像扫描功能并使用trivy扫描器
./install.sh --with-trivy

最后出现下图,表示安装成功。
在这里插入图片描述

4、启动和停止
# 后台启动
docker-compose up -d
# 停止
docker-compose stop
# 停止,会删除容器
docker-compose down
# 重新启动 
docker-compose restart
5、访问Harbor的UI界面

打开浏览器访问,ip为操作系统ip地址,端口为配置文件中http或https配置的端口。用户名为admin,密码为配置文件中配置的密码。
默认账户密码:admin/Harbor12345
在这里插入图片描述
在这里插入图片描述

6、将仓库添加到docker配置中

修改docker的配置文件 /etc/docker/daemon.json, insecure-registries配置就是Harbor镜像仓库的地址。

{
	"insecure-registries": ["ip:80"]
}

修改后,需要重启docker与Harbor

# 重启docker
systemctl daemon-reload
systemctl restart docker

systemctl status docker

# 重启Harbor
docker-compose restart
7、登录与退出Harbor仓库
# 回车后根据提示输入用户名、密码,注意80端口不要省略
docker login ip:80

# 或者一步到位,注意80端口不要省略
docker login ip:80 -u username -p password

# 退出
docker logout

注意80端口不要省略,否则可能会报错,因为Harbor默认使用https的方式登录。

8、推送镜像
本地构建镜像

首先本地要有一个镜像。
在这里插入图片描述

标记镜像

给待推送的镜像打标记,打标记命令格式如下:

docker tag SOURCE_IMAGE[:TAG] ip:port/library/REPOSITORY[:TAG]

各参数含义:

  1. SOURCE_IMAGE[:TAG]表示当前docker已存在的某个版本的镜像;
  2. library表示的是harbor里头的某个项目名称,表示镜像推送给这个项目;
  3. 注意,其中ip和端口都不要省(尤其在http协议里头)。
    比如我要推送docker-demo到harbor仓库,打的标记如下:
docker tag docker-demo:dev ip:80/library/docker-demo:dev
登录Harbor
# 登录
docker login ip:80 -u admin -p Harbor12345

# 退出
docker logout
推送镜像

harbor推送镜像的命令格式如下:

docker push ip:80/library/REPOSITORY[:TAG]

比如我要推送上面已经打好标记的镜像,命令如下:

docker push ip:80/library/docker-demo:dev
到Harbor上查看

镜像推送成功之后,在harbor上对应的项目里头就可以查看到推送上来的镜像如下:
在这里插入图片描述
在这里插入图片描述
不同的角色具有不同的权限,可以创建用户,用于管理某个项目。

  1. 项目管理员:项目管理员有镜像上传/拉取、添加/删除成员、Helm Chart上传/下载、配置管理等权限。该角色在实际的业务场景通常是分配给某个项目的负责人。
  2. 维护人员拥有超越“开发者”的权限,包括扫描镜像、查看复制任务以及删除镜像和Helm Chart上传/下载、删除的能力。
  3. 开发者拥有项目的读写权限,即上传镜像到该项目和从该项目拉取镜像、上传/下载HelmChart、查看日志,其它权限没有。
  4. 访客对指定项目具有只读权限。他们可以拉取和重新标记图像,但不能推送,也可以登录Harbor UI界面。
  5. 受限访客没有项目的完全读取权限。他们可以拉取图像但不能推送,而且他们看不到日志或项目的其他成员。例如,您可以为来自不同组织的共享项目访问权限的用户创建受限访客。受限访客也可以登录Harbor,但是只具有镜像拉取权限,无法查看日志等权限。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值