博客
关于我
Docker(七)Harbor私有仓库搭建
阅读量:375 次
发布时间:2019-03-05

本文共 4834 字,大约阅读时间需要 16 分钟。

1、介绍

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

docker-compse -->编排工具,对启动服务优先级排序

# Proxy :   由 Nginx 服务器构成的反向代理。# Registry :由 Docker 官方的开源 registry 镜像构成的容器实例。# UI :      即架构中的 core services , 构成此容器的代码是 Harbor 项目的主体。# MySQL :   由官方 MySQL 镜像构成的数据库容器。# Log :     运行着 rsyslogd 的容器,通过 log-driver 的形式收集其他容器的日志#           说明:定义这几个服务的优先级!

 docker-compose安装

curl -L "https://github.com/docker/compose/releases/download/1.24.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose# > 或O均可导入!chmod +x /usr/local/bin/docker-compose # 执行权限,验证!

版本查看

由于RHEL7默认python版本就是python2.7符合要求

文件

tar zxf harbor-offline-installer-v1.8.0.tgz # 下载的是离线包-rw-r--r-- 1 root root 556153903 May 16 19:55 harbor.v1.8.0.tar.gz-rw-r--r-- 1 root root      4839 May 16 19:54 harbor.yml  # yml格式的编排文件!-rwxr-xr-x 1 root root      5088 May 16 19:54 install.sh  # 启动脚本-rw-r--r-- 1 root root     11347 May 16 19:54 LICENSE-rwxr-xr-x 1 root root      1654 May 16 19:54 prepare

说明:部分内容参考之前的私有仓库的搭建

下载安装包,网络实在是太卡了

两个不同的版本:online -->软件包小(需要联网);offline -->(比较大,包含镜像)

思路:这里跟着官方文档走!

注意:新版配置文件已经改成harbor.yml

(1)核心安装步骤

生成https证书,手动自签发的证书

############(1)创建CA密钥对############ # (1) openssl req -x509 -new -nodes -sha512 -days 3650   -subj "/C=CN/ST=wzj/L=wzj/O=example/OU=Personal/CN=wzj.com"   -key ca.key   -out ca.crt # (2) openssl genrsa -out reg.wzj.com.key 4096 ###########(2)创建web服务器端秘钥对##### # (3)  openssl req -sha512 -new   -subj "/C=CN/ST=wzj/L=wzj/O=example/OU=Personal/CN=reg.wzj.com"   -key reg.wzj.com.key   -out reg.wzj.com.csr # (4)  cat > v3.ext <<-EOFauthorityKeyIdentifier=keyid,issuerbasicConstraints=CA:FALSEkeyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEnciphermentextendedKeyUsage = serverAuthsubjectAltName = @alt_names[alt_names]DNS.1=reg.wzj.comDNS.2=wzjDNS.3=harborEOF #(5)  vim harbor.yml  --->端口(https-->443,注意不要多个空格),主机名(hostname) #     vim /etc/hosts  --->做好解析 -->IP        reg.wzj.com -->基于https的harbor需要使用域名 #(6) openssl x509 -req -sha512 -days 3650   -extfile v3.ext   -CA ca.crt -CAkey ca.key -CAcreateserial   -in reg.wzj.com.csr   -out reg.wzj.com.crt# Docker守将.crt文件解释为CA证书,将.cert文件解释为客户端证书。所以需要将服务器转换yourdomain.com.crt为yourdomain.com.cert###########(3)放置证书################# #(7)  mkdir /root/cert  ## 创建证书的放置目录-->在配置文件中体现 #(8)  cp reg.wzj.com.crt reg.wzj.com.key /root/cert/ #(9)  vim harbor.yml -->指定这两个文件(证书和密钥-->校验)的位置 以及 hostname(reg.wzj.com) #(10) docker load -i harbor.v1.8.0.tar.gz -->加载镜像(<  -i均可) #(11) ./prepare #(12) ./install.sh # 注意在其位置执行 -->默认执行左边安装后会自动启动服务  docker ps  # 查看后太状态!

几个容器通过Docker link的形式连接在一起,这