lamine.cloud ← back
// writing

Notes from production.

Incidents, AWS, containers, delivery. Every article is available in English and in French.

CONTAINERS · DOCKER · EN · FR

Optimising a Docker image with a real Dockerfile: stages, why not Alpine, and the traps

A 289-line production Dockerfile for a Node.js API with Chrome and native modules, read line by line: what multi-stage builds really buy, why the runtime is Debian slim and not Alpine, 84 build arguments that bake secrets into the image, a chown that doubles the size, and the rewrite.

OBSERVABILITY · DELIVERY · EN · FR

It was not the infrastructure: metrics, deliverables and the perimeter of a DevOps mission

A platform kept dropping requests after the scaling work was done. Load balancer logs showed a synchronous OCR job, not the infrastructure. Why metrics belong inside the deliverable, why the perimeter must be written down, and the three levels at which a system gets optimised.

INCIDENT · RELIABILITY · EN · FR

The health check that took down production

A search cluster died and five production services went with it, none of which needed search to serve a page. A post-mortem, minute by minute: a non-vital dependency inside a liveness probe, and a watchdog I had shipped two days earlier with no blast radius.

AWS · IAC · CI/CD · EN · FR

How this site is deployed: S3, CloudFront, OpenTofu and GitHub Actions

The page you are reading is served by the stack it describes: a private S3 bucket behind CloudFront with OAC, DNS and certificates converging in one apply, a serverless contact form, and a deploy that is just a git push. Total bill: about $2.50 a month.

AWS · CONTAINERS · EN · FR

Deploying on AWS ECS, and what you gain over plain EC2

A hands-on walkthrough of a real Fargate deployment: image, task definition, service behind an ALB. Then an honest comparison with self-managed EC2: what you stop operating, what it costs, and the cases where a plain instance still wins.

written late at night, watched over by Nox · ← lamine.cloud · RSS