{
  "id": 15965049,
  "title": "There Are Two Dockerfiles. Your Agent Should Touch Neither.",
  "url": "https://urgent.news/2026/10/21/there-are-two-dockerfiles-your-agent-should-touch-neither",
  "topic": "tech",
  "section": "Tech",
  "published": "2026-10-21T22:58:18.000Z",
  "source": {
    "name": "Dev.to",
    "slug": "dev-to",
    "url": "https://dev.to/flisk/there-are-two-dockerfiles-your-agent-should-touch-neither-lge"
  },
  "original_language": "en",
  "account": "In the world of Docker, there are two Dockerfiles that coding agents should not touch. The Flisk tool has taken note of this, creating two Dockerfiles in a project: one that runs and one that looks like source. The file that runs is the one flisk up builds after local golden layers exist, while the other file is a plain Dockerfile beside service.json that nobody should edit by hand, unless they are leaving Flisk's local loop. The final stage of the Dockerfile runs as user bun and has a local tag that looks different from its actual production and development targets. flisk up does not build the plain Dockerfile, and its PORT, EXPOSE, and health check follow the port in service.json. The plain Dockerfile is a starting point for building outside Flisk, but it is not fit to ship as a production image. The rule is simple: edit service.json, let the generator write the rest, and never touch the other Dockerfile.",
  "summary": "A coding agent will edit a Dockerfile the way a helpful intern edits a wiki: confidently, locally, and with no memory of the last time someone did the same thing three services over. That is fine in a three-service repo. It is a slow accident in a landscape. Flisk makes the accident specific, because it already has two Dockerfiles, and flisk up builds only one of them. If your agent cannot tell…",
  "key_points": [
    "Flisk tool creates two Dockerfiles in a project",
    "One Dockerfile runs, the other looks like source code",
    "Editing plain Dockerfile not recommended unless building outside Flisk"
  ],
  "editors_take": null,
  "illustration": null,
  "coverage": {
    "outlets": 1,
    "also_reported_by": []
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}