搭建harbor仓库

概述

反正就是想搭建一个docker仓库,方便存放自己的镜像这样子

harbor介绍

harbor是一个开源的docker容器仓库,由下面几个组件组成

  • proxy:用来接收docker客户端和浏览器端的请求,并且把请求转发给后端的服务
  • registry:就是仓库,用来存储镜像的,
  • 核心服务:提供web ui,数据库,token认证,webhook等功能
  • 日志服务
  • database:用来存储核心服务的一些数据

总之就上上面这个图这样子的架构

因为是vmware出品的,所以支持下面几种部署方式

  • 在线安装
  • 离线安装
  • ova安装,这个直接在vcenter上导入就可以了

官方最小配置

  • 2个cpu
  • 4g内存
  • 40g硬盘,因为是存储镜像的所以推荐硬盘大点

安装前配置

为了方便我是直接离线安装的,使用的系统是centos7

下载

wget https://storage.googleapis.com/harbor-releases/release-1.5.0/harbor-offline-installer-v1.5.1.tgz

在真正安装之前,我们还要安装下面这几个组件

  • docker
  • docker-compose
  • python27
  • openssl

首先安装docker

curl -fsSL get.docker.com -o get-docker.sh

chmod +x get-docker.sh

./get-docker.sh

systemctl start docker

之后安装docker-compose

sudo curl -L https://github.com/docker/compose/releases/download/1.21.2/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose

sudo chmod +x /usr/local/bin/docker-compose

默认python27是安装在centos上的,openssl在安装前面东西的时候也会默认安装好的

root@bboysoul ~# rpm -qa |grep openssl

openssl-libs-1.0.2k-12.el7.x86_64

openssl-1.0.2k-12.el7.x86_64

安装

首先解压离线安装包

tar -xvf harbor-offline-installer-v1.5.1.tgz

之后配置harbor.cfg这个文件,要知道的是有的参数是可选的,就是不用配置的,有的参数是必选的,必选参数有的是有默认值的

下面是必选参数

  • hostname
  • ui_url_protocol
  • db_password
  • max_job_workers
  • customize_crt
  • ssl_cert
  • ssl_cert_key
  • secretkey_path
  • log_rotate_count
  • log_rotate_size

其余的都是可选的

我是推荐在本地搭建一个dns的服务器的,因为这样就可以设置一个域名,每次都访问ip太麻烦了,尤其是在上传镜像的时候每次都要想ip是什么

之后直接执行

./install.sh

就可以安装成功了

之后如果你想修改某一个配置比如你要把域名修改一下,我是这么做的先修改上面harbor.cfg这个文件,之后重新执行install.sh这个文件就可以了

还有修改一些端口只要修改docker-compose文件里面的端口就好了,挂载文件的路径也是一样的

安装完成之后访问你配置的域名,然后使用默认的账号:admin,密码:Harbor12345登录验证

本地配置仓库地址

首先在harbor上新建一个project,名字开行就好,之后本地配置docker的配置文件在下面这个文件加入

vim /etc/docker/daemon.json

{

"registry-mirrors": "https://docker.mirrors.ustc.edu.cn",

"insecure-registries": "harbor.bboysoul.com"

}

接着重启服务

systemctl restart docker

登录仓库

root@bboysoul:/home/bboysoul/temp/harbor# docker login harbor.bboysoul.com

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

给镜像打tag

docker tag ubuntu:16.04 harbor.bboysoul.com/bboysoul/ubuntu:16.04

上传镜像

docker push harbor.bboysoul.com/bboysoul/ubuntu:16.04

下载镜像

首先删除本地的

docker rmi harbor.bboysoul.com/bboysoul/ubuntu:16.04

docker rmi -f ubuntu:16.04

之后pull harbor服务器上的

docker pull harbor.bboysoul.com/bboysoul/ubuntu:16.04

pull一次仓库上镜像的pulls就会加一次,可以在web界面上看的

修改harbor端口

怎么去做这个修改端口呢,首先修改docker-compose.yml中nginx的端口映射,可以修改成别的端口,之后我们使用nginx去根据域名做端口转发就可以了,不需要做其他很复杂的配置

配置邮件重置密码

安装好之后管理员登录,在系统管理->配置管理->邮箱里面有配置的地方,在配置里面可以测试邮件,我的配置如下,使用的是qq企业邮箱

  • 邮件服务器: smtp.exmail.qq.com
  • 邮件服务器端口: 465
  • 用户名: bboysoul@bboysoul.com
  • 密码: 我的密码你是不可能知道的
  • 邮件来源: bboysoul@bboysoul.com 这个一定要和用户名一样
  • 邮件 SSL: 打钩
  • 验证证书: 打钩

欢迎关注Bboysoul的博客www.bboysoul.com

Have Fun

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏磨磨谈

rbd-mirror配置指南-单向备份

RBD 的 mirroring 功能将在Jewel中实现的,这个Jewel版本已经发布了很久了,这个功能已经在这个发布的版本中实现了,本来之前写过一篇文章,但是...

19310
来自专栏电光石火

在Win7的IIS上搭建FTP服务及用户授权

FTP服务      FTP是文件传输协议(File Transfer Protocol)的简称,该协议属于应用层协议(端口号通常为21),用于Intern...

57690
来自专栏Linux运维学习之路

Nginx服务编译安装、日志功能、状态模块及访问认证模式实操

系统环境   [root@web ~]# cat /etc/redhat-release   CentOS release 6.9 (Final)   [ro...

29960
来自专栏Jerry的SAP技术分享

如何在SAP云平台的Cloud Foundry环境下添加新的Service(服务)

我想在SAP云平台的Cloud Foundry环境下使用MongoDB的服务,但是我在Service Marketplace上找不到这个服务。

36150
来自专栏陈树义

2.Redis的基本配置

一、参数配置 redis.conf的主要配置参数的意义: daemonize:是否以后台daemon方式运行 pidfile:pid文件位置 port:监听的端...

36650
来自专栏运维技术迷

连仕彤博客利用rsync+sersync实现数据实时同步

34640
来自专栏电光石火

在Win7的IIS上搭建FTP服务及用户授权

FTP服务      FTP是文件传输协议(File Transfer Protocol)的简称,该协议属于应用层协议(端口号通常为21),用于Internet...

48560
来自专栏小白安全

小白博客 VMware中安装kali linux之方法一

1.   首先下载kali linux  在地址http://www.kali.org/downloads/  我们可以看到网...

37540
来自专栏魏艾斯博客www.vpsss.net

如何修改 Cent OS 默认 SSH 端口

59930
来自专栏pangguoming

Windows 8 IIS配置PHP运行环境

在Windows 8 的IIS(8.0)中搭建PHP运行环境: 一:安装IIS服务器 1.进入控制面板>>程序和功能>>打开或关闭Windows 功能,找到In...

74880

扫码关注云+社区

领取腾讯云代金券