go-judge icon indicating copy to clipboard operation
go-judge copied to clipboard

Sandbox Server in REST / gRPC API. Based on Linux container technologies.

Results 6 go-judge issues
Sort by recently updated
recently updated
newest added

如题。连接 `ws://localhost:5050/ws` 并发送一条执行请求,可以正常收到结果。但是当请求结束,客户端退出时,无论是显式调用 `connection.close()` 关闭连接还是直接 `exit` 退出程序,均会在服务端(executorserver)产生格式如同下面的 warning: ```javascript // 直接退出 {"level":"warn","ts":1663066810.5931816,"caller":"ws_executor/websocket.go:146","msg":"ws read error:websocket: close 1006 (abnormal closure): unexpected EOF"} // 显式调用 close {"level":"warn","ts":1663066699.9190106,"caller":"ws_executor/websocket.go:146","msg":"ws read error:websocket: close 1000 (normal): Normal...

Hi, this is amazing and liked a lot. Can someone provide an architecture or documentation on how to use this in production with scale?

在使用除 gRPC 外其他传输层时(HTTP / WebSocket / FFI 等)时,数据都是以 JSON 方式传递的,然而 struct CmdFile 里的 Content 被声明称了 `*string` 类型: https://github.com/criyle/go-judge/blob/e5c7b811e5c72f5e7fb494c8e4914a5b0729ed6c/cmd/executorserver/model/model.go#L14-L22 也就是说,似乎是没办法把一个二进制文件作为调用 `/run` 时的 copyIn 直接扔到沙盒里去.我尝试了下面几种方法: - 使用 README 中的方式,传一个 Buffer 进去,但是直接返回 `json:...

我在尝试使用 Hydro 搭建并行计算课程的 OJ 平台,使用到了 go-judge 作为后台 judge 服务器。然而,我无法正常使用 `mpirun -np 8 foo` 启动 MPI 程序。 我尝试直接向 `localhost:5050/run` 地址发送 `POST` 请求来启动 MPI 程序,得到了这样的输出: ``` json [ { "status": "Nonzero Exit...

在接触本项目前,自己想设计个沙箱(针对java代码),想法是:每次打包jar包后新建docker容器,在容器中运行代码以确保宿主机的安全。但是这样的话,会创建出大量的容器,会严重影响性能。 想了解下本项目是如何实现沙箱功能,本项目在criyle/go-judge容器中运行代码,如何防止代码对容器中的文件做出修改,有用到哪些技术?

go-judge 可以支持运行 CUDA 程序吗? 感觉不太行,先这么问一下(