Casvisor
入门

从源码运行

开发Casvisor要从源码运行;目前要配一个用自己证书签名的Casdoor,也得从源码编译(见对接Casdoor)。

需要准备

版本用途
Go1.26及以上后端
Node.js和YarnNode 20及以上,Yarn 1前端
MySQL或MariaDB5.7 / 10.3及以上资产、权限、会话、操作日志
guacd1.5及以上只有Telnet需要;SSH、RDP和VNC不需要
Casdoor登录,见对接Casdoor

编译和运行

git clone https://github.com/casvisor/casvisor
cd casvisor/web
yarn install
yarn build
cd ..
go run .

yarn build把前端输出到web/build,由后端提供。Casvisor监听19000端口(conf/app.conf里的httpport)。第一次启动时它会建好dbName指定的库和表,所以dataSourceName里的MySQL账号要有建库权限。

需要Telnet时,再启动guacd:

docker run -d --name guacd -p 4822:4822 guacamole/guacd

配置

第一次启动前先改conf/app.conf:

dataSourceName = root:123456@tcp(localhost:3306)/
dbName = casvisor
guacamoleEndpoint = 127.0.0.1:4822
casdoorEndpoint = https://door.example.com
clientId = <Client ID>
clientSecret = <Client secret>
casdoorOrganization = "<组织>"
casdoorApplication = "<应用>"

每一项的含义见配置。

开发前端

前端是React + Vite + shadcn/ui。开发时单独跑Vite,让它把接口请求转给后端:

cd web
yarn dev

它监听18001端口,把/api(包括WebSocket)转发到http://localhost:19000。要连别的后端,设置环境变量CASVISOR_BACKEND。

编译到其他系统

后端是纯Go,CGO_ENABLED=0即可交叉编译:

CGO_ENABLED=0 GOOS=linux GOARCH=arm64 go build -o casvisor .
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build -o casvisor.exe .

运行时它从工作目录读取conf/、data/、swagger/和web/build/,部署时把这几个目录和程序一起拷过去。

在GitHub上编辑

本页内容