# OnlineCompiler
支持在线运行的代码演练场(Playground), 基于React + Quarkus (Grallvm) 构建, 目前已支持Java, Golang, Python, Nodejs, Javascript等.
# 在线 demo
https://onlinecompiler.github.jansora.com
部署方案分为三种
1. 物理机部署
2. Docker 部署
3. Kubernetes 部署
# 物理机部署
> 需要自备 `java jdk 17`(jdk17+) `python3`(3.6+) `golang` `nodejs` (14+) 可执行环境
> 请通过 `java -version` `python3` `go version` `node -v` 验证运行环境
> 需要提供足够的权限来创建临时文件以及运行权限
下载主分支代码
1. 编译前端静态资源 `cd frontend && yarn build` (需要 nodejs npm 环境支持)
2. 拷贝前端静态资源到后端文件夹 `cp -r frontend/build/* quarkus/src/main/resources/META-INF/resources`
3. 编译后端可执行文件 `cd quarkus && quarkus build --native`
> 编译 docker 镜像内可用的可执行文件请使用命令 `cd quarkus && quarkus build --native -Dquarkus.native.container-build=true -Dquarkus.native.container-runtime=docker`
4. 执行 `./quarkus/target/onlinecompiler-1.0.0-SNAPSHOT-runner` 应用即可正常启动
启动成功日志如下
```bash
root@parallels-Parallels-Virtual-Platform:/data/Github/OnlineCompiler/quarkus/target# ./onlinecompiler-1.0.0-SNAPSHOT-runner
__ ____ __ _____ ___ __ ____ ______
--/ __ \/ / / / _ | / _ \/ //_/ / / / __/
-/ /_/ / /_/ / __ |/ , _/ ,< / /_/ /\ \
--\___\_\____/_/ |_/_/|_/_/|_|\____/___/
2022-11-20 22:18:26,451 INFO [io.quarkus] (main) onlinecompiler 1.0.0-SNAPSHOT native (powered by Quarkus 2.14.0.Final) started in 1.008s. Listening on: http://0.0.0.0:8080
2022-11-20 22:18:26,513 INFO [io.quarkus] (main) Profile prod activated.
2022-11-20 22:18:26,513 INFO [io.quarkus] (main) Installed features: [cdi, resteasy-reactive, resteasy-reactive-jackson, smallrye-context-propagation, vertx]
```
访问 http://localhost:8080 即可正常使用
# Docker 部署
## 获取镜像
1. 创建应用数据目录 `mkdir /app && cd /app`
2. 拉取镜像 `docker pull ccr.ccs.tencentyun.com/jansora/onlinecompiler:7.2`
## 部署到 docker
启动镜像 `sudo docker run -d -p 9003:8080 --name onlinecompiler -v /app/data:/app/data ccr.ccs.tencentyun.com/jansora/onlinecompiler:7.2`
> /app/data 为临时数据存放, 去掉也无妨
浏览器输入 localhost:9003 即可看到启动成功
监测日志 `docker logs -f onlinecompiler`
## kubernetes 部署
> kubernetes 1.19 版本
参考 kubernetes 子目录
deployment -> service -> yaml 部署
```
git clone https://github.com/Jansora/OnlineCompiler.git
cd OnlineCompiler/kubernetes
# 部署 deployment
# 如果不需要存储 share 数据无需外挂 pvc
kubectl -f onlinecompiler-deployment.yaml
# 部署 service
kubectl -f onlinecompiler-service.yaml
# 部署网关
kubectl -f nginx-ingress-controller.yaml
# 部署网关配置
# 需要调整域名配置以适配当前 k8s 集群
kubectl -f github-ingress.yaml
```
> 安装教程以linux下操作为准, 但windows也支持安装, windows用户请根据以上步骤自行搭建安装教程
没有合适的资源?快使用搜索试试~ 我知道了~
毕设&课设:支持在线运行(Demo)和分享的代码演练场(Playground), 基于React + Quark.zip

共96个文件
java:29个
jsx:12个
js:8个

1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 184 浏览量
2025-07-11
09:38:06
上传
评论
收藏 153KB ZIP 举报
温馨提示
经导师指导并认可通过的大作业设计项目源码,适用人群:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业或毕业设计,作为“参考资料”使用。
资源推荐
资源详情
资源评论






























收起资源包目录







































































































































共 96 条
- 1
资源评论


Qing_er爱吃山竹
- 粉丝: 3707
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 全面详尽的病死猪解剖操作程序.docx
- 科目汇总表(代试算平衡表)Excel模板.xls
- 成功项目经理系列教程之—建设高效团队.ppt
- 计算机专业毕业论文人才招聘系统的实现.doc
- 安徽某办公楼工程质量总结(通病防治).doc
- 济宁二号煤矿2008年度防治冲击地压计划(定稿).doc
- 保定市干部学习网络平台考试子系统.doc
- 创陕西省级文明工地计划书(高层住宅).doc
- 外墙装饰-玻璃幕墙.doc
- 车库顶板排水保护系统施工组织设计方案.doc
- 神经网络算法在ENVI上的集成与优化-软件技术.doc
- 配电架空线路标准施工工艺.ppt
- SAS-4-回归与相关分析.ppt
- 大型储油罐球罐用钢07MnNiMoVDR交货状态调质.doc
- 桩基钢筋笼加工交底书.doc
- 毕业论文--基于单片机的电脑时钟设计.doc
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制
