龙空技术网

一个免费开源的 API 开发生态系统(安装篇)

卖几个菜 116

前言:

而今我们对“api文件怎么安装”大致比较着重,兄弟们都需要剖析一些“api文件怎么安装”的相关文章。那么小编在网摘上网罗了一些对于“api文件怎么安装””的相关内容,希望各位老铁们能喜欢,兄弟们一起来学习一下吧!

接上期 一个免费开源的 API 开发生态系统 完成后,有小伙伴给我私信,为什么Hoppscotch自托管部署老是失败,无法登陆等系列问题。于是,我也亲自去搭建一下,今天把整个部署过程分享出来。

[机智]如果您安装的是桌面版Hoppscotch,这篇文章可以跳过。

本篇文章主要介绍Hoppscotch自托管的安装部署。自托管部署主要好处是,通过浏览器就能使用,集中式数据存储,而且方便团队协作和管理等好处。

部署后完成的界面截图

Hoppscotch admin dashboard

Hoppscotch frontend

还有一个端是Hoppscotch backend,没有界面,它是服务端。

安装先决条件

目前官方没有基础环境的安装步骤,本文将使用docker方式安装,也省去了安装Node.js, npm, pnpm等一些环境。

安装Docker (v20+).

# 安装docker社区版yum install -y docker-ce# 关闭防火墙systemctl stop firewalld# 禁止开机启动防火墙systemctl disable firewalld# 启动docker服务systemctl start docker  # 停止docker服务systemctl stop docker # 重启docker服务systemctl restart docker  # 查看docker版本号docker -v
安装Docker Compose
curl -L -`uname -s`-`uname -m` > /usr/local/bin/docker-compose# 修改权限chmod +x /usr/local/bin/docker-compose#变为绿色说明文件可以执行了ll
准备一个邮箱

Hoppscotch支持与第三方SMTP提供商轻松集成。您将需要电子邮件,以便您可以邀请您的团队使用Hoppscotch。记得邮箱要开启SMTP服务。比如谷歌邮箱,那么格式如下:smtps://{账号}:{密码}@smtp.gmail.com。

Postgres database

Hoppscotch使用PostgreSQL数据库来存储所有数据。你可以选择任何你喜欢的PostgreSQL数据库提供商,无论是本地托管还是云服务。只需确保你有一个有效的PostgreSQL数据库的URL。postgresql://{账号}:{密码}@{IP地址}:5432/{数据库名}

OAuth2

如果您需要第三方登陆,还需要配置OAuth提供程序来启用第三方身份验证。Hoppscotch支持以下OAuth提供商:

GitHubGoogleMicrosoftEmail

假如我们以Google为例,如果你服务器不能访问Google,那么这一步也可以跳过。以下为详细的配置步骤:

1、访问

新建项目

2、点击凭据,进入配置页面。

配置回调地址

新建密钥

3、保存完成google的oauth配置。

配置nginx,用来绑定域名和转发

nginx安装很简单就略了。记得也要申请下ssl证书,因为google第三方授权需要https。下面讲解配置部分。

server {    listen       443 ssl;   # 配置域名    server_name  xxx.xxx.com;     #配置您实际的证书地址    ssl_certificate /etc/ssl/xxxxxxxxx.crt;    ssl_certificate_key /etc/ssl/xxxxxxxxx.key;    ssl_session_timeout 5m;    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;    ssl_prefer_server_ciphers on;    location / {        proxy_redirect off;        proxy_set_header    Host $http_host;        proxy_set_header    X-Real-IP $remote_addr;        proxy_set_header    X-Forwarded-For $proxy_add_x_forwarded_for;       # 配置您实际的IP和端口号        proxy_pass ;    }}

配置完成记得重启下nginx

验证并重启nginx

步入正题,安装Hoppscotch

了解如何安装和构建Hoppscotch社区版。

1、找一个目录,新建一个文件夹docker,文件夹名称随意

cd /usr/localmkdir dockercd /docker

2、因为我数据库Postgres是外部的地址,如果让容器内部可以访问外部 IP。创建一个自定义的 Docker 网络,这将允许容器与宿主机和其他容器相互通信。

docker network create my-network

3、在/usr/local/docker目录下,新建一个docker-compose.yml文件,文件内容我写好了,如下:

version: '3.0'services:  hoppscotch:    image: hoppscotch/hoppscotch    env_file:      - ./.env    environment:      ENABLE_SUBPATH_BASED_ACCESS: "true"    networks:      - my-network    ports:      - "8888:80" #因为我80端口被主机其他服务占用了,所以暴露的端口就用8888networks:  my-network:    external: true

4、在/usr/local/docker目录下,新建一个环境配置文件.env,具体变量自行替换,详细文件内容如下:

#-----------------------Backend Config------------------------------## Prisma ConfigDATABASE_URL=postgresql://{账号}:{密码}@{IP地址}:5432/{数据库名}# Auth Tokens ConfigJWT_SECRET=secretcode123TOKEN_SALT_COMPLEXITY=10MAGIC_LINK_TOKEN_VALIDITY=3REFRESH_TOKEN_VALIDITY=604800000ACCESS_TOKEN_VALIDITY=86400000SESSION_SECRET=anothersecretcode123# Hoppscotch App Domain ConfigREDIRECT_URL=https://{域名}WHITELISTED_ORIGINS=https://{域名}/backend,https://{域名},https://{域名}/adminVITE_ALLOWED_AUTH_PROVIDERS=GOOGLE,EMAIL# Google Auth ConfigGOOGLE_CLIENT_ID=*****GOOGLE_CLIENT_SECRET=***** # 这个地址就是刚才google配置的回调地址,一定要一致,别填错了GOOGLE_CALLBACK_URL=https://{域名}/backend/v1/auth/google/callbackGOOGLE_SCOPE=email,profile# Github Auth ConfigGITHUB_CLIENT_ID=*****GITHUB_CLIENT_SECRET=****GITHUB_CALLBACK_URL=https://{域名}/backend/v1/auth/github/callbackGITHUB_SCOPE=user:email# Microsoft Auth ConfigMICROSOFT_CLIENT_ID=*****MICROSOFT_CLIENT_SECRET=*****MICROSOFT_CALLBACK_URL=https://{域名}/backend/v1/auth/microsoft/callbackMICROSOFT_SCOPE=user.readMICROSOFT_TENANT=common# Mailer configMAILER_SMTP_URL=smtps://{账号}:{密码}@smtp.gmail.comMAILER_ADDRESS_FROM=smtps://{账号}:{密码}@smtp.gmail.com# Rate Limit ConfigRATE_LIMIT_TTL=60RATE_LIMIT_MAX=100#-----------------------Frontend Config------------------------------## Base URLsVITE_BASE_URL=https://{域名}VITE_SHORTCODE_BASE_URL=https://{域名}VITE_ADMIN_URL=https://{域名}/admin# Backend URLsVITE_BACKEND_GQL_URL=https://{域名}/backend/graphqlVITE_BACKEND_WS_URL=wss://{域名}/graphqlVITE_BACKEND_API_URL=https://{域名}/backend/v1# Terms Of Service And Privacy Policy Links (可选)VITE_APP_TOS_LINK=
Hoppscotch 启动

进入/usr/local/docker目录,启动docker compose

cd /usr/local/dockerdocker compose up -d

不出意外,您可以在浏览器里面使用Hoppscotch。

写在最后

安装过程中,可能会遇到的问题

1、通过Google第三方登陆Hoppscotch失败。原因是google回调地址写错,且协议必须是https。

2、通过Google第三方登陆成功,但是系统没有进去。原因查下是不是你用的登陆的前端没有绑定域名,只绑定了后端。需要前后端,还有服务,三者必须在一个域名下,不然cookie不能共享,但是登陆失败。官网例子没有说明这一点,需要注意。

3、建议部署AIO,也就是all in one 的版本。不然部署更加麻烦。除非对自己非常有信心。

感谢您的浏览,创作不易,如对您有帮助,一键三连呗。

往期回顾:一个免费开源的 API 开发生态系统

标签: #api文件怎么安装