some-scripts之Oracle Cloud免费VPS:oracle-cloud.js自动循环创建两台VM实例实战教程

发布时间:2026/10/11 10:17:44

some-scripts之Oracle Cloud免费VPS:oracle-cloud.js自动循环创建两台VM实例实战教程 some-scripts之Oracle Cloud免费VPSoracle-cloud.js自动循环创建两台VM实例实战教程【免费下载链接】some-scriptsSome random scripts项目地址: https://gitcode.com/gh_mirrors/so/some-scriptsOracle Cloud免费VPSAlways Free 永久免费层级一直是白嫖党们的心头好AMD 与 ARM 实例配置慷慨、流量充足但热门区域的免费实例常年缺货手动创建几乎全靠运气。开源项目 some-scripts 中的oracle-cloud.js脚本正是为解决实例缺货、手动重试太累这一痛点而生它会自动循环调用 Oracle 官方命令行工具 OCI CLI交替重试创建两台 VM 实例直到两台全部创建成功为止。本教程将带你完成环境准备、参数配置、一键运行与常见报错排查轻松拿下属于你的两台 Oracle Cloud 免费虚拟机。一、什么是Oracle Cloud免费VPSAlways Free 永久免费资源一览Oracle Cloud 的 Always Free 层级即常说的 Oracle Cloud免费VPS包含两类永久免费的计算实例AMD 实例VM.Standard.E2.1.Micro1核 1GB 内存适合跑轻量服务ARM 实例Ampere A1 系列最高 4核 24GB 内存视区域库存而定性价比极高此外还附赠10TB 出站流量、两块合计 200GB 的块存储等资源。正因为免费额度诱人全球用户都在蹲守热门区域创建时经常提示Out of capacity容量不足这也是本脚本存在的最大意义。二、为什么需要自动循环创建VM实例脚本手动创建免费实例的痛苦抢过机器的朋友想必都深有体会控制台反复点击创建失败后还要重新填写一堆表单不知道何时补货只能靠运气蹲守或频繁刷新想创建两台实例工作量直接翻倍oracle-cloud.js脚本把重复点击变成了自动循环重试它模拟你手动执行oci compute instance launch命令失败后稍作休息再次尝试直到两台 VM 实例全部创建成功全程无需人工干预。三、oracle-cloud.js 脚本原理如何自动创建两台VM脚本位于仓库的oracle/oracle-cloud.js配套说明见oracle/README.md。核心机制非常清晰双实例交替脚本内置name1、name2两台机器的名称每次循环交替尝试不让某台机器独占重试机会命令驱动通过 Node.js 的child_process.exec调用 OCI CLI 的oci compute instance launch命令并自动注入你的 SSH 公钥成功即止某台机器创建命令返回成功stdout时立即标记该机器完成两台都完成则退出循环失败重试返回错误stderr时自动解析并打印错误状态与消息休眠片刻后进入下一轮尝试整个流程由init()主循环驱动直到machine1Finished与machine2Finished同时为真才结束真正实现挂着脚本睡大觉醒来机器已到手。四、准备工作安装OCI CLI并完成认证脚本依赖 Oracle 官方命令行工具 OCI CLI这一步是运行前的关键前置条件安装 OCI CLI通过 Oracle 官方安装脚本或使用pip install oci-cli完成安装安装完成后执行oci --version验证是否成功配置认证运行oci setup config按提示输入租户 OCID、用户 OCID、区域并生成 API 密钥已配置过密钥文件的话可直接确认~/.oci/config内容无误验证可用性执行oci iam availability-domain list若能正常返回可用域列表说明认证配置已经生效五、配置脚本参数五大关键值获取方法打开oracle/oracle-cloud.js文件顶部有 9 个配置项其中 6 个需要替换为你的实际信息配置项说明获取方式domainID可用域如xUCN:AP-SEOUL-1-AD-1oci iam availability-domain listimageID系统镜像 OCIDoci compute image list --compartment-id 你的compartmentsubnetID子网 OCIDoci network subnet list --compartment-id 你的compartmentshape实例规格默认VM.Standard.E2.1.Micro免费 AMD 实例固定此值sshKeySSH 公钥字符串本地生成的id_rsa.pub文件内容compartmentID区间CompartmentOCID控制台租户详细信息页或oci iam compartment list其余name1、name2为两台实例的显示名称默认free-kr1、free-kr2sleepTime为两次重试之间的间隔毫秒数默认 5000ms抢机高峰期可适当调低以提升尝试频率。六、一键运行自动循环创建两台VM实例配置完成后在脚本所在目录执行node oracle-cloud.js运行后控制台会持续输出类似如下的日志Started free-kr1: 1 Creating free-kr2: 1 Creating Err: free-kr1 Out free-kr1: 2 Creating free-kr2: 1 Finished!出现Err该台实例创建失败脚本自动进入下一轮重试出现Out该台实例创建成功被标记为Finished!两台都显示Finished!时脚本自动退出去控制台即可看到两台新创建的 VM 实例七、断点续跑中断后无需从头再来脚本贴心地实现了状态保存机制每轮尝试后会把两台机器的累计重试次数写入同目录下的oracle-cloud.json文件。即使你中途按CtrlC退出下次运行脚本也会自动读取该文件、从上次进度继续不会重复计数。若想彻底重来删除oracle-cloud.json即可重新计次。八、常见报错与排查技巧Out of capacity最典型的缺货提示无需处理保持脚本持续运行等待补货即可Auth 相关错误多为 OCI CLI 认证配置有误重新执行oci setup config或检查~/.oci/config中的密钥与租户信息404 / InvalidParameter多半是imageID、subnetID、compartmentID填写错误对照上表逐一核对想抢 ARM 实例将shape改为 ARM 规格、imageID换成对应 ARM 镜像后重跑即可脚本逻辑完全通用九、总结借助 some-scripts 项目中的oracle-cloud.js你无需再守着控制台反复点击即可自动循环创建两台 Oracle Cloud免费VPS 实例。配上双实例交替、失败重试与断点续跑三大机制抢到机器的概率大幅提升。还在为免费实例缺货发愁赶紧配置好参数让脚本替你打工吧【免费下载链接】some-scriptsSome random scripts项目地址: https://gitcode.com/gh_mirrors/so/some-scripts创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
延伸阅读

更多相关文章

2026/10/9 18:58:06

基于SpringBoot+Vue的员工绩效管理系统(源码+讲解视频+LW)

联系博主 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 …

2026/10/11 10:12:58

OpenCV双目视觉实战:从标定到三维点云重建全流程

简介:这份资源面向计算机视觉初学者与进阶开发者,提供一套基于双目视觉的深度图像生成与三维空间重建完整实现方案。内容围绕双目相机采集、OpenCV双目标定、畸变校正、极线对齐、视差计算、深度图空洞填充及三维点云重建等核心环节展开,可帮…

2026/10/11 10:12:58

火灾火焰目标检测数据集:VOC/COCO/YOLO格式转换与YOLOv8训练指南

简介:YOLO火灾火焰目标检测数据集面向目标检测入门者及消防安全算法工程师,收集自真实场景、数据场景丰富,标注框质量高,可直接用于YOLO系列模型训练与验证。压缩包共2000个文件,大小约103.66MB,核心包含10…

2026/10/11 10:12:58

飞行原理课件:从大气分层到伯努利方程的完整知识链路

简介:这份PPT课件面向航空航天专业学生及飞行原理初学者,系统梳理飞行器飞行原理的核心概念与基本规律,可作为课程学习、复习备考与知识框架搭建的参考材料。资源为单个pptx文件,压缩包约36.63MB,内容以章节化幻灯片呈…

2026/10/11 10:07:58

PyCharm配置Docker解释器:实现容器内断点调试与统一开发环境

这两年我帮不少同事和团队调Python项目,听得最多的一句就是“我本地跑得好好的啊”,然后代码一到别人机器上就崩给你看。后来我养成了一个习惯:不管新项目还是老项目,先在PyCharm里接好本地Docker解释器,再动手写代码。…

2026/10/11 0:02:13

Python调用Gemini Structured Outputs实现工单路由门禁

客服工单最怕的不是模型“答错一句话”,而是它给出一段看起来合理的说明,程序却从中猜错优先级。通俗做法是:要求模型只交 JSON(JavaScript Object Notation,轻量数据格式),再让代码验证它。Gem…

2026/10/11 0:02:13

Spring Boot超市进销存系统毕设实战:从需求拆解到答辩通关

最近带的一个学生项目组里,有A同学跑来问我:选什么毕设题目最稳妥,既能让评审老师觉得工作量够,又不会在答辩时被问到语无伦次。我第一反应就是推荐基于Spring Boot的超市仓库管理系统——也就是超市进销存系统。这个题目乍一看平…

2026/10/11 0:02:13

Flutter StatefulWidget 生命周期核心解析

很多刚开始接触 Flutter 的朋友,在看完一堆“Hello World”和基础组件之后,大概率都会撞上同一堵墙:StatefulWidget 里那堆 initState、build、dispose 方法,到底什么时候被调用?为什么顺序是那样?在里面到…

2026/10/11 0:02:13

Python调用Gemini Structured Outputs实现工单路由门禁

客服工单最怕的不是模型“答错一句话”,而是它给出一段看起来合理的说明,程序却从中猜错优先级。通俗做法是:要求模型只交 JSON(JavaScript Object Notation,轻量数据格式),再让代码验证它。Gem…

2026/10/11 0:02:13

Spring Boot超市进销存系统毕设实战:从需求拆解到答辩通关

最近带的一个学生项目组里,有A同学跑来问我:选什么毕设题目最稳妥,既能让评审老师觉得工作量够,又不会在答辩时被问到语无伦次。我第一反应就是推荐基于Spring Boot的超市仓库管理系统——也就是超市进销存系统。这个题目乍一看平…

2026/10/11 0:02:13

Flutter StatefulWidget 生命周期核心解析

很多刚开始接触 Flutter 的朋友,在看完一堆“Hello World”和基础组件之后,大概率都会撞上同一堵墙:StatefulWidget 里那堆 initState、build、dispose 方法,到底什么时候被调用?为什么顺序是那样?在里面到…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑