安装与部署 - 开发者工具
为了便于 Benjamin 的独立使用,Benjamin 随附着 Benjamin DevTools,用于提供 CLI 不便提供的额外功能。Benjamin DevTools 是一个基于 Web 的应用,需要独立安装和运行。
Benjamin DevTools 考虑到其部署复杂性,仅提供基于 Docker 的部署方式。
预先准备 - Docker
当前 Benjamin 仍处于积极开发阶段,暂不独立提供安装程序
目前开发者工具通过 APTP Docker Registry 进行分发,需要先配置 APTP Docker Registry。
在 Docker 配置文件中(通常为 /etc/docker/daemon.json),添加 insecure-registries
{
"insecure-registries" : ["https://10.0.81.34"]
}
然后重启(不可 reload)Docker 服务。
输入 docker login 10.0.81.34 进行登录(用户名为 aptp-harbor,密码请咨询相关项目负责人获得)。
预先准备 - Docker Compose
Benjamin DevTools 依赖于 Docker Compose 进行分发,需预先安装。考虑到 Docker Compose V1 已经停止维护,且 ambot-service 也仅支持 V2,因此尽管目前 DevTools 仍然支持 V1,但是建议使用 V2。
可访问 官方文档 查阅安装指引。
Tag 策略
Benjamin 的 tag 策略如下:
- latest 最新一次提交
- stable 最新 tag
- [branch-name] 特定 branch 的最新一次提交
- [tag-name] 特定 tag 的最新一次提交(tag 采用语义化版本号,例如 v1.2.3)
- [version] 与 [tag-name] 类似,但仅语义化版本号存在,无前缀 v
- [commit-hash-8] 提交 commit 的 hash 前 8 位
安装
以下为 Benjamin-DevTools 的 Docker Compose 配置文件示例:
version: "2"
services:
core:
image: "10.0.81.34/benjamin/devtools:stable"
container_name: "benjamin-devtools"
restart: always
environment:
- "BACKEND_HOST=host.docker.internal:9812"
extra_hosts:
- "host.docker.internal:host-gateway"
ports:
- "9818:3000" # main
- "9817:3001" # public
该配置文件假定了,Benjamin 运行在宿主机的 9812 端口上(默认端口号),并将 DevTools 的主端口暴露在了 9818 上、iframe 嵌入端口暴露在了 9817 上。
9817 端口目前仅为 APTP 项目进行 iframe 嵌入使用,其他项目可忽略该端口。该端口的主要作用是提供一层额外的安全隔离,所有功能均可在 9818 端口上使用。
你可自行维护该 compose 的生命周期(例如简单的 docker compose up),也可利用 ambot-service v1.6.0-beta.3 及以上版本中的 exp-install-docker-compose 功能利用系统服务进行维护。
使用
在启动后,你可以通过 http://localhost:9818 访问 (如果你修改了 docker-compose.yml 文件中的相关端口号,则使用相应端口号访问)DevTools 的主界面。