🌐 甲骨文配置优化全系列学习路线图
🧭 适合对象:甲骨文云新手 / 自建服务初学者
🎯 目标:从零开始,构建安全、稳定、自动化的云环境
🧩 一、实例结构与资源规划
目标: 学会在甲骨文(Oracle Cloud)上正确规划免费资源。
你将掌握:
- ARM 4C / 24GB 主机与 AMD 微实例的区别与最佳搭配
- 存储(Boot Volume / Block Volume)管理与扩容
- 区域与可用域的选择技巧(防止资源不可创建)
- 使用 SSH / Cloud Shell 管理实例
实践成果:
✅ 成功创建 ARM 主机(4C / 24GB / 100~200GB)
✅ 创建两台 AMD 1C/1G 小实例作辅助机
✅ 掌握快照与挂载卷的操作
🧱 一、确认你当前资源情况
1️⃣ 登录甲骨文云控制台:
👉 https://cloud.oracle.com/
2️⃣ 左侧菜单进入
“Compute → Instances”
可以看到你已有的 ARM 实例(名称类似于 instance-2025…)。
3️⃣ 点击该实例 → 查看详情页:
- “Shape” 显示为 Ampere A1 ✅
- “OCPUs” 为 4 ✅
- “Memory” 为 24GB ✅
- “Boot Volume” 大小约 100GB ✅
👉 如果以上都正确,说明当前 ARM 主机配置已经达到免费上限状态。
💾 二、添加第二块 100GB 磁盘(Block Volume)
目标:增加 100GB 空间,用作数据盘、备份、Docker 卷。
【控制台操作】
1️⃣ 在左侧菜单进入:
Storage → Block Volumes
2️⃣ 点击右上角「Create Block Volume」
填写以下内容:
| 选项 | 值 |
| Name | data-volume-100g(你可随意取) |
| Availability Domain | 与 ARM 实例相同(例如:AD-1)⚠️ |
| Size | 100 GB |
| Performance | Balanced (默认即可) |
点「Create」。
3️⃣ 等几秒后,状态变为 Available。
4️⃣ 点击进入该卷 → 上方选择「Attach to Instance」
- Instance:选择你的 ARM 主机
- Attachment Type:iSCSI(默认)
- 点击「Attach」
【SSH 操作 – 系统内挂载】
1️⃣ SSH 登录你的 ARM 实例
(即你平时连接博客那台,命令类似)
ssh ubuntu@你的_IPv4
2️⃣ 查看系统识别的磁盘:
lsblk
你会看到类似:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 100G 0 disk
└─sda1 8:1 0 100G 0 part /
sdb 8:16 0 100G 0 disk ← 这是新卷
3️⃣ 创建分区并格式化:
sudo mkfs.ext4 /dev/sdb
4️⃣ 创建挂载点:
sudo mkdir /mnt/data
sudo mount /dev/sdb /mnt/data
5️⃣ 验证是否挂载成功:
df -h
应能看到:
/dev/sdb 99G 1G 94G 1% /mnt/data
6️⃣ 设置开机自动挂载:
编辑 /etc/fstab
sudo nano /etc/fstab
在最后一行加入:
/dev/sdb /mnt/data ext4 defaults 0 0
保存退出后执行:
sudo mount -a
✅ 至此,新卷挂载完成。
🖥️ 三、创建两台 AMD x86 免费实例
目标:预留后续的“反代”和“监控机”。
1️⃣ 回到控制台 → Compute → Instances → Create Instance
2️⃣ 基本信息:
| 项 | 值 |
| Name | amd-proxy(第一台) |
| Image | Ubuntu 22.04(推荐) |
| Shape | VM.Standard.E2.1.Micro |
| Network | 默认 VCN 即可 |
| SSH Keys | 上传你 ARM 机器用的同一把公钥(方便统一登录) |
⚠️ “Shape” 选项点「Change shape」后,在「AMD」分类中找到:
VM.Standard.E2.1.Micro
3️⃣ 存储默认 50GB,不要改。
点击「Create」。
等待状态变成 Running。
👉 同样方式再创建一台:
| Name | amd-helper |
| Shape | VM.Standard.E2.1.Micro |
🧩 四、验证 SSH 登录(确保准备就绪)
ARM 主机的 SSH 公钥如果是 ~/.ssh/id_rsa.pub,可以直接登录两台新建 x86:
ssh ubuntu@AMD1的公网IP
ssh ubuntu@AMD2的公网IP
首次会提示 “Are you sure you want to continue connecting (yes/no)?”
输入 yes 即可。
然后你应能看到:
Welcome to Ubuntu 22.04 LTS …
说明一切正常。🎉
✅ 本章总结:「甲骨文配置优化一」目标完成
你现在拥有:
| 类型 | 名称 | 规格 | 用途 |
| ARM 实例 | main-arm | 4C / 24G / 100G + data卷100G | 主服务器、博客、节点 |
| x86 实例1 | amd-proxy | 1/8C / 1G / 50G | 反向代理、监控前端 |
| x86 实例2 | amd-helper | 1/8C / 1G / 50G | 隧道、辅助脚本 |
✅ 磁盘扩展完毕
✅ 两台小机已启动
✅ 全部可 SSH 登录
🌍 二、网络与反向代理配置
目标: 掌握网站、节点、面板的域名接入与反代技术。
你将掌握:
- Cloudflare 接入、SSL 证书与 DNS 配置
- Nginx 反向代理与负载均衡
- IPv4 / IPv6 双栈接入
- 域名邮箱、API 调用的基本概念
实践成果:
✅ 用 Cloudflare 为网站提供 HTTPS 保护
✅ 使用 Nginx 配置反向代理到你的博客或面板
✅ 掌握简单的端口转发与安全策略
🧩 第一节:关键概念讲解(通俗理解)
内容包括:
- 什么是「正向代理」与「反向代理」的区别
- 为什么要“反代博客”
- 什么是“源站 IP 暴露”和被封的风险
- Nginx / Caddy 在其中的作用
👉 让你从图示和实例中,彻底理解“反代”是如何保护你的 ARM 节点的。
🖥️ 第二节:准备 x86 小机环境
- 登录你的 amd-proxy 实例
- 更新系统、安装 Nginx
- 开放 80 / 443 端口
- 验证 Nginx 是否正常运行
🌐 第三节:实现 Nginx 反向代理
- 编辑 /etc/nginx/sites-available/blog.conf
- 配置反代指向你的 ARM 博客 IP(IPv4 或 IPv6)
- 验证访问:外界访问 x86 公网 IP → 博客内容显示
👉 实际上就是:
访客 → x86小机(Nginx) → ARM主机(Blog)
☁️ 第四节:Cloudflare 接入与隐藏源站
- 将你的博客域名托管到 Cloudflare
- 添加两条解析记录:
- A → 指向 x86 公网 IPv4
- 启用小橙云 ☁️(表示开启 CDN)
- 验证:
- 通过域名访问正常
- 源站(ARM IP)不再被直接暴露
👉 这样即使 ARM 被扫描,也不会因 IP 暴露被封。
🔒 第五节:可选优化与加分任务
- 为博客开启 HTTPS(Let’s Encrypt 或 Cloudflare Flexible SSL)
- 限制 Nginx 仅允许 Cloudflare IP 访问(进一步保护源站)
- 学会查看 Nginx 访问日志与状态
📗 本章成果
完成后你将:
✅ 掌握反向代理工作原理
✅ 配置 Nginx 代理博客流量
✅ 通过 Cloudflare 隐藏源站 IP
✅ 让博客具备长期稳定的公网访问能力
⚙️ 三、IPv6 跳板与隧道部署
目标: 让 IPv6 节点和 Warp IPv4 出口结合,实现防封与稳定访问。
你将掌握:
- IPv6 网络原理与 Oracle IPv6 配置
- 使用 sing-box / warp-svc 构建 IPv6 → IPv4 跳板
- 利用 IPv6-only VPS 提供服务给 IPv4 客户端
- Warp 出口的性能调优与验证
实践成果:
✅ IPv6 可用,能稳定访问 ChatGPT / OpenAI / Google
✅ sing-box 配置多出口与智能分流
✅ 学会检测 IPv6 连通性与优先级
第一节:理论入门与网络结构图
- IPv4 与 IPv6 的根本区别(用简单例子说明)
- 为什么甲骨文云的 IPv6 资源特别有价值
- IPv6 跳板的意义
- Warp IPv4 出口的作用
- 完整网络拓扑图(ARM ↔ x86 ↔ Warp ↔ 外网)
第二节:ARM 主机开启 IPv6 转发
- 检查 IPv6 是否启用
- 编辑 /etc/sysctl.conf 开启转发功能
- 验证能否 ping 通 IPv6 目标(如 ipv6.google.com)
第三节:x86 小机通过 ARM 跳板访问 IPv6
- x86 小机配置 sing-box 或 SOCKS 代理
- ARM 主机作为 IPv6 服务器中转
- 验证:x86 能访问 IPv6-only 网站(如 ipv6-test.com)
第四节:加入 Warp IPv4 出口
- 在 ARM 主机上部署 warp-cli 或 sing-box Warp 出口
- 配置 IPv6 出口优先策略
- 验证:x86 通过 ARM + Warp 出口访问 ChatGPT、Google 等
- 说明 IPv4 Warp + IPv6 原生双通道的原理
第五节:实践总结与自动化脚本
- 编写一键启动/停止 IPv6 跳板脚本
- 设置 systemd 自启服务
- 验证连接稳定性与速率
📗 本章成果
完成后你将能:
✅ 理解 IPv6 跳板、隧道、Warp 出口的本质
✅ 让 IPv4-only 小机访问纯 IPv6 网络
✅ 拥有一套自由、稳定的双栈网络出口结构
✅ 能为后续 AI / 代理 / API 节点部署打下基础
🐳 四、Docker 与服务集成实践
目标: 让服务器实现多服务并存、统一管理、数据持久化。
你将掌握:
- Docker、镜像、容器、卷的概念
- 安装 Docker 与 Portainer(可视化面板)
- 一键部署常用服务:
- Nginx Proxy Manager(域名管理)
- Uptime-Kuma(网站监控)
- AdGuard Home(DNS 去广告)
- WordPress / Ghost(博客)
- Docker 备份与安全优化
实践成果:
✅ 成功搭建 Portainer 面板
✅ 多个容器化服务协同运行
✅ 统一反代管理、持久化数据、安全配置
第一节:Docker 与容器化入门
- 什么是容器?为什么要用 Docker?
- Docker vs 虚拟机(直观对比)
- 镜像(image)、容器(container)、卷(volume)三个关键概念
- Portainer 面板简介(图形化 Docker 管理)
第二节:安装 Docker 与 Portainer
- 在 ARM 主机上执行 Docker 安装命令
- 启动 Docker 服务并设置开机自启
- 安装 Portainer 管理面板:
- docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock portainer/portainer-ce
- 浏览器访问 http://你的IP:9000
- 设置管理员密码、了解界面
第三节:部署常用服务
1️⃣ Nginx Proxy Manager(管理多域名反代)
2️⃣ Uptime-Kuma(监控你的节点和网站)
3️⃣ AdGuard Home(本地 DNS + 去广告)
4️⃣ WordPress / Ghost(博客容器化版本)
👉 每个服务都会包含:
- 部署命令(docker-compose 或 Portainer 可视化配置)
- 挂载路径(保证数据不丢失)
- 基本管理操作
第四节:数据卷与备份
- 如何让容器数据持久化(Volume)
- 使用 rclone 同步备份到 OneDrive / Cloudflare R2
- 自动备份脚本编写与计划任务(cron)
第五节:性能与安全优化
- 合理分配内存与 CPU(避免 Docker 占满)
- 限制容器网络访问范围
- 设置 Fail2ban、防止爆破
- Docker 清理与日志控制
📗 本章成果
完成后你将能:
✅ 安装并熟练使用 Docker + Portainer
✅ 在 ARM 实例上运行多个容器化服务
✅ 用 Nginx Proxy Manager 统一管理反代
✅ 实现自动化备份与数据保护
✅ 构建稳定、整洁、可视化的云环境
🧠 五、自动化与可观测性
目标: 打造“无人值守”的智能化云系统。
你将掌握:
- cron 定时任务与脚本自动化
- 服务掉线自动重启、日志清理
- Telegram / 邮件告警通知
- 部署监控系统(Netdata、Uptime-Kuma)
- 性能图表与健康检测
实践成果:
✅ 实现自动修复与自检测
✅ Telegram 实时推送服务状态
✅ 可视化监控 CPU / 内存 / 网络 / 容器运行
✅ 一键脚本维护系统
第一节:定时任务与自动化基础(cron)
- 什么是 cron?在 Linux 上如何使用?
- 常用命令:查看任务、添加任务、调试日志
- 示例:
- # 每 10 分钟检测 sing-box 是否在运行,若停止则重启
- */10 * * * * /root/scripts/check_singbox.sh
- 编写 check_singbox.sh 脚本,自动检测服务
第二节:自动化恢复与备份
- 结合 systemctl 自动重启关键服务(Docker、Nginx、sing-box 等)
- 利用 rclone 定期上传备份
- 日志清理与旧文件归档
- “一键重启与一键修复”脚本设计
第三节:Uptime-Kuma + Telegram 告警
- 在 Docker 中部署 Uptime-Kuma(如果上一章已装,直接配置即可)
- 添加:
- 你的博客
- sing-box 节点
- IPv6 跳板
- 设置 Telegram 机器人推送:
- 创建 bot
- 获取 BOT_TOKEN 和 chat_id
- 绑定到 Uptime-Kuma 通知
- 设置“服务掉线→手机即时提醒”
第四节:系统监控与性能可视化
- 安装 Netdata(轻量实时监控):
- bash <(curl -Ss https://my-netdata.io/kickstart.sh)
访问 http://你的IP:19999 查看 CPU、内存、磁盘、网络情况
- 进阶可选:
- Prometheus + Grafana(高级可视化)
- Node Exporter + Alertmanager(大规模监控)
第五节:整合与总结
- 把所有自动化任务整理在 /root/scripts/ 下
- 设置备份策略(每日/每周)
- 添加 Telegram “系统健康报告”推送
- 优化安全(Fail2ban、SSH 限制)
- 编写“自我检查脚本”:
- bash /root/scripts/health_check.sh
自动检测 CPU 负载、内存、磁盘、网络、容器运行状态。
📗 本章成果
完成后你将能:
✅ 编写定时任务自动维持服务健康
✅ 自动备份数据与日志
✅ Telegram 实时接收告警
✅ 直观查看服务器资源利用率
✅ 构建“无人值守、自动修复”的智能系统
🎯 全系列成果总结
| 章节 | 主题 | 核心成果 |
| 一 | 实例结构与资源规划 | ARM + AMD 实例合理分配 |
| 二 | 网络与反向代理 | Cloudflare、Nginx、博客接入 |
| 三 | IPv6 跳板与隧道 | Warp + IPv6 出口代理 |
| 四 | Docker 与服务集成 | 容器化多服务环境 |
| 五 | 自动化与可观测性 | 自愈系统 + 告警 + 性能可视化 |
🌈 最终成就
当你完成这五章后,你将拥有:
💻 一台资源利用最大化的 Oracle Cloud 实例
🧩 一个可容器化运行多服务的高可用系统
🛰️ 一个具备 IPv6 跳板 + Warp 出口的防封节点
⚙️ 一个自动检测、自愈、可告警的稳定环境
🔐 一个完整可维护、可扩展的“自建云生态”
💬 建议学习顺序
| 阶段 | 推荐时间 | 内容重点 |
| 第一章 | 1~2 天 | 资源规划与实例管理 |
| 第二章 | 2~3 天 | 网络配置与反代 |
| 第三章 | 3~5 天 | IPv6 跳板与 Warp |
| 第四章 | 3~5 天 | Docker 容器化部署 |
| 第五章 | 3~7 天 | 自动化与监控系统 |
发表回复