Files
kaiser-natron/docker-compose.yml
Dorian fcb7673c31 fix: pull_policy: build so portainer doesn't chase docker hub
Portainer's "Pull and redeploy" runs `compose pull` before `compose up`.
With `image: kaiser-natron:portainer` set, that tries to pull the image
from Docker Hub and fails with "pull access denied" because the image
only exists as a local build artifact. `pull_policy: build` tells
compose to skip the pull step for this service.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-04-21 12:00:26 +01:00

30 lines
987 B
YAML

# Portainer stack — Kaiser Natron dev showcase.
#
# Flow:
# 1. Developer runs `npm run build` locally and commits the updated dist/.
# 2. Portainer → Stacks → Pull and redeploy.
# 3. The image is a tiny nginx with the prebuilt dist copied in.
#
# This is deliberately simple for a showcase box — no container-side npm,
# no hardening, no resource ceilings. Tighten when it graduates to prod.
services:
web:
build:
context: .
dockerfile: Dockerfile
image: kaiser-natron:portainer
# Only build locally — never try to pull from a registry. Portainer's
# "Pull and redeploy" runs `compose pull` first, which would otherwise
# try to resolve `kaiser-natron:portainer` against Docker Hub and fail.
pull_policy: build
restart: unless-stopped
ports:
- "5555:80"
healthcheck:
test: ["CMD", "wget", "-q", "-O-", "http://127.0.0.1/health"]
interval: 30s
timeout: 5s
retries: 3
start_period: 10s