k8s-harbor仓库搭建

Harbor仓库部署的官方要求的最小系统配置
-> 2个cpu
-> 4g内存
-> 40g硬盘,因为是存储镜像的所以推荐硬盘大点。

Harbor以容器的形式进行部署, 因此可以被部署到任何支持Docker的Linux发行版, 要使用Harbor,需要安装docker和docker-compose编排工具,

并且具备如下环境:

Python2.7+

Docker Engine 1.10+

Docker Compose 1.6.0+

一.安装docker

此方法为在yum在线安装docker,二进制安装参考其他文章

复制代码
#更新yum包
yum update
   
#卸载旧版本 Docker
yum remove docker docker-common docker-selinux docker-engine
   
#安装软件包
yum install -y yum-utils device-mapper-persistent-data lvm2
   
添加 Docker yum源
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo


Loaded plugins: fastestmirror adding repo from: https://download.docker.com/linux/centos/docker-ce.repo grabbing file https://download.docker.com/linux/centos/docker-ce.repo to /etc/yum.repos.d/docker-ce.repo repo saved to /etc/yum.repos.d/docker-ce.repo #安装 Docker (直接yum按照docker-ce即可) #随着Docker的不断流行与发展,docker公司(或称为组织)也开启了商业化之路,Docker 从 17.03版本之后分为 CE(Community Edition) 和 EE(Enterprise Edition): #1) Docker EE由公司支持,可在经过认证的操作系统和云提供商中使用,并可运行来自Docker Store的、经过认证的容器和插件。 #2) Docker CE是免费的Docker产品的新名称,Docker CE包含了完整的Docker平台,非常适合开发人员和运维团队构建容器APP。 # 事实上,Docker CE 17.03,可理解为Docker 1.13.1的Bug修复版本。因此,从Docker 1.13升级到Docker CE 17.03风险相对是较小的。 yum -y install docker-ce #启动 Docker systemctl start docker systemctl enable docker systemctl status docker ● docker.service - Docker Application Container Engine Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled) Active: active (running) since Sun 2019-05-26 22:15:34 CST; 27min ago Docs: https://docs.docker.com Main PID: 15260 (dockerd) CGroup: /system.slice/docker.service └─15260 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock May 26 22:15:33 harbor-node dockerd[15260]: time="2019-05-26T22:15:33.570826805+08:00" level=info msg="pickfirstBalancer: HandleSubConnStateChange: 0xc420175490, READY" module=grpc May 26 22:15:33 harbor-node dockerd[15260]: time="2019-05-26T22:15:33.570899114+08:00" level=info msg="pickfirstBalancer: HandleSubConnStateChange: 0xc42006de20, READY" module=grpc May 26 22:15:33 harbor-node dockerd[15260]: time="2019-05-26T22:15:33.665440742+08:00" level=info msg="Graph migration to content-addressability took 0.00 seconds" May 26 22:15:33 harbor-node dockerd[15260]: time="2019-05-26T22:15:33.666111994+08:00" level=info msg="Loading containers: start." May 26 22:15:33 harbor-node dockerd[15260]: time="2019-05-26T22:15:33.913110547+08:00" level=info msg="Default bridge (docker0) is assigned with an IP address 172.17.0.0/16... IP address" May 26 22:15:34 harbor-node dockerd[15260]: time="2019-05-26T22:15:34.088687650+08:00" level=info msg="Loading containers: done." May 26 22:15:34 harbor-node dockerd[15260]: time="2019-05-26T22:15:34.128885651+08:00" level=info msg="Docker daemon" commit=481bc77 graphdriver(s)=overlay2 version=18.09.6 May 26 22:15:34 harbor-node dockerd[15260]: time="2019-05-26T22:15:34.129073367+08:00" level=info msg="Daemon has completed initialization" May 26 22:15:34 harbor-node dockerd[15260]: time="2019-05-26T22:15:34.223886566+08:00" level=info msg="API listen on /var/run/docker.sock" May 26 22:15:34 harbor-node systemd[1]: Started Docker Application Container Engine. Hint: Some lines were ellipsized, use -l to show in full. #查看 Docker 版本号 [root@harbor-node ~]# docker --version Docker version 18.09.6, build 481bc77156 [root@harbor-node ~]# docker version Client: Version: 18.09.6 API version: 1.39 Go version: go1.10.8 Git commit: 481bc77156 Built: Sat May 4 02:34:58 2019 OS/Arch: linux/amd64 Experimental: false Server: Docker Engine - Community Engine: Version: 18.09.6 API version: 1.39 (minimum version 1.12) Go version: go1.10.8 Git commit: 481bc77 Built: Sat May 4 02:02:43 2019 OS/Arch: linux/amd64 Experimental: false
复制代码

二、安装Docker Compose

参考其他文章

三、安装harbor

3.1 下载harbor安装包

harbor下载地址:Releases · goharbor/harbor (github.com)

 分离线版本和在线版本

3.2 解压harbor压缩包
[root@harbor-node ~]# ll harbor-online-installer-v2.7.3.tgz-rw-r--r-- 1 root root 7954 May 26 22:45 harbor-online-installer-v2.7.3.tgz
 
[root@harbor-node ~]# tar -zvxf harbor-online-installer-v2.7.3.tgz
[root@harbor-node ~]# cd harbor
[root@harbor-node harbor]# ls
common.sh   harbor.yml.tmpl  install.sh  LICENSE  prepare
 
#目录下会有harbor.yml.tmpl(或者harbor.*其他后缀看版本),就是Harbor的配置文件了。
3.3 修改harbor配置文件
复制代码
[root@harbor-node harbor]# cp harbor.yml.tmpl harbor.yml
[root@harbor-node harbor]# vim harbor.yml
[root@harbor-node harbor]# cat harbor.yml |grep -v "#"|grep -v "^$"
hostname: 172.16.60.213
http:
  port: 80
harbor_admin_password: kevin@BO123             
database:
  password: root123
data_volume: /data
clair:
  updaters_interval: 12
  http_proxy:
  https_proxy:
  no_proxy: 127.0.0.1,localhost,core,registry
jobservice:
  max_job_workers: 10
chart:
  absolute_url: disabled
log:
  level: info
  rotate_count: 50
  rotate_size: 200M
  location: /var/log/harbor
_version: 1.8.0
 
# 配置基本只需要修改这几个地方
# hostname: 修改成Harbao部署机自身的ip地址
# http-port不使用默认80端口。有可能会出现浏览器访问成功但docker login失败的情况。
# 删除https配置 # db_password: 这是postgresql数据库root密码,该数据库是harbor内置库,设置好密码后后面脚本自动安装 # harbor_admin_password: harbor初始管理员密码为Harbor12345, 这里最好修改成自己的密码,默认密码至少8位,最好是大小写、数字和特殊字符。
复制代码
3.4 安装启动harbor
Harbor目录下有一个install.sh, 执行它来进行安装
[root@harbor-node harbor]# ./install.sh
...........
...........
✔ ----Harbor has been installed and started successfully.----

#安装完成后,harbor容器已自启动。解压目录harbor下面多了一个docker-compose.yml文件,里面包含了harbor依赖的镜像和对应容器创建的信息
#查看harbor对应容器信息(还可以执行"docker images"和"docker ps"查看harbor的镜像和容器情况)
[root@harbor-node harbor]# docker-compose ps       #"注意docker-compose"命令只能在当前harbor目录下使用(因为该目录下有harbor配置文件)

 3.5 登录harbor

用户名为admin,密码为配置文件中定义的。

 

posted @   阿锋888  阅读(296)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· AI与.NET技术实操系列(六):基于图像分类模型对图像进行分类
点击右上角即可分享
微信分享提示