惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

WordPress大学
WordPress大学
M
MIT News - Artificial intelligence
MyScale Blog
MyScale Blog
博客园_首页
G
Google Developers Blog
博客园 - 【当耐特】
美团技术团队
博客园 - 聂微东
Stack Overflow Blog
Stack Overflow Blog
Vercel News
Vercel News
小众软件
小众软件
博客园 - 司徒正美
雷峰网
雷峰网
T
Tailwind CSS Blog
V
V2EX
博客园 - 三生石上(FineUI控件)
F
Fortinet All Blogs
罗磊的独立博客
量子位
P
Proofpoint News Feed
Microsoft Azure Blog
Microsoft Azure Blog
月光博客
月光博客
A
About on SuperTechFans
Hugging Face - Blog
Hugging Face - Blog

DEV Community

Authentication Security Deep Dive: From Brute Force to Salted Hashing (With Java Examples) Why AI Systems Don’t Fail — They Drift Spilling beans for how i learn for exam😁"Reinforcement Learning Cheat Sheet" I Replaced Chrome with Safari for AI Browser Automation. Here's What Broke (and What Finally Worked) How Python Borrows Other People's Work The $40 Architecture: Processing 1 Billion API Requests with 99.99% Uptime Vibe Coding: A Workflow Guide (From Zero to SaaS) Most webhook security guides protect the wrong side. The scary part is delivery. Headless CMS for TanStack Start: Build a Blog with Cosmic EU Age Verification App "Hacked in 2 Minutes" — What Actually Happened Comfy Cloud’s delete function does not actually remove files Running AI Models on GPU Cloud Servers: A Beginner Guide Event-driven media intelligence with AWS Step Functions and Bedrock I scored 500 AI prompts across 8 quality dimensions — here's what broke How to Call Google Gemini API from Next.js (Free Tier, No Backend Needed) The Portal Protocol: Reclaiming Human Connection in the Age of AI How to Fix Your Team's Scattered Knowledge Problem With a Self-Hosted Forum Intro to tc Cloud Functors: A Graph-First Mental Model for the Modern Cloud Designing Multi-Tenant Backends With Both Ownership and Team Access I Built a Neumorphic CSS Library with 77+ Components — Here's What I Learned PostgreSQL Performance Optimization: Why Connection Pooling Is Critical at Scale Cómo construí un SaaS multi-rubro para gestionar expensas en Argentina con FastAPI + Vue 3 🚀 I Built an Ethical Hacking Scanner Tool – Open Source Project I Replaced /usage and /context in Claude Code With a Single Statusline A Pythonic Way to Handle Emails (IMAP/SMTP) with Auto-Discovery and AI-Ready Design I Collected 8.9 Million Polymarket Price Points — Here's What I Found About How Markets Really Move EcoTrack AI — Carbon Footprint Tracker & Dashboard Everyone's Using AI. No One Agrees How. 5 self-hosted ebook managers worth trying in 2026 Building Your First AI Agent with LangChain: From Chatbot to Autonomous Assistant
I Built Chromium in the Cloud in 2 Hours for $2 — What If...
Semih702 · 2026-06-27 · via DEV Community

How It Started

I was using Chrome one day and noticed something that looked like a UI bug in the bookmarks side panel, a small visual inconsistency after moving a bookmark. As a developer, my first instinct was to look at the source and see if I could fix it.

I found the relevant code, understood the likely cause, and thought: "This is probably a one-line fix." Then I looked at what it takes to actually build and test a Chromium change.

100+ GB of disk space. Hours of build time. Dozens of dependencies. On my machine, that wasn't realistic.

I could have stopped there. Most people do. But then I thought: what if I ran the build in the cloud? And more importantly, what if someone turned that into a reusable image so that no contributor ever has to go through the full setup again?

Even if the bug turned out to be harder to reproduce than I expected, the idea felt worth proving. So I did.

A Great Codebase With a Heavy Front Door

Even though I mentioned the effort needed to contribute to Chromium informally above, I want to make it more concrete.

To be clear, Chromium is one of the most well-documented open-source projects out there. The build instructions are thorough, the code review process is solid, and the community is welcoming. None of that is the problem.

The problem is purely mechanical. Here's what the official docs require just to get started:

  • 35–40 GB source checkout (fetch chromium)
  • 100+ GB total disk space (source + build output + dependencies)
  • 16+ GB RAM recommended (build will thrash or fail with less)
  • Full build: 2–8 hours depending on hardware (on a laptop, expect the upper end)
  • Dozens of system packages to install, some with version-specific requirements

For a full-time Chromium engineer, this is a one-time cost that pays for itself. But for students, open-source enthusiasts, or anyone who just wants to fix one small thing and move on, this is usually where the journey ends.

I wanted to see if a Google Cloud image could make this a non-issue.

The Idea: What If the Build Was Already Done?

Google Cloud has a feature called Custom Images. Essentially, a snapshot of a fully configured VM that you can launch new machines from. Think AWS AMI if you're familiar with that world.

What if someone built Chromium once, saved it as an image, and every future contributor could just launch a VM with everything ready?

I decided to test this end-to-end. Not as a thought experiment. Actually do it, measure everything, and see if it's practical.

The Experiment

Step 1: One Script, Walk Away

I wrote a startup script that does everything automatically:

  • Creates a user
  • Installs all dependencies
  • Clones depot_tools
  • Fetches the Chromium source
  • Runs a full build

I launched a Spot VM (cheaper, ~60-70% discount) on Google Cloud and walked away.

gcloud compute instances create chromium-builder \
  --machine-type=n2-standard-32 \
  --provisioning-model=SPOT \
  --boot-disk-size=200GB \
  --boot-disk-type=pd-ssd \
  --metadata-from-file=startup-script=startup-script.sh

Step 2: Check Back Later

I checked the build progress periodically:

Time Progress
30 min Source fetched, build started
1h 30min ~70% compiled
1h 50min ~92% compiled
2h 2min Build complete. Zero errors.

Step 3: Make a Change, Rebuild

Here's where it gets interesting. I made a small change to a UI component to see how fast it would rebuild.

Thanks to Chromium's incremental build system, the rebuild took just 11 seconds.

The full build took 2 hours, but every change after that rebuilds in seconds. And that's exactly the experience a contributor would get when starting from a pre-built image.

Step 4: Save the Image

gcloud compute instances stop chromium-builder
gcloud compute images create chromium-workstation-v1 \
  --source-disk=chromium-builder \
  --family=chromium-contributor-workstation

Now, anyone can launch a VM from this image and start coding within minutes.

Step 5: Clean Up

gcloud compute instances delete chromium-builder

VM gone. Only the image remains (~$3-5/month storage). Zero ongoing compute cost.

The Numbers

What I Measured

Metric Value
Machine n2-standard-32 (32 vCPU, 128 GB RAM)
Full build time 2 hours 2 minutes
Incremental build (1 file change) 11 seconds
Total cost (Spot VM) ~$2
Total cost (on-demand) ~$6
Image storage ~$3-5/month

How It Scales (Hopefully)

Machine vCPUs Est. Build Time Cost/hr
n2-standard-8 8 ~6–8 hours $0.39
n2-standard-16 16 ~3–5 hours $0.78
n2-standard-32 32 ~2–3 hours $1.56
n2-standard-64 64 ~1–1.5 hours $3.12

For the one-time image build, go big. For contributor sessions with incremental builds, smaller machines work just fine.

What If This Were Official?

Imagine if the Chromium project published an official Google Cloud image. The contributing guide could include something like:

gcloud compute instances create my-chromium-dev \
  --image-family=chromium-contributor-workstation \
  --image-project=chromium-contributor-images \
  --machine-type=n2-standard-8

One command. VM boots in 2 minutes. Source and build are ready. Start coding.

Why this makes sense:

  • Nothing changes about how code gets reviewed or merged. The image only changes how contributors set up their environment.
  • No security concern. The image would contain only public source code and open-source tools. No credentials, no internal code, nothing proprietary.
  • It doesn't slow down any existing Chromium workflows. Image builds can run in parallel or as a low-priority job.
  • Every contributor who launches a VM becomes a Google Cloud user organically.
  • Since Chromium and Google Cloud are not far apart, hosting a few contributor images might be simpler to arrange than it would be for most open-source projects.

Implementation:

  1. Add image creation to an existing build bot
  2. Publish to a public project
  3. Add a one-liner to the contributing guide

The technology already exists. This is just connecting the pieces.

If you've tried contributing to Chromium and hit the same setup wall, or if you have thoughts on how this could work better, I'd love to hear from you.


All measurements from a real session on June 26, 2026. Machine: GCP Compute Engine n2-standard-32 Spot VM, europe-west1-b.