栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

docker Harbor2.3.4 https 搭建镜像仓库

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

docker Harbor2.3.4 https 搭建镜像仓库


文章目录
          • 一、环境准备
            • 1. 环境要求
            • 2. 节点总览
            • 3. 安装docker-compose
          • 二、安装harbor
            • 2.1. 下载
            • 2.2. 解压
            • 2.3. 认证
            • 2.4. 调整配置
            • 2.5. 安装 harbor
            • 2.6. 配置host
            • 2.7. 效果验证
          • 三、客户端
            • 3.1. 证书保存
            • 3.2. 新建配置
            • 3.3. 登录harbor
          • 四、基本操作
            • 4.1. 下线
            • 4.2. 监控状态
            • 4.3. 重新部署上线

一、环境准备 1. 环境要求

环境docker版本17.06.0+

软件版本
系统版本centOS 7.6.1810
docker20.10.11
docker-compose1.23.2
jdk1.8.0_301
2. 节点总览
ip端口用途
192.168.92.12980harbor节点1
3. 安装docker-compose

服务器有网络安装方式:
docker-compose是docker用来管理容器的一个工具,harbor的运行基于docker-compose。

  • 安装docker-compose:
curl -L https://github.com/docker/compose/releases/download/1.23.2/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
  • 如果github安装太慢,可使用下面的高速地址安装:
curl -L https://get.daocloud.io/docker/compose/releases/download/1.23.2/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
  • 服务器无网络时安装方式:
    先下载好(下载地址:https://github.com/docker/compose/releases/)后,上传至服务器centos的/usr/local/bin目录下

  • 赋予权限
    不管使用哪种方式下载,上传到指定目录后都需要对文件进行赋权:

chmod +x /usr/local/bin/docker-compose
二、安装harbor 2.1. 下载

下载安装包:
 官网地址:https://github.com/vmware/harbor/releases/
 
下载速度慢可用这个地址:http://harbor.orientsoft.cn/
 

cd /app
wget https://github.91chi.fun//https://github.com//goharbor/harbor/releases/download/v2.3.4/harbor-offline-installer-v2.3.4.tgz
2.2. 解压
cd /app
tar -zxvf harbor-offline-installer-v2.3.4.tgz
2.3. 认证

使用OpenSSL配置harbor所需认证

harbor推送拉去镜像默认是使用https。所以需要配置https认证。https认证一般有两种方式,一种是自签,另一种是向官方申请https证书。

OpenSSL提供的CA(证书管理中心)可实现证书签发的整个流程。下面将记录设置https自签步骤。

(1)生成密钥和自签证书

cd /app
openssl req -newkey rsa:4096 -nodes -sha256 -keyout ca.key -x509 -days 365 -out ca.crt

其中x509代表生成自签名证书,newkey表示自动生成秘钥。执行命令后如下:

其中的其他信息随意,Common Name信息填写的就是harbor管理页面的域名

(2)证书签名请求

openssl req -newkey rsa:4096 -nodes -sha256 -keyout harbor.dockerregistry.com.key -out harbor.dockerregistry.com.csr

(3) 生成服务器证书

openssl x509 -req -days 365 -in harbor.dockerregistry.com.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out harbor.dockerregistry.com.crt

填写方式,和(1)生成密钥和自签证书操作一样,其中的其他信息随意,Common Name信息填写的就是harbor管理页面的域名

  • 执行后效果
    执行完后在本目录分别生成以ca和harbor.dockerregistry.com为名的.crt .key 和.srl文件。

  • 证书存放
    将服务器证书即harbor.dockerregistry.com.crt和harbor.dockerregistry.com.key拷贝保存在/etc/harborcert目录下:

mkdir /etc/harborcert/
cp harbor.dockerregistry.com.crt harbor.dockerregistry.com.key /etc/harborcert/
2.4. 调整配置

特殊说明:如果搭建的单机环境的话,配置服务器ip即可,如果集群环境,配置各自的ip
修改harbor配置文件
从模板harbor.yml.tmpl拷贝一份文件命名harbor.yml

cp /app/harbor/harbor.yml.tmpl /app/harbor/harbor.yml
vim /app/harbor/harbor.yml

修改配置harbor.yml文件如下:

hostname: 192.168.92.129
certificate: /etc/harborcert/harbor.dockerregistry.com.crt
private_key: /etc/harborcert/harbor.dockerregistry.com.key

单机环境这里跳过。
集群环境的话,配置要在配置一份,证书都用自己的,不能复制给另一台使用

hostname: 192.168.92.130
certificate: /etc/harborcert/harbor.dockerregistry.com.crt
private_key: /etc/harborcert/harbor.dockerregistry.com.key

2.5. 安装 harbor

运行install.sh文件安装harbor

cd /app/harbor/
ll
./install.sh




2.6. 配置host

单机环境配置一个即可

  • 192.168.92.129 服务器
vim /etc/hosts
192.168.92.129 harbor.dockerregistry.com
  • 192.168.92.130 服务器
vim /etc/hosts
192.168.92.130 harbor.dockerregistry.com
2.7. 效果验证

浏览器输入harbor域名,进入登录页面:

https://harbor.dockerregistry.com/
域名访问不好使,请使用下面ip
https://192.168.92.130/
默认用户名:

admin

密码:

Harbor12345
  • 登录页面

三、客户端 3.1. 证书保存

客户端证书保存。在/etc/docker/certs.d/新建以harbor域名为命的文件夹。如下:

mkdir -p /etc/docker/certs.d/harbor.dockerregistry.com

拷贝客户端证书至该目录下:

cp /app/ca.crt /etc/docker/certs.d/harbor.dockerregistry.com
3.2. 新建配置

在/etc/docker目录下编辑daemon.json文件,没有的话新建该文件:

vim /etc/docker/daemon.json

内容如下:

{
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m"
},"insecure-registries":[
    "192.168.92.129"
  ]
}

单机环境这里跳过。
集群环境的话,配置要在配置一份,ip都用自己的,不能复制给另一台使用

{
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m"
},"insecure-registries":[
    "192.168.92.130"
  ]
}

其中"insecure-registries"字段对应的值就是harbor的ip。

3.3. 登录harbor

使用docker登录harbor

特殊:说明使用各自的ip在各自的服务器上进行登录

  • 192.168.92.129服务器执行
docker login 192.168.92.129

单机跳过,集群按此方式验证登录

  • 192.168.92.130服务器执行
docker login 192.168.92.130

输入用户名和密码。如下图:

[root@localhost harbor]# docker login 192.168.92.130
Username: admin
Password: 
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store

Login Succeeded
[root@localhost harbor]#

四、基本操作 4.1. 下线
cd /app/harbor
docker-compose down -v

or

docker-compose stop

4.2. 监控状态

查看harbor的运行状态

cd /app/harbor
docker-compose ps

4.3. 重新部署上线
docker-compose up -d

接下一篇:Docker Harbor2.3.4 集群 双主复制高可用镜像仓库

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/603831.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号