Skip to main content
Version: v0.3

快速入门指南

本文介绍如何部署Seal,并使用Seal在源码仓库和构建物仓库拦截风险。

注意:

Seal的当前版本处于alpha阶段。后续版本可能会引入不兼容的API变更。

前提条件

完成这一示例需要:

  • 一台至少4CPU,8Gi内存的Linux服务器
  • 至少50GB的空余磁盘空间
  • 服务器拥有一个公网可访问的地址,例如一个云服务商分配的公有IP地址,或者ngrok分配的代理地址
  • 本地机器安装maven

部署

  1. 在Linux服务器上安装docker,详细指引参考docker官方文档
  2. 前往官网申请产品试用镜像。
  3. 运行以下指令
sudo docker run -d --privileged --restart=always -p 80:80 -p 443:443 -p 10000:10000 <seal-container-image>

访问Seal UI

通过https://<server-address>访问Seal的UI。第一次登陆时根据UI提示,在服务器上运行以下指令获取初始的管理员密码

sudo docker logs <your-container-id> 2>&1 | grep "Bootstrap Admin Password"

admin用户名以及初始管理员密码登陆Seal。根据UI提示设置新的密码以及Seal的访问地址。

使用Seal管理Github代码仓库

  1. 在Github fork示例项目,取消勾选Copy the main branch only
  2. 在Seal UI点击集成菜单,点击Github图标。
  3. 根据UI说明创建Github应用,并将Client ID和Client Secret填入表单。
  4. 点击连接Github按钮,在弹窗中点击授权。
  5. 在源码仓库列表中搜索并勾选simple-java-maven-app,点击导入仓库。
  6. 在你的项目分叉中创建新的Pull request,设置PR基准为fork的main分支,请求合并的变更为fork的test分支。
  7. 点击创建Pull request。
  8. 确认Seal的检查作用于该Pull request。

使用Seal拦截风险软件包的下载

  1. 点击Seal UI导航栏中的集成菜单,点击Maven构件代理的图标。
  2. 代理名称输入central,上游地址输入https://repo.maven.apache.org/maven2/,点击保存按钮。
  3. 记录列表中显示的代理地址。
  4. 运行以下指令克隆示例项目代码
git clone https://github.com/seal-io/simple-java-maven-app
  1. 将以下文件内容写入~/.m2/settings.xml文件,其中将镜像url更换为上述Maven构件代理地址。
<settings>
<mirrors>
<mirror>
<id>other-mirror</id>
<name>Other Mirror Repository</name>
<url>http://your-proxy-address:10000</url>
<mirrorOf>central</mirrorOf>
</mirror>
</mirrors>
</settings>
  1. 在示例项目中运行mvn package,确认带高危漏洞的软件包依赖被拦截。