杨梅冲
每天在想什么呢?

一、Harbor简介

Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器。

作为一个企业级私有 Registry 服务器,Harbor 提供了更好的性能和安全。提升用户使用 Registry 构建和运行环境传输镜像的效率。Harbor 支持安装在多个 Registry 节点的镜像资源复制,镜像全部保存在私有 Registry 中, 确保数据和知识产权在公司内部网络中管控。另外,Harbor 也提供了高级的安全特性,诸如用户管理,访问控制和活动审计等。

基于角色的访问控制 - 用户与 Docker 镜像仓库通过“项目”进行组织管理,一个用户可以对多个镜像仓库在同一命名空间(project)里有不同的权限。
镜像复制 - 镜像可以在多个 Registry 实例中复制(同步)。尤其适合于负载均衡,高可用,混合云和多云的场景。
图形化用户界面 - 用户可以通过浏览器来浏览,检索当前 Docker 镜像仓库,管理项目和命名空间。
AD/LDAP 支持 - Harbor 可以集成企业内部已有的 AD/LDAP,用于鉴权认证管理。
审计管理 - 所有针对镜像仓库的操作都可以被记录追溯,用于审计管理。
国际化 - 已拥有英文、中文、德文、日文和俄文的本地化版本。更多的语言将会添加进来。
RESTful API - RESTful API 提供给管理员对于 Harbor 更多的操控, 使得与其它管理软件集成变得更容易。
部署简单 - 提供在线和离线两种安装工具, 也可以安装到 vSphere 平台(OVA 方式)虚拟设备。

二、Harbor安装

新版安装链接:https://www.cnblogs.com/yangmeichong/p/16623944.html

# 请先安装docker和docker-compose,关闭防火墙、selinux,修改内核参数,hostname
systemctl restart docker

# docker 版本不能太低,如果低了请升级
卸载 docker docker-client docker-common
curl -fsSL https://get.docker.com/ | sh

# 为harbor自签发证书
生成ca证书:
mkdir ssl
openssl genrsa -out ca.key 3072
openssl req -new -x509 -days 3650 -key ca.key -out ca.pem
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
# 安装完成提示 ✔ ----Harbor has been installed and started successfully.---- # 下载harbor安装包:https://github.com/goharbor/harbor/releases tar -xzvf harbor-offline-installer-v2.3.3.tgz cd harbor
docker load -i harbor.v2.3.3.tar.tgz cp harbor.yml.tmpl harbor.yml
./install.sh
# 修改 harbor.yml,之后执行install.sh 修改hostname为域名或ip 修改harbor_admin_password web登录页面密码 https如果不适用可以注销,否则会报错 data_volume 根据实际情况处理 # 页面访问 http://192.168.0111 admin/Harbor12345

 设置开机启动

vi /usr/lib/systemd/system/harbor.service

[Unit]
Description=Harbor
After=docker.service systemd-networkd.service systemd-resolved.service
Requires=docker.service
Documentation=http://github.com/vmware/harbor
 
[Service]
Type=simple
Restart=on-failure
RestartSec=5
ExecStart=/usr/bin/docker-compose -f  /usr/local/harbor/docker-compose.yml up
ExecStop=/usr/bin/docker-compose -f /usr/local/harbor/docker-compose.yml down
 
[Install]
WantedBy=multi-user.target
# 设置开机启动
systemctl enable harbor
systemctl start harbor

三、将docker镜像上传到docker仓库以及下载

docker tag 87a94228f133 192.168.0.111/library/nginx:v1
docker login 192.168.0.111
docker push 192.168.0.111/library/nginx:v1

# 遇到的问题
Error response from daemon: Get "https://192.168.0.111/v2/": dial tcp 192.168.0.111:443: connect: connection refused
# 解决方法:在客户端本机/etc/docker/daemon.json中添加insecure-registries就可以了
{
  "registry-mirrors": ["https://pft7f97f.mirror.aliyuncs.com"],
  "insecure-registries": ["192.168.0.110"]
}

# 下载
docker pull 192.168.0.111/library/nginx:v1

 四、镜像仓库复制以及分布式分发

 

posted on 2021-10-24 15:09  杨梅冲  阅读(602)  评论(0编辑  收藏  举报