Harbor之Swagger REST API
Swagger介绍
Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTFul 风格的 Web 服务。通过 Swagger,我们可以方便的、快速的实现 RESTFul API,同时它也提供UI界面,可以直观的管理和测试各个API接口,它还可以集成到各种开发语言中,大大提高了我们日常工作效率。
Harbor也提供这样一个东东,不过默认没有安装。
详细的安装说明,可以直接参考官方文档:https://github.com/goharbor/harbor/blob/master/docs/configure_swagger.md
我这里仅做一些简要配置说明。
Harbor Swagger预览
Harbor提供一种通过在线Swagger编辑器预览Harbor REST API信息的方式。在线编辑器的地址:http://editor.swagger.io/
不过使用在线Swagger编辑器,需要我们提供harbor的swagger.yaml文件,下面是这个文件的两个下载地址:
URL1:https://raw.githubusercontent.com/vmware/harbor/master/docs/swagger.yaml
URL2:https://github.com/vmware/harbor/blob/master/docs/swagger.yaml
只需要将文件内容直接粘贴到swagger在线编辑器的左边即可。或者在swagger编辑器页面通过File --> Importfile导入yaml。
整合本地Harbor与Swagger
当然,最好的方式,是直接将Swagger与我们自建的harbor服务整合,这样可以实现在线的接口测试。
- 下载prepare-swagger.sh以及swagger.yaml到你本地的harbor目录,我这里就直接放到了/usr/local/harbor中:
wget https://raw.githubusercontent.com/goharbor/harbor/master/docs/prepare-swagger.sh https://raw.githubusercontent.com/goharbor/harbor/master/docs/swagger.yaml
- 修改
prepre-swagger.sh
# 指定harbor的协议,如https/http
SCHEME=<HARBOR_SERVER_SCHEME>
# 指定harbor的访问地址,如hub.test.com
SERVER_IP=<HARBOR_SERVER_DOMAIN>
- 执行
prepare-swagger.sh
chmod +x ./prepare-swagger.sh
./prepare-swagger.sh
- 修改harbor的docker-compose.yml文件,如下:
...
ui:
...
volumes:
- ./common/config/ui/app.conf:/etc/core/app.conf:z
- ./common/config/ui/private_key.pem:/etc/core/private_key.pem:z
- /data/secretkey:/etc/core/key:z
- /data/ca_download/:/etc/core/ca/:z
## add two lines as below ##
- ../src/ui/static/vendors/swagger-ui-2.1.4/dist/:/harbor/static/vendors/swagger/:z
- ../src/ui/static/resources/yaml/swagger.yaml:/harbor/static/resources/yaml/swagger.yaml
...
- 重建harbor容器
docker-compose down -v && docker-compose up -d
- 访问
https://<HARBOR_SERVER>/static/vendors/swagger/index.html
在使用 Harbor API 时,是需要 session ID 的,当我们未登录 Harbor 时,直接使用API将得不到任何结果,这里如果我们想使用 Swagger UI 点击访问API返回结果,那么需要在浏览器中先登录 Harbor Web UI,登录后新开一个tab,在这个tab访问 Harbor Swagger Web,将会得到正常的响应结果,因为这时session已经共享,会话认证通过
Harbor之Swagger REST API的更多相关文章
- Docker镜像仓库Harbor之Swagger REST API整合配置
转载自:https://cloud.tencent.com/developer/article/1010618 1.Swagger 介绍 Swagger 是一个规范和完整的框架,用于生成.描述.调用和 ...
- 在ASP.NET Core Web API上使用Swagger提供API文档
我在开发自己的博客系统(http://daxnet.me)时,给自己的RESTful服务增加了基于Swagger的API文档功能.当设置IISExpress的默认启动路由到Swagger的API文档页 ...
- Core Web API上使用Swagger提供API文档
在ASP.NET Core Web API上使用Swagger提供API文档 我在开发自己的博客系统(http://daxnet.me)时,给自己的RESTful服务增加了基于Swagger的AP ...
- 用Swashbuckle给ASP.NET Core的项目自动生成Swagger的API帮助文档
博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:用Swashbuckle给ASP.NET Core的项目自动生成Swagger的API帮助文档.
- 从壹开始前后端分离 [.netCore 填坑 ] 三十四║Swagger:API多版本控制,带来的思考
前言 大家周二好呀,.net core + Vue 这一系列基本就到这里差不多了,今天我又把整个系列的文章下边的全部评论看了一下(我是不是很负责哈哈),提到的问题基本都解决了,还有一些问题,已经在QQ ...
- ASP.NET Core WebApi使用Swagger生成api说明文档看这篇就够了
引言 在使用asp.net core 进行api开发完成后,书写api说明文档对于程序员来说想必是件很痛苦的事情吧,但文档又必须写,而且文档的格式如果没有具体要求的话,最终完成的文档则完全取决于开发者 ...
- SpringBoot+Swagger整合API
SpringBoot+Swagger整合API Swagger:整合规范的api,有界面的操作,测试 1.在pom.xml加入swagger依赖 <!--整合Swagger2配置类--> ...
- SpringBoot整合Swagger测试api构建
@Author:SimpleWu 什么是Swagger? Swagger是什么:THE WORLD'S MOST POPULAR API TOOLING 根据官网的介绍: Swagger Inspec ...
- 【WebAPI No.4】Swagger实现API文档功能
介绍: Swagger也称为Open API,Swagger从API文档中手动完成工作,并提供一系列用于生成,可视化和维护API文档的解决方案.简单的说就是一款让你更好的书写API文档的框架. 我们为 ...
随机推荐
- Being a (amateurish) team:团队开发体会
0x00 Being a (amateurish) team This is the process of changing hydrogen into breathable oxygen, and ...
- 对spring cloud config的一点理解
以下部分纯属个人理解,但是结果都是经过demo验证. 一.spring cloud config介绍 spring cloud是spring家族中的一个微服务工具包,其中包含了很多微服务的工具.偏向于 ...
- cmd常用
npm install -g npm npm就自动为我们更新到最新版本 npm install -g cnpm --registry=https://registry.npm ...
- Test Scenarios for result grid
1 Page loading symbol should be displayed when it is taking more than default time to load the resul ...
- CentOS常用包安装
安装rz和sz命令: yum install lrzsz 安装unzip:yum install unzip
- 计算机cpu、寄存器、内存区别
1.寄存器是中央处理器内的组成部份.它跟CPU有关.寄存器是有限存贮容量的高速存贮部件,它们可用来暂存指令.数据和位址.在中央处理器的控制部件中,包含的寄存器有指令寄存器(IR)和程序计数器(PC). ...
- HDU1711-KMP-水题
纯KMP,入门题,不知道读入挂加朴素匹配能不能过 #include <cstdio> #include <algorithm> #include <cstring> ...
- linux上搭建nginx
安装包:(按顺序执行过去即可,重复无所谓)c++编译环境 yum install gcc-c++ 安装pcre yum -y install pcre-devel 安装openssl yum -y i ...
- Twitter数据挖掘:如何使用Python分析大数据
我们可以创建变量来存放待拉取的微博数量(即count),以及待拉取的用户(即name).然后用这两个参数调用user_timeline()函数.下面是更新后的代码(注意,在代码的顶部应该保持认证和AP ...
- 自学Zabbix13.2 分布式监控proxy配置
点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 自学Zabbix13.2 分布式监控proxy配置 分为两部分: 安装proxy 配置proxy ...