I Deployed to AWS Without Knowing What a Docker Container Is
Vibes & Verdicts — Issue #4
THE VIBE
I Deployed to AWS Without Knowing What a Docket Container Is
Let me set the scene: it’s a Tuesday night, I’ve been staring at the AWS console for three hours, and I’m reading a documentation page that casually uses the phrase “orchestrate your containerized workloads across a fleet of EC2 instances.” I understand every word individually. Together, they mean nothing to me.
This is the part of vibe coding nobody talks about. The building part is fun. The deploying part is where you question every decision that led you here.
Here’s the thing: Replit is great for development. You write prompts, features appear, you test them in a live preview. It feels like magic. But at some point, if you’re building something real — something that handles client data, needs to be secure, needs to scale, needs to not go down when Replit has an outage — you need actual infrastructure.
For Batesly, that meant AWS. Specifically: RDS PostgreSQL for the database, S3 for document storage, and App Runner for the application itself. Here’s how I got there and what I wish I’d known.
The database was the easy part. RDS PostgreSQL is basically “managed database as a service.” You click some buttons, pick a size, set a password, and you have a production database. Connecting it to my Replit app meant putting the credentials in environment variables and swapping the connection string. Total time: about two hours, most of which was me being nervous about clicking the wrong thing.
S3 was surprisingly intuitive. Create a bucket, name it, enable encryption, block public access. Done. The concept is dead simple: it’s a folder in the cloud. Files go in, files come out. The part that took me longer was understanding presigned URLs — temporary, secure links that let users upload and download files without ever having direct access to the bucket. Once I grasped that concept, everything clicked.
App Runner was the wildcard. This is where Docker containers live, and I’m going to be honest: I still only sort of understand what’s happening. Here’s my working mental model — a container is like a box that has your app and everything it needs to run inside it. App Runner takes that box and runs it on AWS’s servers. You don’t need to know what’s inside the box works at a low level. You need to know that the box is configured correctly.
The biggest surprise was how cheap it all is. My entire AWS bill for a production-grade infrastructure — encrypted database, secure file storage, application hosting with auto-scaling — runs about $47/month. The database is the big expense. S3 storage is pennies. App Runner charges for compute time.
For context: that’s less than one seat of most legal tech software. I’m running an entire platform for less than what some firms pay for a single user’s access to their DMS.
What I’d do differently: I’d set up separate environments (dev, staging, production) from day one. I didn’t, and now I’m doing surgery on a live patient every time I push an update. It’s fine when you’re the only user. It’s going to be a problem very soon. Also: I’d learn basic AWS IAM (identity and access management) before touching anything else. Understanding who has permission to do what is the foundation of everything in AWS, and I stumbled through it instead of learning it properly.
The meta-takeaway: deploying to real cloud infrastructure as a non-engineer is doable. Not easy — doable. The documentation is dense, the terminology is hostile, and the console has approximately nine thousand menu items. But the core concepts are learnable, and once your stuff is running, it’s genuinely more reliable than any “easy” deployment platform.
You don’t need to understand everything, you need to understand just enough. And “enough” is a smaller number than the industry wants you to believe.
THE VERDICT
Quick Takes
AWS documentation is written for people who already know AWS. This is the single biggest barrier to entry for non-engineers. The docs assume you understand networking, IAM, VPCs, and security groups before you start. A genuinely beginner-friendly AWS onboarding flow would be worth billions. Someone should build it. (Not me. I’m busy.)
The “just use Vercel/Netlify” crowd isn’t wrong, but they’re not right either. For marketing sites and simple apps, absolutely. For a multi-tenant platform that handles sensitive legal documents with encryption requirements and audit logging? You need more control than a one-click deploy gives you. Know when you’ve outgrown the easy path.
The real cost of building software is time, not infrastructure. My AWS bill is $47/month. My opportunity cost of the hundreds of hours I’ve spent building instead of billing clients is… a number I don’t like to calculate. The infrastructure is cheap. The founder’s time is expensive. Budget accordingly.
THE CONFESSIONAL
I Broke Production on a Wednesday
There’s a special kind of panic that comes from pushing an update and watching your live application crash. Not a “something looks weird” crash. A “the entire page is a white screen and the console is screaming” crash.
It was a database migration that went sideways. I’d changed a column type without accounting for existing data, and the app couldn’t read the table anymore. The fix took twenty minutes. The cold sweat lasted considerably longer.
This is why staging environments exist. This is why people test migrations before running them on production. I knew this intellectually. Now I know it viscerally.
Nobody was using the app at the time except me, so the damage was limited to my blood pressure. But it was a wake-up call: the gap between “building a product” and “running a product” is wider than I thought. Building is creative. Running is operational. And operational means not breaking things that are already working.
Thanks for reading.
I’m Rachel — a practicing attorney building legal tech through vibe coding. Every week I share what I’m learning, what’s working, and what I probably shouldn’t admit publicly.
Next week: “Your Favorite Legal Tech Company Hates You” — Per-seat pricing, vendor lock-in, and why the legal tech industry is overdue for a reckoning.
Know someone building without a CS degree? Forward this. They’ll thank you… maybe?


