oci-helper(Y探长) 是一个基于 Spring Boot 3 + JDK 21 开发的轻量级 OCI 管理面板,后端采用 SQLite 存储,整体通过 Docker 容器化运行,并支持一键脚本结合 docker-compose 快速部署,无需在本机安装额外环境。项目面向 Oracle Cloud(OCI)的日常运维与自动化场景,提供实例管理、网络与 IP 操作、任务持久化、日志实时查看、多租户管理等功能,帮助用户以更直观、安全、高效的方式管理云资源。得益于 Spring Boot 3 的现代化框架特性与 JDK 21 的虚拟线程机制,系统能够更好地应对高并发请求,降低资源消耗;结合 Docker 的隔离与一致性,保证了跨环境部署的安全与稳定。
⚠️ 因开机、换IP频率过高而导致的封号本人概不负责。- ❤️开发此项目纯属个人爱好,无后门,放心使用。
- 🔒强烈建议不要裸HTTP访问,应使用Nginx反向代理配置HTTPS访问。
- 🔐建议使用密钥登录服务器,防止服务器被SSH爆破导致API数据及密钥泄露。
- 📃记得定时清理docker日志~
- 支持同时批量添加多个租户配置信息,所有分页列表都支持模糊搜索、状态筛选。
- 支持更改实例配置、引导卷配置、一键附加ipv6、一键放行所有端口、实例列表、引导卷列表、一键开启免费AMD实例下行500Mbps、一键自动救援/缩小硬盘(默认47GB)、安全列表、实时流量统计(分钟级别)、一键自动更新等功能。⭐⭐
- 根据多个CIDR网段更换实例公共IP,遇到请求频繁等异常会直接忽略,不影响下一次执行,直至更换到指定IP段的IP。支持更换IP后自动更新 Cloudflare DNS 记录功能。⭐⭐
- 多租户同时批量开机,后台一直运行,直至开机成功。⭐
- 支持断点续抢,配置以及抢机任务都保存在本地数据库,服务重启会继续执行抢机任务,无需重复配置。⭐⭐
- 支持多区号(配置项以region区分),例:我有一个4区号,则新增4个配置,修改region即可,其他配置项都一样。
- 支持前端页面实时查看后端日志。
- 支持加密备份恢复,实现无缝数据迁移,方便快捷。⭐⭐
- 支持MFA登录验证功能(不是龟壳的,是我这个面板的登录),保证服务的安全性。
- 支持分页查询、添加、更新、删除 Cloudflare 多个域名的 DNS 记录。⭐
- 支持 Telegram 机器人简单操作,服务成功部署后向机器人发送
/start选择操作。 - 支持类似于甲骨文云 Cloud Shell 控制台功能,方便使用 netboot 救砖。⭐⭐
- 支持IP信息查询(部署成功后访问 http://ip:8818/ip-info )以及首页显示全球服务器地图(可精确到街道的店铺),点亮全球。
- 支持 AI 聊天助手,基于 硅基流动 免费API,可免费无限次调用。
bash <(wget -qO- https://github.com/Yohann0617/oci-helper/releases/latest/download/sh_oci-helper_install.sh)此命令也可以用于更新镜像并重启容器,不会删除已有的配置。
- 🔔 安装完成后浏览器直接访问
http://ip:8818即可访问(建议之后通过https访问),账号密码可通过脚本进行修改。 如需自己手动修改账号密码,更改/app/oci-helper/application.yml中的配置并执行docker restart oci-helper重启docker容器即可。 - 📃 如需查看完整日志,执行:
docker logs oci-helper >> /app/oci-helper/oci-helper.log导出日志文件自行查看。
🎄 部署完成后,/app/oci-helper的目录结构如下:
root@yohann:/app/oci-helper# tree
.
├── keys # 是一个目录,存放所有的pem秘钥文件
├── application.yml # 项目配置文件,如需更改网页账号密码在此处更改,并执行 docker restart oci-helper 重启容器
├── docker-compose.yml # docker-compose部署所需配置文件
├── oci-helper.db # 项目数据库文件
└── update_version_trigger.flag # 注意是一个文件,不是目录,用于版本自动更新
- 2025年07月08日——新增一键升级功能,首次更新时需要先删除旧的
docker-compose.yml文件,再执行一键脚本。如有将部署脚本下载到本地的用户也需要重新下载。具体参考releases中v3.0.1版本要求。- 2025年07月04日——升级了部分依赖以及SDK,首次更新时需要先删除旧的
application.yml文件,再执行一键脚本。具体参考releases中v3.0.0版本要求。- 2025年06月04日——新增了支持 Cloud Shell 控制台功能,更新之前需要先删除旧的
docker-compose.yml文件,再执行一键脚本。- 2024年11月30日——数据库新增了一张表,TG、钉钉消息通知都改成了在web页面配置,如遇到配置异常,请删除
application.yml文件,然后重新执行一键命令,修改自定义的账号密码,docker restart oci-helper重启容器即可。
如果需要配置HTTPS,又想要 VNC 连接救砖,必须按照以下配置
☜ 点击查看 👨💻
这一步是保证服务端口只有服务器内部网络可以访问,外部无法直接通过IP+端口的方式访问服务,提高安全性。修改完之后需要执行
cd /app/oci-helper && docker-compose down && docker-compose up -d重启服务或者直接再执行一次一键脚本。
/app/oci-helper/docker-compose.yaml:
services:
watcher:
image: ghcr.io/yohann0617/oci-helper-watcher:main
container_name: oci-helper-watcher
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /usr/local/bin/docker-compose:/usr/local/bin/docker-compose
- /app/oci-helper/docker-compose.yml:/app/oci-helper/docker-compose.yml
- /app/oci-helper/update_version_trigger.flag:/app/oci-helper/update_version_trigger.flag
- /app/oci-helper/oci-helper.db:/app/oci-helper/oci-helper.db
oci-helper:
image: ghcr.io/yohann0617/oci-helper:master
container_name: oci-helper
restart: always
ports:
- "127.0.0.1:8818:8818" # 修改项
volumes:
- /app/oci-helper/application.yml:/app/oci-helper/application.yml
- /app/oci-helper/oci-helper.db:/app/oci-helper/oci-helper.db
- /app/oci-helper/keys:/app/oci-helper/keys
- /app/oci-helper/update_version_trigger.flag:/app/oci-helper/update_version_trigger.flag
networks:
- app-network
websockify:
image: ghcr.io/yohann0617/oci-helper-websockify:master
container_name: websockify
restart: always
ports:
- "127.0.0.1:6080:6080" # 修改项
depends_on:
- oci-helper
networks:
- app-network
networks:
app-network:
driver: bridge修改完记得重启Nginx
location /myvnc/ {
proxy_pass http://127.0.0.1:6080/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
send_timeout 10800;
proxy_read_timeout 10800;
proxy_send_timeout 10800;
}
location / {
add_header Cache-Control no-cache;
proxy_pass http://127.0.0.1:8818;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
send_timeout 10800;
proxy_read_timeout 10800;
proxy_send_timeout 10800;
}☜ 点击查看 👨💻
创建密钥文件存放目录/app/oci-helper/keys。
mkdir -p /app/oci-helper/keys && cd /app/oci-helper下载 Releases 中的application.yml、oci-helper.db、docker-compose.yml以及最新 Release 版本的sh_oci-helper_install.sh这4个文件到/app/oci-helper目录下,并修改application.yml部分配置。
sh_oci-helper_install.sh是部署脚本,可自行修改内容,执行之前记得先chmod +x /app/oci-helper/sh_oci-helper_install.sh。
chmod +x /app/oci-helper/sh_oci-helper_install.sh && cd /app/oci-helper && ./sh_oci-helper_install.sh此脚本也可以用于更新镜像并重启容器,不会删除已有的配置。
部署脚本
部署在1C1G机器上运行一个月后资源占用情况
主页
新增配置
更换IP并自动更新 Cloudflare 域名 DNS 记录
编辑实例
TG操作