cckit.au · sydney, australia · ap-sydney-1

titan

OCI ARM A1.Flex  ·  Ubuntu 24.04 LTS  ·  161.33.224.188
⬡ cosmos ⟳ docker ◈ caddy ◉ tailscale ◆ nova online
▼   scroll to explore   ▼

Titan is Saturn's largest moon — a world of nitrogen skies and methane seas, stranger and more alive than anything we expected. This machine shares its name. A single ARM core in Oracle's Sydney region, carrying everything that runs under the cckit.au banner.

§ I
Hardware

The Core

titan runs on Oracle Cloud Infrastructure's ARM A1.Flex — perpetually free-tier compute in the ap-sydney-1 region. ARM64 architecture. Unexpectedly capable.

MachineOCI ARM A1.Flex (free tier)
ArchitectureARM64 (aarch64)
OSUbuntu 24.04 LTS (Noble)
Regionap-sydney-1 · Sydney, Australia
Public IP161.33.224.188
Tailscale IP100.93.113.80
Operatorubuntu (UID 1001)
Domaincckit.au
§ II
Tailscale VPN

The Wormhole

SSH never touches the public internet. The only door into titan is Tailscale — a WireGuard-based mesh VPN that makes this server appear at 100.93.113.80 from any trusted device, regardless of location. The public firewall drops everything except port 443. The wormhole is the only door.

tailscalewireguard-based ssh via tailscale onlyno public ssh
§ III
Docker

The Engine Room

Every service on titan runs in a Docker container. All containers are citizens of one internal network: cosmos. Compose stacks live under /opt/. The Docker socket is mounted into Nova — GID 988 — giving the control plane full visibility over the fleet.

caddy
Reverse proxy. Custom build with Cloudflare DNS plugin. All TLS via DNS-01.
nova
AI control plane. Telegram bot dispatching to 5 specialised agents.
ollama
Local LLM runtime. gemma3:1b on ARM64 CPU. Fast triage, zero API cost.
chromadb
Vector memory store. Persistent recall across Nova sessions.
portainer
Docker management UI at portainer.cckit.au.
gatus
Uptime monitoring. Watches all core services at 60-second intervals.
§ IV
Caddy

The Gateway

Caddy is titan's single entry point for all web traffic — a custom build with the caddy-dns/cloudflare module for DNS-01 TLS. Wildcard certificates, zero open ports for ACME validation. Every subdomain resolves containers by name on the cosmos network.

tls / dns-01cloudflare cert issuer wildcard certsreverse proxy
titan.cckit.aunova.cckit.au portainer.cckit.augatus.cckit.au ollama.cckit.autimer.cckit.au hello.cckit.au
§ V
Gatus

The Observatory

Gatus watches titan's core services from within the cosmos network, polling every 60 seconds. Full status at gatus.cckit.au.

titan
nominal
nova
nominal
portainer
nominal
ollama
nominal
chromadb
nominal
§ VI
AI Control Plane

Nova

A nova is a stellar explosion — a star that suddenly becomes luminous beyond measure. Nova is titan's AI operating interface: a Telegram bot backed by five specialised agents that make this server fully operable through natural language. Every message is triaged by Beacon, routed to the right agent, and stored in ChromaDB for persistent memory.

Beacon
Triage. Keyword routing + Ollama gemma3:1b for intent classification.
Scout
Read-only recon. Container status, logs, disk, memory, uptime.
Control
Operations. Restart containers, reload Caddy, manage DNS.
Forge
Builder. Claude Code CLI. Writes and deploys new apps end-to-end.
Deep
Reasoning. Claude API (claude-sonnet-4-5) for analysis and diagnosis.

Forge deserves special mention. Given a single message — "build a countdown timer" — it writes the code, adds the Caddyfile entry, creates the Cloudflare DNS record, and reloads Caddy. Fully autonomous.

§ VII
ChromaDB · Ollama

The Memory Banks

ChromaDB (v1.0.0) provides vector storage for Nova's memory. Every exchange is embedded in the nova_memory collection and retrieved by cosine similarity — so Nova remembers what you've built, what broke, and what was fixed.

Ollama runs locally on ARM64 CPU serving gemma3:1b — light enough for the free tier, fast enough for real-time triage. No API calls, no latency, no cost.

Vector DBChromaDB 1.0.0 · HTTP server mode
Collectionnova_memory · cosine similarity
LLM RuntimeOllama · ARM64 CPU
Modelgemma3:1b
LLM PurposeBeacon triage / intent classification
§ VIII
Deployed Projects

The Launchpad

Apps deployed to titan live under /home/ubuntu/projects/ — containerised, connected to cosmos, routed by Caddy, DNS registered automatically. One Telegram message from concept to live URL.

timer.cckit.au
Countdown timer. First app deployed end-to-end by Forge.
hello.cckit.au
Hello World. Verified the full autonomous Nova deployment pipeline.
titan.cckit.au
This page. The infrastructure codex. You are here.
§ IX
Cloudflare

The Nebula Layer

All traffic to cckit.au passes through Cloudflare first — DNS, DDoS absorption, outer filtering. TLS terminates at Caddy via certificates issued through the Cloudflare API. Nova's Forge creates DNS records automatically on every deploy.

dns proxyddos mitigation automated dns via apizone: cckit.au
§ X
Firewall

The Shield

titan runs a double firewall. OCI Network Security Groups at the hypervisor level, then UFW on Ubuntu. Both must clear a connection for it to land anywhere. Port 80 closed — Caddy uses DNS-01, HTTP validation never needed.

Outer LayerOCI Network Security Groups (NSG)
Inner LayerUFW (Ubuntu Firewall)
Inbound Open443 (HTTPS) · Tailscale UDP 41641
SSHTailscale network only — no public exposure
HTTP 80Closed — DNS-01 requires no open port
§ XI
Timeline

Mission Log

May 2026
Nova operational. Full AI control plane live — 5 agents, ChromaDB memory, Cloudflare DNS automation. titan is now voice-controlled.
May 2026
Forge verified. End-to-end autonomous deployment confirmed: timer.cckit.au and hello.cckit.au shipped with a single Telegram message each.
May 2026
Intelligence layer online. Ollama + ChromaDB integrated. Local LLM triage and persistent vector memory live.
May 2026
Core stack deployed. OCI ARM, Docker/cosmos, Caddy with CF TLS, Tailscale, Gatus — all systems nominal.
May 2026
Git webhook deployed. Autonomous deploy pipeline live — push to GitHub, titan updates within seconds.