微服架构基础设施环境平台搭建 -(二)Docker私有仓库Harbor服务搭建

通过采用微服相关架构构建一套以Kubernetes+Docker为自动化运维基础平台,以微服务为服务中心,在此基础之上构建业务中台,并通过Jekins自动构建、编译、测试、发布的自动部署,形成一套完整的自动化运维、发布的快速DevOps平台。


本文主要针对 ks-harbor [192.168.2.146] 服务器进行部署Harbor服务

文章的操作过程大部分参照【Harbor高可用集群设计及部署(基于离线安装方式)】

微服架构基础设施环境平台搭建 系列文章


微服架构基础设施环境平台搭建 -(一)基础环境准备
微服架构基础设施环境平台搭建 -(二)Docker私有仓库Harbor服务搭建
微服架构基础设施环境平台搭建 -(三)Docker+Kubernetes集群搭建
微服架构基础设施环境平台搭建 -(四)在Kubernetes集群基础上搭建Kubesphere平台
微服架构基础设施环境平台搭建 -(五)Docker常用命令

目录

  • 微服架构基础设施环境平台搭建 -(二)Docker私有仓库Harbor服务搭建
  • 一、采用的技术架构
  • 二、微服架构基础设施平台网络规划
  • 三、部署架构
  • 四、安装Docker并配置Docker
    • 1、安装Docker
    • 2、安装docker-compose
    • 3、配置内核参数
  • 五、安装Harbor
    • 1、下载安装包并解压
    • 2、修改配置文件
    • 3、执行安装
    • 4、登录Harbor后台
  • 六、Docker接入Harbor
    • 1、修改Docker配置文件,接入Harbor
    • 2、将Docker镜像上传Harbor
    • 3、将从Harbor私有仓库中下载Docker镜像

一、采用的技术架构

序号 技术框架 说明
1 Kubernetes
2 Kubesphere Kubernetes编排器,管理平台
3 Dockers
4 Harbor Docker私有仓库
5 GitLab 源码库
6 Jekins 自动编译、测试、发布平台
7 Spring Cloud Alibaba Spring Cloud Alibaba微服体系架构
8 Nacos Api网关、服务注册发现配置管理中心
9 Sentinel 限流溶断安全中心
10 Seata 分布式事务管理框架
11 Redis 分布式缓存服务
12 ElasticSearch/Solr 数据检索服务
13 Mysql 结构化数据存储
14 Grafana 监控平台
15 Nginx 服务代理、Web服务

二、微服架构基础设施平台网络规划

序号 IP HostName 操作系统 K8s角色 说明
1 192.168.1.141 ks-m1 CentOS7_x64 控制节点 Kubernetes Master
2 192.168.1.142 ks-m2 CentOS7_x64 控制节点 Kubernetes Master高可用节点,如果不需要高可用,可不部署此服务器
3 192.168.1.143 ks-m3 CentOS7_x64 控制节点 Kubernetes Master高可用节点,如果不需要高可用,可不部署此服务器
4 192.168.1.144 ks-n1 CentOS7_x64 工作节点 Kubernetes Worker
5 192.168.1.145 ks-n2 CentOS7_x64 工作节点 Kubernetes Worker
6 192.168.2.146 ks-harbor CentOS7_x64 工作节点 Harbor服务+NFS文件服务

三、部署架构

四、安装Docker并配置Docker

1、安装Docker

在ks-harbor服务器上执行下面命令:

wget -O /etc/yum.repos.d/docker-ce.repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repoyum install -y docker-ce
systemctl enable  --now docker
systemctl status dockercat <<EOF > /etc/docker/daemon.json
{"registry-mirrors": ["https://xcg41ct3.mirror.aliyuncs.com"],"exec-opts": ["native.cgroupdriver=systemd"],  "registry-mirrors": ["https://3hjcmqfe.mirror.aliyuncs.com"], "log-driver": "json-file","log-opts": {"max-size": "500m","max-file": "2" }
}
EOF systemctl daemon-reload
systemctl restart docker

说明:


exec-opts": [“native.cgroupdriver=systemd”], #驱动器
registry-mirrors: 镜像加速地址,可多个
max-file: log最多保留数量
live-restore: 重启docker不重启容器,多用于k8s上

2、安装docker-compose

在ks-harbor服务器上执行下面命令:

wget https://github.com/docker/compose/releases/download/v2.2.3/docker-compose-linux-x86_64
mv docker-compose-linux-x86_64 /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
docker-compose version

3、配置内核参数

在ks-harbor服务器上执行下面命令:

$ modprobe br_netfilter
$ cat >> /etc/sysctl.conf << EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1      #路由转发
EOF
$ sysctl -p

五、安装Harbor

说明:安装Harbor需要先安装docker-compose

1、下载安装包并解压

#创建安装目录
mkdir /app
wget https://github.com/goharbor/harbor/releases/download/v2.3.5/harbor-offline-installer-v2.3.5.tgztar -xzvf harbor-offline-installer-v2.3.5.tgz /app/

2、修改配置文件

修改harbor.yml中的hostname配置为当前服务器的ip,以及注释掉https的相关配置,如下图所示

cd /app/harbor
vim harbor.yml

3、执行安装

#执行安装
sh install.sh

4、登录Harbor后台

默认用户名:admin,默认密码: Harbor12345


六、Docker接入Harbor

1、修改Docker配置文件,接入Harbor

1)、编辑Docker配置文件

vim /etc/docker/daemon.json

2)、添加配置"insecure-registries" : [“192.168.2.146”]

"insecure-registries" : ["192.168.2.146"]

3)、重启Docker

systemctl restart docker

3)、重启Harbor

cd /app/harbor
docker-compose up -d

2、将Docker镜像上传Harbor

# 登录
docker login 192.168.2.146# 上传至Harbor公开仓库
docker tag mysql:5.7 192.168.2.146/pub/mysql:5.7
docker push 192.168.2.146/pub/mysql:5.7# 退出Harbor
docker loginout 192.168.1.146


3、将从Harbor私有仓库中下载Docker镜像

# 显示本地所有的镜像
docker images# 从本地删除镜像名称为192.168.2.146/pub/mysql:5.7的镜像
docker rmi 192.168.2.146/pub/mysql:5.7
# 从Harbor公开仓库下载mysql:5.7
docker pull 192.168.2.146/pub/mysql:5.7

微服架构基础设施环境平台搭建 -(二)Docker私有仓库Harbor服务搭建相关推荐

  1. 微服架构基础设施环境平台搭建 -(五)Docker常用命令

    微服架构基础设施环境平台搭建 -(五)Docker常用命令 本文主要列出了Docker常用的命令 微服架构基础设施环境平台搭建 系列文章 微服架构基础设施环境平台搭建 -(一)基础环境准备 微服架构基 ...

  2. 微服架构基础设施环境平台搭建 -(一)基础环境准备

    微服架构基础设施环境平台搭建 -(一)基础环境准备 通过采用微服相关架构构建一套以Kubernetes+Docker为自动化运维基础平台,以微服务为服务中心,在此基础之上构建业务中台,并通过Jekin ...

  3. 微服架构基础设施环境平台搭建 -(四)在Kubernetes集群基础上搭建Kubesphere平台

    微服架构基础设施环境平台搭建 -(四)在Kubernetes集群基础上搭建Kubesphere平台 通过采用微服相关架构构建一套以Kubernetes+Docker为自动化运维基础平台,以微服务为服务 ...

  4. Docker镜像仓库Harbor之搭建及配置

    Docker镜像仓库Harbor之搭建及配置 1.Harbor 介绍 Docker容器应用的开发和运行离不开可靠的镜像管理,虽然Docker官方也提供了公共的镜像仓库,但是从安全和效率等方面考虑,部署 ...

  5. centos利用nexus搭建局域网docker私有仓库

    centos利用nexus搭建局域网docker私有仓库 1.官网下载nexus oss版本 https://sonatype-download.global.ssl.fastly.net/repos ...

  6. 微服务探索之路03篇-docker私有仓库Harbor搭建+Kubernetes(k8s)部署私有仓库的镜像

    目录: 微服务探索之路01篇.net6.0项目本地win10系统docker到服务器liunx系统docker的贯通 微服务探索之路02篇liunx ubuntu服务器部署k8s(kubernetes ...

  7. Docker 私有仓库 Harbor registry 安全认证搭建 [Https]

    Harbor源码地址:https://github.com/vmware/harbor Harbort特性: 基于角色控制 用户和仓库都是基于项目进行组织的, 而用户基于项目可以拥有不同的权限. 基于 ...

  8. docker私有仓库harbor使用域名登录并push镜像

    1 修改harbor的配置文件 cd /harbor vim harbor.yml 把hostname改成机器的域名 2 修改本机的hosts vim /etc/hosts 加上本机的hostname ...

  9. docker私有仓库harbor配置helm chart仓库(安装helm chart插件)

    harbor配置helm chart仓库 1.harbor 安装的时候 默认没有helm charts的仓库,如果已经安装过重新执行安装即可,不需要prepare docker-compose sto ...

最新文章

  1. 如何在MySQL中声明变量?
  2. 猫猫学iOS之小知识iOS启动动画_Launch Screen的运用
  3. jquery点击事件遇到的小bug
  4. spring boot jar包替换报错之Unable to open nested entry 'BOOT-INF/lib/cache-api-0.4.jar'.
  5. windows下如何查看磁盘IO性能
  6. java怎么把毫秒转换成天数_关于java:如何将毫秒转换为“ hh:mm:ss”格式?
  7. Linux tmp目录自动清理 及解决方法
  8. web安全day38:使用Vulhub一键搭建测试靶场
  9. 工作中那些有用的工具
  10. JAVA:项目文档及编写目的汇总
  11. 如何成为技术大牛 ?
  12. C++基础笔记——汇总版(上)
  13. java http请求图片_Java上传带图片的Http请求详解
  14. 卸载有管理密码的瑞星企业版客户端
  15. PB 切换中英文输入法
  16. web前端期末大作业 魅力广西我的家乡介绍网页制作(HTML+CSS)
  17. 【以太网硬件十七】什么!?网线边传数据还能边供电?
  18. @Valid使用详解
  19. java的数据类型:8大基本数据类型
  20. 【华为OD机试真题 JAVA】找城市

热门文章

  1. 如何在阿里云(centos7)上面搭建fastdfs服务器(搭建篇)--保姆级超级详细
  2. 电路中的电流采样IC选型
  3. Laravel Provider用法
  4. 关于system(pause)
  5. word、wps学习笔记
  6. vue2[初级] vuex状态集中式管理
  7. Spring容器框架
  8. 什么是物联网NB-IoT技术?
  9. 布局管理器——表格布局
  10. php发邮件错误,从PHP发送邮件 – 是我的错误还是邮件服务器?