> 文章列表 > Docker私有仓库Harbor搭建及使用

Docker私有仓库Harbor搭建及使用

Docker私有仓库Harbor搭建及使用

文章目录

    • 一、Harbor简介
    • 二、Harbor仓库部署
    • 三、Harbor仓库使用

一、Harbor简介

官网地址:https://github.com/goharbor/harbor

Docker容器应用的开发和运行离不开可靠的镜像管理,虽然Docker官方也提供了公共的镜像仓库,但是从安全和效率等方面考虑,部署我们私有环境内的Registry也是非常必要的。Harbor是由VMware公司开源的企业级的Docker Registry管理项目,它包括权限管理(RBAC)、LDAP、日志审核、管理界面、自我注册、镜像复制和中文支持等功能。

二、Harbor仓库部署

1、为Harbor自签颁发证书

mkdir /data/ssl -p
cd /data/ssl/

生成CA证书:

# 生成一个3072位的key, 也就是私钥
openssl genrsa -out ca.key 3072
# 生成一个数字证书ca.pem, 3650表示证书的有效时间是3年
openssl req -new -x509 -days 3650 -key ca.key -out ca.pem

生成域名的证书:

# 生成一个3072位的key
openssl genrsa -out harbor.key  3072
# 生成一个证书请求,一会签发证书时需要的
openssl req -new -key harbor.key -out harbor.csr

签发证书:

openssl x509 -req -in harbor.csr -CA ca.pem -CAkey ca.key -CAcreateserial -out harbor.pem -days 3650

2、安装Harbor

下载harbor离线包的地址:https://github.com/goharbor/harbor/releases

创建安装目录:

mkdir /data/harbor
cd /data/harbor
wget https://github.com/goharbor/harbor/releases/download/v2.8.0-rc1/harbor-offline-installer-v2.8.0-rc1.tgz

解压:

tar zxf harbor-offline-installer-v2.8.0-rc1.tgz
cd harbor/cp harbor.yml.tmpl harbor.yml
vim harbor.yml

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Rjb2bWzV-1682041396002)(D:\\MD归档文档\\IMG\\image-20230416182218036.png)]

3、Harbor采用docker-compose安装,所以我们首先安装docker-compose

curl -L https://get.daocloud.io/docker/compose/releases/download/v2.10.2/docker-compose-`uname -s`-`uname -m` -o /usr/bin/docker-composechmod +x /usr/bin/docker-compose

4、执行安装harbor脚本

./prepare
./install.sh

5、浏览器访问IP

账号:admin 密码:Harbor12345

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lzkvzn02-1682041396003)(D:\\MD归档文档\\IMG\\image-20230416174132028.png)]

三、Harbor仓库使用

1、docker指定harbor仓库地址

修改docker配置添加insecure-registries指定Harbor仓库地址,使其信任此仓库。

vim /etc/docker/daemon.json
{"registry-mirrors": ["https://aoewjvel.mirror.aliyuncs.com"],"exec-opts": ["native.cgroupdriver=systemd"],"insecure-registries" : ["152.136.184.171"]
}

重启docker

systemctl daemon-reload
systemctl restart docker

登入仓库

docker login 152.136.184.171

2、创建一个 qinzt 仓库

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-smfkUFZh-1682041396004)(D:\\MD归档文档\\IMG\\image-20230416182759175.png)]

3、打标签上传镜像 至 qinzt 仓库

docker tag centos:7 152.136.184.171/qinzt/centos:7
docker push 152.136.184.171/qinzt/centos:7

4、下载镜像

docker pull 152.136.184.171/qinzt/centos:7