Converted an old Chromebook into a reliable 24/7 Linux server running Dockerized services, monitoring dashboards, custom API's, and secure Cloudflare Zero Trust tunnels. This project applies lightweight DevOps, Linux administration, service orchestration, and production-style observability on minimal hardware.
This project repurposes a low-power Chromebook into a reliable homelab server by wiping ChromeOS and installing a lightweight Linux distribution. The server now runs containerized services exposed through Cloudflare Tunnels on custom subdomains, along with monitoring dashboards, workflow automation, and a clean GitOps-style deployment pipeline using CI + Tailscale SSH.
- ChromeOS wiped and replaced with Alpine Linux
- Docker-based orchestration for Grafana, Glance, Pi-hole, n8n, Home Assistant, and custom APIs
- Cloudflare Tunnels with Zero Trust authentication
- Real-time system metrics dashboards: CPU, memory, disk I/O, network, temperature
- Container-level analytics
- GitOps automated deployments (CI + deploy pipeline)
- SSH automation and remote administration through Tailscale (no port forwarding, private network)
- Hardware monitoring + system optimization for 24/7 uptime
Developer → Git Push → CI Workflow → Deploy Workflow → Homelab (via Tailscale)
+------------------------------+
| Cloudflare Zero Trust |
| Auth + Secure Tunnel Proxy |
+---------------+--------------+
|
*.rupan.dev
|
Cloudflare Tunnel
|
+-----------------+------------------+
| Lubuntu Chromebook Server |
| |
| + Docker / Docker Compose |
| + Prometheus |
| + Grafana |
| + Glance |
| + n8n |
| + rupan-api |
| + homelab-api |
| + Home Assistant |
| + Pi hole |
| + node_exporter / cAdvisor |
| |
| Tailscale SSH (GitHub → Server) |
+------------------------------------+
Dashboards for CPU, RAM, disk, network, temperatures, and containers.
Time-series DB scraping node_exporter and cAdvisor.
Lightweight status dashboard for services + system state.
Automation engine for workflows, AI capabilities, and tasks.
Network-wide ad blocking. (I am only using per device though as I was unable to access router DHCP options)
Open source home automation that puts local control and privacy first.
rupan-api (api.rupan.dev)
A small and public API built with FastAPI. Used for experimentation, returning simple structured information, and testing.
A secure internal control API protected with Cloudflare Zero Trust plus an API key. Provides system control and server automation features.
- Docker service inspection (GET /services)
- Container restarts (POST /restart/{service})
- Server deploy triggers that run deploy.sh
- System queries with Prometheus for CPU, memory, disk, processes, temps
- Custom Tailwind-based frontend UI for interacting with the API
This homelab uses a GitOps-style pipeline so all infrastructure changes flow through Git and deploy automatically to the server.
The server itself is never edited directly.
All changes occur through Git commits.
- All Docker and service configs live in the repo
- Every push triggers the CI workflow (
ci.yml) - CI validates main Compose file
- If CI succeeds, the Deploy workflow (
deploy.yml) runs - GitHub Actions brings up a temporary Tailscale node
- The workflow SSHes into the homelab (over Tailscale) and runs:
cd ~/homelab
git pull --ff-only
./scripts/deploy.sh
- Automated, repeatable deployments
- No manual edits on the server
- Zero exposed ports
- Private, encrypted SSH via Tailscale
- Eliminates configuration drift
This provides a clean, reliable GitOps process suitable for homelab infrastructure.
- Linux (Alpine Linux)
- Docker / Docker Compose
- Cloudflare Tunnels + Zero Trust
- Tailscale SSH
- Grafana
- Prometheus
- node_exporter
- cAdvisor
- Glance
- SSH, systemd, Bash
- FastAPI
- GitHub Actions
homelab
├── assets
│ └── homelab.gif
├── configs
│ ├── glance
│ │ ├── dashboard.yml
│ │ └── glance.yml
│ └── grafana
│ └── dashboards
│ ├── cAdvisor-dashboard.json
│ ├── note.txt
│ └── system-metrics.json
├── docker
│ ├── apis
│ │ ├── homelab-api
│ │ └── rupan-api
│ ├── cloudflared
│ ├── glance
│ ├── homeassistant
│ ├── monitoring
│ │ ├── grafana
│ │ └── prometheus
│ ├── n8n
│ └── pihole
├── README.md
└── scripts
- Add more services
- Add automated backups
- Experiment with Kubernetes or k3s
- Get an actual PC 😂
- Chrultrabook tools and guides for converting Chromebooks into full Linux laptops
- Alpine Linux ultra-lightweight and secure Linux distribution
- Docker container platform used to run services
- Tailscale private, secure SSH access
- Cloudflare Tunnel secure remote access to local services
- Grafana visualization and monitoring dashboards
- Prometheus metrics collection and time-series monitoring
- n8n workflow automation platform
- Pi-hole network-wide ad blocking
- Home Assistant Open source home automation
- FastAPIWeb framework for building APIs with Python

