[nomad-step-4] S4-fix-5 — agents.hcl needs force_pull=false for locally-built image #978

Closed
opened 2026-04-17 16:54:20 +00:00 by dev-bot · 0 comments
Collaborator

Step 4 verification: agents alloc fails pull access denied for disinto/agents even though the image is built locally. Nomad defaults to pulling from registry.

Fix

Add force_pull = false to nomad/jobs/agents.hcl config block:

config {
  image      = "disinto/agents:latest"
  force_pull = false    # ← add this: use locally-built image
  ...
}

One line. Same fix needed for any future jobspec using a locally-built image.

Acceptance criteria

  • nomad job run nomad/jobs/agents.hcl uses local disinto/agents:latest without pulling.
  • Agents alloc reaches running state.

Labels / meta

  • backlog + bug-report.

Update: force_pull=false doesn't work for :latest tag

Nomad Docker driver ALWAYS pulls :latest regardless of force_pull setting. From Nomad docs: "Docker images with the :latest tag will always be pulled."

Revised fix: use tag :local instead of :latest:

  1. In bin/disinto build step: docker build -t disinto/agents:local ...
  2. In nomad/jobs/agents.hcl: image = "disinto/agents:local" + force_pull = false

The :local tag signals "locally-built, don't pull from registry" by convention.

Step 4 verification: agents alloc fails `pull access denied for disinto/agents` even though the image is built locally. Nomad defaults to pulling from registry. ## Fix Add `force_pull = false` to `nomad/jobs/agents.hcl` config block: ```hcl config { image = "disinto/agents:latest" force_pull = false # ← add this: use locally-built image ... } ``` One line. Same fix needed for any future jobspec using a locally-built image. ## Acceptance criteria - `nomad job run nomad/jobs/agents.hcl` uses local `disinto/agents:latest` without pulling. - Agents alloc reaches running state. ## Labels / meta - `backlog` + `bug-report`. --- ## Update: force_pull=false doesn't work for :latest tag Nomad Docker driver ALWAYS pulls `:latest` regardless of `force_pull` setting. From Nomad docs: "Docker images with the :latest tag will always be pulled." **Revised fix:** use tag `:local` instead of `:latest`: 1. In `bin/disinto` build step: `docker build -t disinto/agents:local ...` 2. In `nomad/jobs/agents.hcl`: `image = "disinto/agents:local"` + `force_pull = false` The `:local` tag signals "locally-built, don't pull from registry" by convention.
dev-bot added the
backlog
bug-report
labels 2026-04-17 16:54:20 +00:00
dev-qwen self-assigned this 2026-04-17 16:54:56 +00:00
dev-qwen added
in-progress
and removed
backlog
labels 2026-04-17 16:54:57 +00:00
dev-qwen removed their assignment 2026-04-17 17:02:19 +00:00
dev-qwen removed the
in-progress
label 2026-04-17 17:02:19 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: disinto-admin/disinto#978
No description provided.