This commit is contained in:
2025-10-25 20:11:21 +02:00
commit fd37421245
700 changed files with 211892 additions and 0 deletions

View File

@@ -0,0 +1,280 @@
# Oracle Cloud iPad Development Environment
**Status:** Ready to Build ✅
**Last Updated:** 2025-10-25
A cloud-based development environment accessible from iPad, hosted on Oracle Cloud Free Tier for $0/month.
---
## 📋 Quick Links
- **[IMPLEMENTATION_PLAN.md](./IMPLEMENTATION_PLAN.md)** ⭐ Start here! Complete step-by-step build guide
- **[archive/ALTERNATIVES_CONSIDERED.md](./archive/ALTERNATIVES_CONSIDERED.md)** - Deep dive into alternatives we researched
- **[archive/QUICK_COMPARISON.md](./archive/QUICK_COMPARISON.md)** - Quick reference comparison tables
---
## 🎯 What We're Building
```
Your iPad
git.yourdomain.com (Gitea)
- Browse your knowledge repository
- Web UI like GitHub
- Manage commits and branches
code.yourdomain.com (VS Code Server)
- Full VS Code in browser
- Claude Code AI assistant
- Edit files and commit to Gitea
- Installable as iPad PWA app
captain.yourdomain.com (CapRover)
- Manage all your apps
- One-click deploy new services
```
**Monthly cost:** $0 (Oracle Cloud Free Tier)
---
## 🏗️ Tech Stack (Final Decisions)
| Component | Choice | Why |
|-----------|--------|-----|
| **Infrastructure** | Oracle Cloud ARM VM (4 cores, 24GB RAM) | Free forever |
| **Platform** | CapRover | One-click apps, built-in proxy+SSL |
| **Git Server** | Gitea v1.21.1 | CapRover one-click, 5 min setup |
| **Code Editor** | code-server | VS Code in browser, iPad PWA support |
| **AI Assistant** | Claude Code extension | Integrates with code-server |
| **Container Runtime** | Docker Engine | Required by CapRover |
| **DNS** | Cloudflare | Your existing domain |
| **SSL** | Let's Encrypt (via CapRover) | Automatic, free, renewal handled |
**Setup time:** ~3-4 hours
**Resource usage:** ~1GB RAM (23GB remaining for apps)
---
## ✨ Key Features
-**Git Server** - Gitea with GitHub-like web UI
-**VS Code in Browser** - code-server with Claude Code extension
-**iPad PWA** - Install code-server as native-like app on iPad
-**Automatic HTTPS** - Let's Encrypt SSL for all services
-**One-click Apps** - 200+ apps in CapRover marketplace
-**Free Forever** - Oracle Cloud Free Tier ($0/month)
---
## 🎨 Architecture
```
┌─────────────────────────────────────────────────────────────┐
│ Oracle Cloud - ARM VM (4 cores, 24GB RAM) │
│ Ubuntu 22.04 LTS ARM64 │
├─────────────────────────────────────────────────────────────┤
│ │
│ CapRover PaaS Platform (~300MB RAM) │
│ ├── captain.yourdomain.com │
│ │ └── CapRover dashboard │
│ │ │
│ ├── git.yourdomain.com │
│ │ └── Gitea (~200MB RAM) │
│ │ └── Your knowledge repository │
│ │ │
│ ├── code.yourdomain.com │
│ │ └── code-server (~500MB RAM) │
│ │ ├── Claude Code extension │
│ │ ├── VS Code in browser │
│ │ └── Clone repos from Gitea │
│ │ │
│ └── [Additional apps as needed] │
│ └── 200+ one-click apps available │
│ │
└─────────────────────────────────────────────────────────────┘
│ HTTPS (Let's Encrypt SSL - automatic)
Internet / iPad
```
**Resources:**
- Base stack: ~1GB RAM, ~10GB storage
- Remaining: ~23GB RAM, ~190GB storage for apps
---
## 🚀 Getting Started
1. **Read the implementation plan:** [IMPLEMENTATION_PLAN.md](./IMPLEMENTATION_PLAN.md)
2. **Follow Phase 1-10** for complete setup
3. **Estimated time:** 3-4 hours (including wait times)
### Quick Phase Overview
1. **Phase 1:** Oracle Cloud VM setup (1-2 hours)
2. **Phase 2:** Install Docker (30 min)
3. **Phase 3:** Configure DNS (10 min)
4. **Phase 4:** Install CapRover (15 min)
5. **Phase 5:** Deploy Gitea (10 min)
6. **Phase 6:** Deploy code-server (10 min)
7. **Phase 7:** Configure dev environment (30 min)
8. **Phase 8:** iPad PWA setup (5 min)
9. **Phase 9:** Backup & security (1 hour)
10. **Phase 10:** Monitoring (15 min, optional)
---
## 💡 Use Case
**Problem:** Need to edit your knowledge repository from iPad with AI assistance
**Solution:** Cloud-hosted VS Code with Claude Code, pushing to self-hosted Git server
**Your Workflow:**
1. Open code-server PWA on iPad
2. Edit files with full VS Code interface
3. Use Claude Code extension for AI assistance
4. Commit and push to Gitea
5. View changes in Gitea web UI
---
## 🔐 Oracle Cloud Free Tier Details
**Compute (Always Free):**
- 4 ARM Ampere A1 cores + 24GB RAM (we use 1 VM with all resources)
- Alternative: 2x AMD VM.Standard.E2.1.Micro (1 OCPU + 1GB RAM each) - not recommended
**Storage (Always Free):**
- 200 GB block volume storage
- 10 GB object storage (backups)
**Networking (Always Free):**
- 1 public IPv4 per instance
- 10 TB outbound data transfer/month
- VCN (Virtual Cloud Network) - unlimited
**Limitations:**
- No root volume encryption on Free Tier
- Subject to capacity constraints (ARM availability varies by region)
---
## 📊 Resource Estimates
**Base Stack:**
- CapRover: ~300MB RAM
- Gitea: ~200MB RAM
- code-server: ~500MB RAM
- **Total: ~1GB RAM**
**Your Remaining Resources:**
- ~23GB RAM for additional apps
- ~190GB storage available
**Can easily run:**
- 15-25 lightweight apps, or
- 5-10 heavier apps (Nextcloud, Jellyfin, etc.)
---
## 🛠️ Additional Apps (Optional)
All available via CapRover one-click deploy:
- **Vaultwarden** - Password manager
- **FreshRSS** - RSS reader
- **Uptime Kuma** - Monitoring
- **Nextcloud** - File storage
- **Bookstack** - Wiki/docs
- **Jellyfin** - Media server
- **Plausible** - Analytics
- **And 190+ more!**
---
## 🤔 Why These Choices?
See detailed analysis in archive:
**Gitea vs Forgejo:**
- Gitea: CapRover one-click (5 min) ✅
- Forgejo: Manual Docker setup (30 min), better security
- **Decision:** Gitea for ease, adequate security for personal use
- See: [archive/ALTERNATIVES_CONSIDERED.md](./archive/ALTERNATIVES_CONSIDERED.md#git-server-forgejo-vs-gitea)
**CapRover vs Alternatives:**
- CapRover: One-click apps, built-in proxy+SSL ✅
- Portainer: More control, manual setup per app
- Dockge: Modern but no app marketplace
- **Decision:** CapRover for TrueNAS-like experience
- See: [archive/QUICK_COMPARISON.md](./archive/QUICK_COMPARISON.md#container-management-platform)
**Docker vs Podman:**
- CapRover requires Docker Swarm
- Podman doesn't support Swarm
- **Decision:** Docker (only option)
- See: [archive/ALTERNATIVES_CONSIDERED.md](./archive/ALTERNATIVES_CONSIDERED.md#container-runtime-docker-vs-podman)
---
## 📖 Success Criteria
You'll know it's working when:
1. ✅ CapRover dashboard accessible at `https://captain.yourdomain.com`
2. ✅ Gitea accessible at `https://git.yourdomain.com`
3. ✅ code-server accessible at `https://code.yourdomain.com`
4. ✅ Claude Code extension installed and working in code-server
5. ✅ Can clone, edit, commit, and push from code-server to Gitea
6. ✅ code-server installed as PWA on iPad
7. ✅ All services have valid SSL certificates
---
## 🆘 Troubleshooting
See detailed troubleshooting in [IMPLEMENTATION_PLAN.md](./IMPLEMENTATION_PLAN.md#troubleshooting)
**Common issues:**
- CapRover not accessible → Check Oracle Security Lists and UFW firewall
- SSL not working → Verify DNS propagated, Cloudflare proxy OFF
- code-server can't clone → Check SSH key added to Gitea
- Claude Code not working → Verify API key, check extension logs
---
## 📚 Documentation Structure
```
Oracle Cloud/
├── README.md (this file) ← Overview and quick reference
├── IMPLEMENTATION_PLAN.md ← Step-by-step build guide ⭐
└── archive/
├── ALTERNATIVES_CONSIDERED.md ← Deep dive into alternatives
└── QUICK_COMPARISON.md ← Comparison tables
```
---
## 🎯 Next Steps
**Ready to build?**
1. Open [IMPLEMENTATION_PLAN.md](./IMPLEMENTATION_PLAN.md)
2. Start with Phase 1 (Oracle Cloud VM setup)
3. Follow each phase sequentially
4. Come back here for quick reference
**Have questions about choices?**
- See [archive/ALTERNATIVES_CONSIDERED.md](./archive/ALTERNATIVES_CONSIDERED.md) for detailed analysis
- See [archive/QUICK_COMPARISON.md](./archive/QUICK_COMPARISON.md) for quick comparisons
---
**Let's build this! 🚀**