Harbor

Harbor1.5.0仓库使用教程

雨燕双飞 提交于 2020-08-06 03:10:24
# 1.项目管理 在Harbor仓库中,任何镜像在被push到regsitry之前都必须有一个自己所属的项目。这里有两种仓库的形式: 公共:任何使用者都可以获取这个仓库中的镜像。 私有:只有被授予权限的用户可以获取这个仓库中的镜像。 当你登陆进入Harbor的UI后,你可以新建一个项目,这里你可以选择在公开前面打钩来进行公共项目创建,如果不打钩,则默认为私有项目,如下图 在项目创建完毕后,你可以浏览这个项目的镜像仓库,成员,复制,标签,日志,配置管理,如下图 这里有两种仓库的浏览模式,可以点击右上角的按钮进行选择,如下图 点击日志,可以查看到当前项目所有的日志信息,点击高级检索后,可以根据时间段,操作动作来匹配日志记录,如下图 2.项目成员管理 你可以添加不同的角色的成员在项目中,但是成员必须是在Harbor上注册过的用户,这里可以选择项目管理员,开发人员,游客,如下图 在添加过后,你同样可以在勾选某用户后,更改某用户的身份,或者将某用户从项目中移除,如下图 3.镜像复制 镜像复制被用来复制仓库从一个Harbor实例到另一个。 这个功能是面向项目的,首先系统管理员需要对这个项目设置一个角色,当匹配到了定义的触发器触发了条件时,这个项目下的所有仓库会被复制到另一个远程仓库。每一个仓库都会运行一个job,这时如果远程的仓库中没有这个项目,那么就会自动在那个远程项目中创建一个新的项目于

Docker 部署Registry私有仓库+Harbor私有仓库

心不动则不痛 提交于 2020-08-05 16:00:55
有时候使用 Docker Hub 这样的公共仓库可能不方便,用户可以创建一 个本地仓库供私人使用。 两种不同的搭建Docker私有仓库的方法,都必须要基于一个Docker服务器上,相比较而言,Harbor功能更强大些。 之前详细写过Registry私有仓库的搭建方法,这里的Registry只是有一点配置不一样而已,若要搭建Registry私有仓库,最好结合: Docker 镜像的创建与构建私有库 ,对比其不一样的地方,选择适合自己的。 一、搭建Registry私有仓库 环境如下 host IP service docker01 192.168.171.150 docker私有仓库 docker02-test 192.168.171.151 test docker安装可参考 部署 Docker 1、开始配置第一台Docker私有仓库服务器: [root@docker01 ~]# docker pull registry [root@docker01 ~]# docker run -tid --name registry --restart=always -p 5000:5000 -v /data/registry:/var/lib/registry registry #运行该镜像,各个选项含义如下: # -tid:以后台持久运行,并分配一个可交互的为终端 # --name

Harbor 2.0 快速部署经验分享

天大地大妈咪最大 提交于 2020-07-28 20:40:31
题图摄于旧金山渔人码头 本文系Harbor社区用户经验分享文章,首发于公众号:运维及时雨,授权转发。 作者简介: 杜秋,云计算运维工程师,目前主要从事Kubernetes技术栈的CI/CD运维,多年一线运维工作,参与平台搭建、平台迁移、企业从自建IDC到上云、自动化建设等运维核心项目。 说明:本文离线安装,后端挂载阿里云的OSS作为images存储,以后再也不怕磁盘爆满了。 Harbor 离线版本:harbor-offline-installer-v2.0.0.tgz Harbor 2.0版本相比之前的1.x更新的不少功能: 启用Trivy作为默认漏洞扫描器,简化了Trivy扫描器的配置。 启用了Harbor组件之间的TLS,使组件内的流量更安全。 Webhook的增强功能,包括支持与Slack的交互、可选择的事件列表、多终端、新事件等。 增强机器人账户,允许用户为每个机器人设置单独的过期时间。 重构错误处理框架,以便更好地排除故障。 在用户界面中查看未标记的镜像,并将其从GC和标记保留工作中包含/排除。 选择性地从镜像中删除标签,而不删除镜像摘要或其他相关标签。 默认是https,因为notary必须在https协议下,如果不需要配置notary可以设置http。 操作系统版本: [root@192-168-0-110 ~]# cat /etc/system-release

CICD实现方法之二--Gitlab+Jenkins+K8S

安稳与你 提交于 2020-07-28 03:13:56
承接上篇文章: 上周发布了新的博客文章,CI实现方法之--Gitlab+Drone,有幸被51cto推荐到首页,在上次的文章中做了CI相说明与测试操作,在生产环境为了提高生产力,增加容错,避免人为误操作等,出现了CICD,对于CICD在此文章中再说明一次 随着DevOps的兴起,出现了持续集成(Continuous Integration)、持续交付(Continuous Delivery) 、持续部署(Continuous Deployment) 的新方法。 此次比之前增加了jenkins与k8s,k8s自不必多说,看官们应该都清楚,这里主要说明jenkins。 Jenkins是一款使用java语言开发的开源的自动化服务器。通过界面或者jenkinsfile告诉它执行什么任务,何时执行。理论上,我们可以让它执行任何任务,但是通常只应用于持续集成和持续交付。 一、测试前提条件 实验环境说明 测试主机:阿里云主机 操作系统:CentOS 7.7 测试主机配置:2C,8G 主机名 公网IP 内网IP ROLE PORT node1 39.104.17.55 172.16.0.101 k8s-master 6443 node2 39.104.61.142 172.16.0.100 k8s-node1 node3 39.104.70.121 172.16.0.99 k8s-node2

Dragonfly成为CNCF孵化项目,我们与基金会首位华人TOC聊了聊

醉酒当歌 提交于 2020-07-27 20:55:45
本文转载自开源中国。 推荐阅读: 《重磅 | Dragonfly 晋升成为 CNCF 孵化项目》 4 月 10 日,由云原生计算基金会(CNCF)技术监督委员会投票决议,来自中国的开源项目 Dragonfly 正式晋升为 CNCF 孵化级别的托管项目,成为继 Harbor、TiKV 之后,第三个进入 CNCF 孵化阶段的中国项目。 CNCF 成立于 2015 年 7 月,是 Linux 基金会旗下的重要开源组织之一,围绕微服务、DevOps、持续交付、容器化四大特性,致力于维护和集成云原生相关开源技术,以支持编排容器化微服务架构应用。 目前,CNCF 有会员公司超过 300 家,其中包括 AWS、Azure、Google、阿里云等全球主流的云计算厂商。CNCF 的技术监督委员会由 11 位具有丰富技术知识和行业背景的代表组成,为云原生社区提供技术领导。 在“云”已经成为大众基础设施的今天,云原生被认为是云计算技术的 2.0 标准,而 CNCF 正是引领云原生技术发展的风向标,在业内具有举足轻重的地位。那么 Dragonfly 项目究竟凭何能够跻身 CNCF 孵化项目?其在云原生的技术生态中又扮演着怎样的角色呢?为深入了解 Dragonfly 项目的特性,以及云原生技术在国内的发展现状,我们邀请到了 CNCF 首位华人技术监督委员会委员(TOC)、阿里云资深技术专家李响先生

Kubernetes实战总结

百般思念 提交于 2020-05-07 13:05:15
>>> 目录 <<< 一、概述 二、核心组件 三、基本概念 四、系统架构 五、镜像制作 六、服务编排 七、持续部署 八、故障排查 >>> 正文 <<< 一、 概述 Kubernetes是容器集群管理系统,是一个开源的平台,可以实现容器集群的自动化部署、自动扩缩容、维护等功能。Kubernetes特点 : ☛ 可移植: 支持公有云,私有云,混合云,多重云 ☛ 可扩展: 模块化, 插件化, 可挂载, 可组合 ☛ 自动化: 自动部署,自动重启,自动复制,自动伸缩/扩展 二、 核心组件 1) 主要组件 ● etcd : 保存了整个集群的状态; ● apiserver : 提供了资源操作的唯一入口,并提供访问控制、API注册和发现等机制; ● scheduler : 负责资源的调度,按照预定的调度策略将Pod调度到相应的机器上; ● controller manager : 负责维护集群的状态,比如故障检测、自动扩展、滚动更新等; ● kubelet : 负责维护容器的生命周期,同时也负责数据卷(CVI)和网络(CNI)的管理; ● kube-proxy : 负责为Service提供集群内部的服务发现和负载均衡; ● Container runtime : 负责镜像管理以及Pod和容器的真正运行(CRI); 2) 扩展组件 ● kube-dns : 负责为整个集群提供DNS服务 ●

运维项目总结

好久不见. 提交于 2020-04-27 10:53:21
目录 中小型公司高并发网站集群搭建 2018.04 - 2018.04 大型公司集群搭建 2018.08 - 2018.08 docker项目 2019.01 - 2019.01 Kubernetes项目 2019.02 - 2019.04 wordpress博客计划 2019.06 - 2019.06 中小型公司高并发网站集群搭建 2018.04 - 2018.04 所需技术: keepalived、nginx、apache、mysql、nfs、rsync、sersync、inotify ... 项目职责: 此项目为个人项目。本人全程负责项目的实施。 项目浅谈: 此项目是我的第一个运维项目,基本是模拟网上的架构图来的 这个项目是为了搭建一个稳定、安全、快速、经济的中小型 web 网站 项目架构图:为了真实性,我直接从我的博客中获取的架构图。 大型公司集群搭建 2018.08 - 2018.08 所需技术: 负载均衡、web服务、mysql主主/主从、memcache缓存、数据共享/数据备份 ... 项目职责: 此项目为个人项目。本人全程负责项目的实施。 项目浅谈: 此项目是我的第二个运维项目,是对网上的一张架构图的改动 借助于所学的应用服务基本满足了一个相对大的公司对集群架构的需求。 项目架构图:为了真实性,我直接从我的博客中获取的架构图。 docker项目 2019.01 -

运维项目总结

纵饮孤独 提交于 2020-04-27 10:31:36
目录 中小型公司高并发网站集群搭建 2018.04 - 2018.04 大型公司集群搭建 2018.08 - 2018.08 docker项目 2019.01 - 2019.01 Kubernetes项目 2019.02 - 2019.04 wordpress博客计划 2019.06 - 2019.06 中小型公司高并发网站集群搭建 2018.04 - 2018.04 所需技术: keepalived、nginx、apache、mysql、nfs、rsync、sersync、inotify ... 项目职责: 此项目为个人项目。本人全程负责项目的实施。 项目浅谈: 此项目是我的第一个运维项目,基本是模拟网上的架构图来的 这个项目是为了搭建一个稳定、安全、快速、经济的中小型 web 网站 项目架构图:为了真实性,我直接从我的博客中获取的架构图。 大型公司集群搭建 2018.08 - 2018.08 所需技术: 负载均衡、web服务、mysql主主/主从、memcache缓存、数据共享/数据备份 ... 项目职责: 此项目为个人项目。本人全程负责项目的实施。 项目浅谈: 此项目是我的第二个运维项目,是对网上的一张架构图的改动 借助于所学的应用服务基本满足了一个相对大的公司对集群架构的需求。 项目架构图:为了真实性,我直接从我的博客中获取的架构图。 docker项目 2019.01 -

kubernetes实战-交付dubbo服务到k8s集群(五)交付dubbo-monitor监控服务到k8s

爱⌒轻易说出口 提交于 2020-04-23 07:32:35
首先下载 dubbo-monitor源码包 7-200 dubbo-monitor是监控zookeeper状态的一个服务,另外还有dubbo-admin,效果一样,感兴趣的可以自己研究一下。 # cd /opt/src # wget https://github.com/Jeromefromcn/dubbo-monitor/archive/master.zip # yum - y install unzip # unzip master.zip # mv dubbo -monitor-mster dubbo- monitor # cd /opt/src/dubbo-monitor 修改配置文件:对应修改,不要全部删除内容。 # vi /opt/src/dubbo-monitor/dubbo-monitor-simple/conf/dubbo_origin.properties dubbo.registry.address=zookeeper: // zk1.od.com:2181?backup=zk2.od.com:2181,zk3.od.com:2181 dubbo.protocol.port= 20880 dubbo.jetty.port = 8080 dubbo.jetty.directory =/dubbo-monitor-simple/ monitor dubbo

docker-compose 示例

試著忘記壹切 提交于 2020-04-21 17:45:38
version: '3' services: console: image: harbor1.zlibs.com/i1/console:v1 container_name: i1-console restart: on-failure:3 environment: - TZ=Asia/Shanghai volumes: - ./config/console/config.json:/opt/sites/i1console/config/config.json depends_on: - redis extra_hosts: - "i12003priv.solution9.net:172.16.1.6" networks: i1-network: ipv4_address: 172.16.1.7 riki: image: harbor1.zlibs.com/i1/riki:v1 container_name: i1-riki restart: on-failure:3 volumes: - ./logs/riki.log:/var/log/riki.log - ./config/riki/config.yml:/etc/riki/config.yml depends_on: - mysql - redis networks: i1-network: ipv4_address: 172