Centos搭建harbor私有镜像仓库

目录

前言

harbor简介

docker-compose简介

前置准备

流程

1.设置主机名

2.配置阿里云docker Yum源(在server与client主机上执行)

3.安装docker-ce

4.安装docker-compose(server端)

5.安装harbor

6.下载nginx容器镜像上传到harbor仓库测试

7.配置harbor使用https进行访问


前言

harbor简介

Harbor是VMware公司提供的一款镜像仓库,提供了权限控制、分布式发布、强大的安全扫描与审查机制等功能,Harbor 私有仓库,它以 Registry 为基础,提供了对用户友好的管理界面,可以帮助我们快速搭建一个企业级的 Docker Registry 服务。Harbor 的每个组件都是以 Docker 容器的形式构建的,使用 Docker Compose 进行部署。

docker-compose简介

Docker Compose 是一款针对于单台虚拟机容器编排工具,遵循 YAML 文件形式创建或启动所有的容器

前置准备

本次测试使用了两台虚拟机,分别为Client和Server,Server端负责提供harbor仓库访问

server的IP为:172.25.0.11

client的IP为:  172.25.0.12

流程

1.设置主机名
hostnamectl set-hostname server
bash
hostnamectl set-hostname client
bash

2.配置阿里云docker Yum源(在server与client主机上执行)
curl -o /etc/yum.repos.d/docker-ce.repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum makecache

3.安装docker-ce
yum install -y docker-ce-18.06.3.ce-3.el7.x86_64
systemctl start docker

4.安装docker-compose(server端)
#下载docker-compose二进制文件
curl -SL https://github.com/docker/compose/releases/download/v2.33.0/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose
#添加执行权限
chmod +x /usr/local/bin/docker-compose
#查看docker-compose版本
docker-compose --version

5.安装harbor
wget https://github.com/goharbor/harbor/releases/download/v2.5.1/harbor-offline-installer-v2.5.1.tgz
tar -zvxf harbor-offline-installer-v2.5.1.tgz
cd harbor && mv harbor.yml.tmpl harbor.yml
vim harbor.yml

#修改主机名与harbor密码,并注释掉443端口默认使用http进行访问

使用http://172.25.0.11访问web界面

6.下载nginx容器镜像上传到harbor仓库测试
#配置镜像代理并指定私有仓库的地址
cat >> /etc/docker/daemon.json <<EOF
{
"registry-mirrors":["https://3146a7e5d01e422da13bb564af9f150f.mirror.swr.myhuaweicloud.com"],
"insecure-registries": ["172.25.0.11"]
}
EOF
systemctl restart docker 
docker-compose down 
docker-compose up -d 
#拉去nginx镜像并登录harbor私有仓库上传
docker pull nginx
docker login 172.25.0.11 -u admin -p Huawei@123
docker tag nginx:latest 172.25.0.11/library/nginx:latest
docker push 172.25.0.11/library/nginx:latest

yum install -y docker
cat >> /etc/docker/daemon.json <<EOF
{

"insecure-registries": ["172.25.0.11"]
}
EOF
systemctl start docker 
docker login 172.25.0.11 -u admin -p Huawei@123
docker pull 172.25.0.11/library/nginx:latest

7.配置harbor使用https进行访问
#172.25.0.12
yum intsall openssl
cd /etc/pki/CA/
touch index.txt
echo 1000 > certs/ca.srl
openssl genrsa -out ./private/ca.key 4096  ##生成CA私钥
openssl req -x509 -new -nodes -sha512 -days 3650 -subj "/C=CN/ST=guaudong/L=shenzhen/O=example/OU=Personal/CN=172.25.0.12" -key private/ca.key -out certs/ca.crt  ##使用私有自签证书
##生成拓展文件
cat > v3.ext <<-EOF
authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
extendedKeyUsage = serverAuth
subjectAltName = IP:172.25.0.11
EOF
#172.25.0.11
cd /etc/pki/CA && mkdir csr
openssl genrsa -out private/harbor.key 4096 ##生成harbor私钥
openssl req -sha512 -new -subj "/C=CN/ST=Beijing/L=Beijing/O=example/OU=Personal/CN=172.25.0.11"  -key private/harbor.key  -out csr/harbor.csr ##生成harbor证书签名请求文件
scp csr/harbor.csr root@172.25.0.12:/etc/pki/CA/
#172.25.0.12
openssl x509 -req -sha512 -days 3650  -extfile v3.ext  -CA private/ca.crt -CAkey certs/ca.key  -in harbor.csr   -out harbor.crt ##使用CA证书对csr文件进行签名
scp harbor.crt root@172.25.0.11:/etc/pki/CA/certs/
vim /root/harbor/harbor.yml

sh install.sh  ##重新harbor执行安装

#使用https进行访问

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值