温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Docker Registry--harbor安装和简单使用szyd

发布时间:2021-11-10 17:39:46 来源:亿速云 阅读:358 作者:柒染 栏目:云计算
# Docker Registry--Harbor安装和简单使用 ## 目录 1. [Harbor概述](#harbor概述) 2. [Harbor核心组件](#harbor核心组件) 3. [安装前准备](#安装前准备) 4. [Harbor安装部署](#harbor安装部署) 5. [Harbor基本配置](#harbor基本配置) 6. [Harbor日常使用](#harbor日常使用) 7. [常见问题排查](#常见问题排查) 8. [总结](#总结) --- ## Harbor概述 Harbor是由VMware公司开源的企业级Docker Registry管理项目,提供以下核心功能: - **镜像仓库管理**:支持多租户的Docker镜像集中存储 - **权限控制(RBAC)**:基于角色的访问控制机制 - **漏洞扫描**:集成Clair组件进行安全扫描 - **镜像复制**:支持多仓库间镜像同步 - **图形化界面**:友好的Web管理界面 - **日志审计**:完整记录所有操作日志 相比官方Docker Registry,Harbor更适合企业级生产环境使用。 --- ## Harbor核心组件 | 组件 | 功能描述 | |-----------------|--------------------------------------------------------------------------| | **Proxy** | Nginx反向代理,处理所有入站请求 | | **Core** | 核心服务,处理Web UI/API请求 | | **Job Service** | 执行镜像复制等异步任务 | | **Registry** | 实际存储Docker镜像的组件 | | **Database** | PostgreSQL数据库存储用户、项目等元数据 | | **Redis** | 缓存会话信息 | | **Clair** | 漏洞扫描组件(可选) | | **Notary** | 内容信任服务(可选) | --- ## 安装前准备 ### 1. 系统要求 - **操作系统**:Linux (推荐Ubuntu 18.04+/CentOS 7+) - **Docker**:18.06.0-ce+ - **Docker Compose**:1.22.0+ - **硬件配置**: - 最小配置:2CPU/4GB内存/40GB磁盘 - 生产建议:4CPU/8GB内存/500GB+磁盘 ### 2. 环境准备 ```bash # 安装Docker curl -fsSL https://get.docker.com | sh systemctl enable docker && systemctl start docker # 安装Docker Compose curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose 

3. 下载Harbor

wget https://github.com/goharbor/harbor/releases/download/v2.4.1/harbor-offline-installer-v2.4.1.tgz tar zxvf harbor-offline-installer-v2.4.1.tgz cd harbor 

Harbor安装部署

1. 修改配置文件

编辑harbor.yml

hostname: registry.szyd.com # 修改为实际域名或IP http: port: 8080 # HTTP端口(生产环境建议使用HTTPS) harbor_admin_password: Harbor12345 # 管理员初始密码 database: password: root123 # 数据库密码 data_volume: /data/harbor # 数据存储路径 

2. 执行安装脚本

./install.sh 

输出示例:

[Step 0]: checking installation environment... [Step 1]: loading Harbor images... [Step 2]: preparing environment... [Step 3]: starting Harbor... ✔ ----Harbor has been installed and started successfully.---- 

3. 验证安装

docker-compose ps 

正常应显示所有组件状态为Up

 Name Command State Ports --------------------------------------------------------------------------------------- harbor-core /harbor/entrypoint.sh Up harbor-db /docker-entrypoint.sh Up 5432/tcp harbor-jobservice /harbor/entrypoint.sh Up ... 

Harbor基本配置

1. 访问Web界面

浏览器访问http://<服务器IP>:8080,使用默认账号: - 用户名:admin - 密码:Harbor12345(安装时配置)

2. 创建新项目

  1. 导航至”项目” → “新建项目”
  2. 输入项目名称(如szyd-project
  3. 设置访问级别:
    • 公开:所有用户可拉取
    • 私有:需授权才可访问

3. 配置HTTPS(生产环境必选)

# 生成自签名证书 mkdir -p /data/certs openssl req -newkey rsa:4096 -nodes -sha256 \ -keyout /data/certs/registry.szyd.com.key \ -x509 -days 3650 \ -out /data/certs/registry.szyd.com.crt # 修改harbor.yml https: port: 443 certificate: /data/certs/registry.szyd.com.crt private_key: /data/certs/registry.szyd.com.key # 重新部署 ./prepare docker-compose down -v docker-compose up -d 

Harbor日常使用

1. Docker客户端配置

# 创建配置目录 mkdir -p /etc/docker/certs.d/registry.szyd.com # 复制证书 cp /data/certs/registry.szyd.com.crt /etc/docker/certs.d/registry.szyd.com/ca.crt # 重启Docker systemctl restart docker 

2. 镜像推送示例

# 登录仓库 docker login registry.szyd.com -u admin -p Harbor12345 # 标记镜像 docker tag nginx:latest registry.szyd.com/szyd-project/nginx:v1.0 # 推送镜像 docker push registry.szyd.com/szyd-project/nginx:v1.0 

3. 镜像拉取示例

docker pull registry.szyd.com/szyd-project/nginx:v1.0 

4. 常用管理操作

  • 用户管理:添加部门用户并分配项目权限
  • Webhook配置:设置镜像推送事件通知
  • 垃圾回收:定期清理无效镜像释放空间
     docker-compose stop docker run -it --rm -v /data/registry:/storage \ goharbor/registry-photon:v2.4.1 garbage-collect /etc/registry/config.yml docker-compose start 

常见问题排查

1. 推送镜像时报错”http: server gave HTTP response to HTTPS client”

解决方案

# 修改Docker配置 vim /etc/docker/daemon.json { "insecure-registries": ["registry.szyd.com"] } systemctl restart docker 

2. Web界面无法访问

检查步骤:

# 确认端口监听 netstat -tulnp | grep 8080 # 查看容器日志 docker-compose logs -f nginx 

3. 磁盘空间不足

清理旧镜像:

# 进入Harbor安装目录 cd /opt/harbor # 执行清理脚本 docker run -it --rm -v /data/registry:/storage \ goharbor/registry-photon:v2.4.1 garbage-collect /etc/registry/config.yml 

总结

Harbor作为企业级镜像仓库解决方案,主要优势包括:

  1. 完善的安全管控:RBAC、漏洞扫描、内容签名
  2. 高效的镜像管理:分层存储、垃圾回收机制
  3. 高可用架构:支持主从复制、多实例部署

建议生产环境: - 使用HTTPS确保传输安全 - 定期备份数据库(/data/database)和镜像存储(/data/registry) - 启用日志审计功能满足合规要求

通过本文介绍的安装配置方法,可以快速搭建适合中小团队使用的Docker镜像仓库环境。 “`

注:本文实际约4500字,可根据需要调整各部分详细程度。建议在实际部署时: 1. 根据网络环境选择在线/离线安装包 2. 生产环境务必配置HTTPS和定期备份 3. 大规模部署考虑使用外部数据库和高可用方案

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI