Harbor 1.9.x 版本从源码构建和运行
介绍
本指南为开发人员提供了从源代码构建和运行Harbor的说明。
步骤1:为Harbor的构建环境做准备
Harbor被部署为多个Docker容器,并且大多数代码都是用Go语言编写的。构建环境需要Docker,Docker Compose和golang开发环境。请安装以下先决条件:
| 软件 | 所需版本 |
|---|---|
| docker | 17.05 + |
| docker-compose | 1.18.0 + |
| python | 2.7 + |
| git | 1.9.1 + |
| make | 3.81 + |
| golang* | 1.7.3 + |
*可选,仅当您使用自己的Golang环境时才需要。
步骤2:获取源代码
$ git clone https://github.com/goharbor/harbor
步骤3:构建和安装Harbor
配置
编辑文件 make/harbor.yml 并进行必要的配置更改,例如主机名,管理员密码和邮件服务器。有关更多信息,请参考 安装和配置指南
$ cd harbor
$ vi make/harbor.yml
编译和运行
您可以通过以下三种方法之一来编译代码:
I.使用官方Golang映像进行构建
从Docker Hub获取官方的Golang图像:
$ docker pull golang:1.12.12
在没有公证人的情况下构建,安装和启动Harbor:
$ make install GOBUILDIMAGE=golang:1.12.12 COMPILETAG=compile_golangimage
使用公证人建立,安装和启动Harbor:
$ make install GOBUILDIMAGE=golang:1.12.12 COMPILETAG=compile_golangimage NOTARYFLAG=true
- 与Clair一起构建,安装和启动Harbor:
```sh
$ make install GOBUILDIMAGE=golang:1.12.12 COMPILETAG=compile_golangimage CLAIRFLAG=true
II.使用您自己的Golang环境编译代码,然后构建Harbor
将源代码移至$GOPATH
$ mkdir $GOPATH/src/github.com/goharbor/
$ cd ..
$ mv harbor $GOPATH/src/github.com/goharbor/.
在没有公证人和克莱尔的情况下构建,安装和运行Harbor:
$ cd $GOPATH/src/github.com/goharbor/harbor
$ make install
使用Notary和Clair构建,安装和运行Harbor:
$ cd $GOPATH/src/github.com/goharbor/harbor
$ make install -e NOTARYFLAG=true CLAIRFLAG=true
验证您的安装
如果一切正常,您将收到以下消息:
...
Start complete. You can visit harbor now.
有关管理Harbour实例的更多信息,请参考安装和配置指南
[翻译]
harbor 编译 https://github.com/goharbor/harbor/blob/release-1.9.0/docs/compile_guide.md
Harbor 1.9.x 版本从源码构建和运行的更多相关文章
- Delphi:程序自己删除自己,适用于任何windows版本(含源码)
Delphi:程序自己删除自己,适用于任何windows版本(含源码) function Suicide: Boolean; var sei: TSHELLEXECUTEINFO; szMod ...
- Pytorch版本yolov3源码阅读
目录 Pytorch版本yolov3源码阅读 1. 阅读test.py 1.1 参数解读 1.2 data文件解析 1.3 cfg文件解析 1.4 根据cfg文件创建模块 1.5 YOLOLayer ...
- spring 各个版本的源码、jar包和源码jar包下载地址
spring各个版本的源码jar包.文档jar包和spring的jar包 http://maven.springframework.org/release/org/springframework/sp ...
- jQuery 2.1.4版本的源码分析
jQuery 2.1.4版本的源码分析 jquery中获取元素的源码分析 jQuery.each({// 获取当前元素的父级元素 parent: function(elem) { var parent ...
- Tomcat各版本及源码包下载
Tomcat各版本及源码包下载 1.百度 Tomcat 进入官网2.Tomcat 官网地址:http://tomcat.apache.org/3.所有 Tomcat 版本及源码包下载地址:https: ...
- java开源即时通讯软件服务端openfire源码构建
java开源即时通讯软件服务端openfire源码构建 本文使用最新的openfire主干代码为例,讲解了如何搭建一个openfire开源开发环境,正在实现自己写java聊天软件: 编译环境搭建 调试 ...
- Flink源码分析 - 源码构建
原文地址:https://mp.weixin.qq.com/s?__biz=MzU2Njg5Nzk0NQ==&mid=2247483692&idx=1&sn=18cddc1ee ...
- Elasticsearch源码分析 - 源码构建
原文地址:https://mp.weixin.qq.com/s?__biz=MzU2Njg5Nzk0NQ==&mid=2247483694&idx=1&sn=bd03afe5a ...
- android 源码编译及其运行模拟器相关问题记录
最近一直在看android源码相关的文档,包括编译源码,还有framework层的代码,本人很懒,一直没有写博客,今天想自己在编译一下源码,并且运行在模拟器中. 源码的版本不同,需要的jdk可能也有所 ...
随机推荐
- 12.pyecharts详细使用教程
官方数据教程: 柱状图-Bar //导入柱状图-Bar from pyecharts import Bar //设置行名 columns = ["Jan", "Feb&q ...
- C# DataTable数据类型判断
当我们从数据中获取到数据,一般会使用 DataTable 接收,然后会遍历每行数据.由于从数据库中读取的数据可能为空,比如我们的编译代码如下: foreach (DataRow datarow in ...
- Flink系列之Time和WaterMark
当数据进入Flink的时候,数据需要带入相应的时间,根据相应的时间进行处理. 让咱们想象一个场景,有一个队列,分别带着指定的时间,那么处理的时候,需要根据相应的时间进行处理,比如:统计最近五分钟的访问 ...
- hexo零基础搭建博客系列(一)
关于其他搭建 [hexo4快速搭建博客(二)更换主题](https://blog.csdn.net/weixin_41800884/article/details/103750634)[hexo4快速 ...
- Arrays.sort() VS Arrays.parallelSort()
英文原文地址:Arrays.sort vs Arrays.parallelSort 作者:baeldung 翻译:高行行 1. 概述 我们都使用过 Arrays.sort() 对对象或原始数据类型数组 ...
- 前端Tips#4 - 用 process.hrtime 获取纳秒级的计时精度
本文同步自 JSCON简时空 - 前端Tips 专栏#4,点击阅读 视频讲解 视频地址 文字讲解 如果去测试代码运行的时长,你会选择哪个时间函数? 一般第一时间想到的函数是 Date.now 或 Da ...
- RedisCluster linux下批量删除 key
Redis Cluster linux下批量删除键 说明 使用时不支持传入参数 , 如 redis_batch_del.sh , 因为在linux下 会自动将 * 解析为当前目录下所有文件名, 目前还 ...
- 干货!SQL性能优化,书写高质量SQL语句
写SQL语句的时候我们往往关注的是SQL的执行结果,但是是否真的关注了SQL的执行效率,是否注意了SQL的写法规范? 以下的干货分享是在实际开发过程中总结的,希望对大家有所帮助! 1. limit分页 ...
- 第五篇:python购物车小程序开发demo
功能:自定义工资水平,可选商品加购余额实时提醒用到的知识点:列表.if多分支.循环.高亮输出未解决bug删除商品后不能自动退出 代码如下: if shopping_list: shopping_lis ...
- django 建立安全索引
上篇记录使用“CONCURRENTLY” 命令行执行不锁表索引,对于django, 如何执行呢?这里记录一种方法,修改django迁移文件. 在执行完迁移后,为了方便找到该迁移文件,可以采用指定命名迁 ...