CentOS7下部署Docker私有仓库Harbor

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: CentOS7下部署Docker私有仓库Harbor

CentOS7下部署Docker私有仓库Harbor


640.png

Harbor 是由 VMware 公司中国团队为企业用户设计的 Registry server 开源项目,包括了权限管理(RBAC)、LDAP、审计、管理界面、自我注册、HA 等企业必需的功能,同时针对中国用户的特点,设计镜像复制和中文支持等功能。


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


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

下面介绍CentOS7下部署Docker私有仓库Harbor


步骤1:安装docker


# step 1: 安装必要的一些系统工具
yum install -y yum-utils device-mapper-persistent-data lvm2
# Step 2: 添加软件源信息
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# Step 3
sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo
# Step 4: 更新并安装Docker-CE
yum makecache fast
yum -y install docker-ce
# Step 4: 开启Docker服务
systemctl start docker
systemctl enable docker
docker version


640.jpg

640.jpg

640.jpg

步骤2:安装docker-compose


yum install docker-compose
docker-compose -v

640.jpg

640.jpg

步骤3:上传harbor v2.2.0离线安装包


harbor-offline-installer-v2.2.0.tgz

640.jpg


步骤4:openssl生成https证书


使用openssl自签名生成证书


mkdir /etc/certs/
cd /etc/certs/
1)、生成server.key 
 openssl genrsa -aes256 -out server.key 2048 
2)、生成无密码的server.key
openssl rsa -in server.key -out server.key
3)、创建服务器证书的申请文件 server.csr
openssl req -new -key server.key -out server.csr
依次输入国家、省份、城市、公司、部门及邮箱
注意这里的域名输入时要特别注意
4)、生成crt证书文件server.crt
openssl x509 -in server.csr -out server.crt -req -signkey server.key -days 3650
或者(openssl x509 -req -days 3650 -in server.csr -CA ca.crt -CAkey server.key -CAcreateserial

640.jpg

步骤5:修改harbor.yml并安装harbor


tar -zxf harbor-offline-installer-v2.2.0.tgz
cd harbor
cp harbor.yml.tmpl harbor.yml
vim harbor.yml
修改harbor.yml
hostname: harbor.walkingcloud.cn
  certificate: /etc/certs/server.crt
  private_key: /etc/certs/server.key
sh install.sh


640.jpg640.jpg

640.jpg

640.jpg


若有防火墙,则需要放通防火墙

firewall-cmd --zone=public --add-port=443/tcp --permanent
firewall-cmd --reload


步骤6:登录harbor并创建项目


640.jpg

640.jpg

640.jpg

步骤7:docker客户端测试harbor仓库


1、安装docker


步骤就不太详细描述,参考步骤1


2、修改配置/etc/docker/daemon.json


添加阿里云docker镜像加速以及Docker私有仓库Registry信任地址


vim /etc/docker/daemon.json 
cat /etc/docker/daemon.json
{
     "registry-mirrors": ["https://1jk30jsb.mirror.aliyuncs.com"],
     "insecure-registries": ["harbor.walkingcloud.cn"]
}
systemctl daemon-reload
systemctl restart docker


640.jpg



步骤8、测试push到harbor私有仓库


1)从公有仓库拉取一个centos:latest镜像用于测试


docker pull centos:latest
docker images


2)打上Tag


docker tag centos:latest harbor.walkingcloud.cn/yuanfan/centos8:v1
docker images


640.jpg

3)配置主机名解析


echo "192.168.198.200 harbor.walkingcloud.cn" >> /etc/hosts
cat /etc/hosts


4)登录仓库


docker login harbor.walkingcloud.cn


640.jpg


5)push到harbor私有仓库


docker push harbor.walkingcloud.cn/yuanfan/centos8:v1


6)测试删除本地镜像后从harbor私有仓库拉取并测试


docker pull harbor.walkingcloud.cn/yuanfan/centos8:v1


640.jpg640.jpg

640.jpg

相关实践学习
通过容器镜像仓库与容器服务快速部署spring-hello应用
本教程主要讲述如何将本地Java代码程序上传并在云端以容器化的构建、传输和运行。
Kubernetes极速入门
Kubernetes(K8S)是Google在2014年发布的一个开源项目,用于自动化容器化应用程序的部署、扩展和管理。Kubernetes通常结合docker容器工作,并且整合多个运行着docker容器的主机集群。 本课程从Kubernetes的简介、功能、架构,集群的概念、工具及部署等各个方面进行了详细的讲解及展示,通过对本课程的学习,可以对Kubernetes有一个较为全面的认识,并初步掌握Kubernetes相关的安装部署及使用技巧。本课程由黑马程序员提供。   相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
7天前
|
安全 数据安全/隐私保护 Docker
docker私有仓库harbor安装
通过以上步骤,您可以成功在企业内部安装和配置Harbor私有仓库,方便地管理和分发Docker镜像。Harbor不仅提供了基础的镜像管理功能,还增强了安全性、身份管理和审计功能,使其成为企业级容器镜像管理的理想选择。
54 22
|
15天前
|
Ubuntu NoSQL Linux
《docker基础篇:3.Docker常用命令》包括帮助启动类命令、镜像命令、有镜像才能创建容器,这是根本前提(下载一个CentOS或者ubuntu镜像演示)、容器命令、小总结
《docker基础篇:3.Docker常用命令》包括帮助启动类命令、镜像命令、有镜像才能创建容器,这是根本前提(下载一个CentOS或者ubuntu镜像演示)、容器命令、小总结
93 6
《docker基础篇:3.Docker常用命令》包括帮助启动类命令、镜像命令、有镜像才能创建容器,这是根本前提(下载一个CentOS或者ubuntu镜像演示)、容器命令、小总结
|
1月前
|
Unix Linux Docker
CentOS停更沉寂,RHEL巨变限制源代:Docker容器化技术的兴起助力操作系统新格局
操作系统是计算机系统的核心软件,管理和控制硬件与软件资源,为用户和应用程序提供高效、安全的运行环境。Linux作为开源、跨平台的操作系统,具有高度可定制性、稳定性和安全性,广泛应用于服务器、云计算、物联网等领域。其发展得益于庞大的社区支持,多种发行版如Ubuntu、Debian、Fedora等满足不同需求。
63 4
|
2月前
|
Java 应用服务中间件 Linux
【Docker容器化技术】docker安装与部署、常用命令、容器数据卷、应用部署实战、Dockerfile、服务编排docker-compose、私有仓库
本文主要讲解了Docker的安装与部署、常用命令、容器数据卷、应用部署实战、Dockerfile、服务编排docker-compose、私有仓库以及Docker容器虚拟化与传统虚拟机比较。
1805 12
【Docker容器化技术】docker安装与部署、常用命令、容器数据卷、应用部署实战、Dockerfile、服务编排docker-compose、私有仓库
|
2月前
|
Oracle 关系型数据库 MySQL
Centos7下图形化部署单点KFS同步工具并将Oracle增量同步到KES
Centos7下图形化部署单点KFS同步工具并将Oracle增量同步到KES
Centos7下图形化部署单点KFS同步工具并将Oracle增量同步到KES
|
2月前
|
存储 Linux Docker
centos系统清理docker日志文件
通过以上方法,可以有效清理和管理CentOS系统中的Docker日志文件,防止日志文件占用过多磁盘空间。选择合适的方法取决于具体的应用场景和需求,可以结合手动清理、logrotate和调整日志驱动等多种方式,确保系统的高效运行。
243 2
|
2月前
|
安全 Linux Shell
docker运行centos提示Operation not permitted
通过上述步骤,可以有效排查和解决在Docker中运行CentOS容器时遇到的"Operation not permitted"错误。这些措施涵盖了从权限配置、安全策略到容器运行参数的各个方面,确保在不同环境和使用场景下都能顺利运行容器。如果你需要进一步优化和管理你的Docker环境
185 3
|
3月前
|
Java jenkins 持续交付
Centos7下docker的jenkins下载并配置jdk与maven
通过上述步骤,您将成功在CentOS 7上的Docker容器中部署了Jenkins,并配置好了JDK与Maven,为持续集成和自动化构建打下了坚实基础。
169 1
|
8天前
|
存储 分布式计算 Hadoop
Centos7.9安装kerberos
Centos7.9安装kerberos
57 25
|
3天前
|
存储 Shell 网络安全
Centos7.9安装openldap
Centos7.9安装openldap
39 16

热门文章

最新文章