Files
app-catalog-felhom.eu/templates/wishlist/docker-compose.yml
T
admin acfbd6e527 papra + wishlist: fix lying wget healthchecks (images ship only node)
Both crashes above were masking a second defect: once each app actually stayed
up, it sat permanently unhealthy because its healthcheck called wget, and
neither image has wget or curl -- only node. Traefik does not route to an
unhealthy container, so both would have served 404 to the customer regardless.

Switched both to the Node-exec family (http.get, exit non-zero on 5xx/error).

Campaign 7 catalog sweep.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Nn3VgQk9iwEGgyx6QJ2NvE
2026-07-19 02:23:46 +02:00

47 lines
1.5 KiB
YAML

# Wishlist - Családi kívánságlista megosztás
# Domain: ${SUBDOMAIN}.${DOMAIN}
# Database: None (file-based)
# RAM: ~30M (mem_limit: 128M) | Pi-compatible: Yes
#
# Environment variables:
# DOMAIN - Your domain (e.g., demo-felhom.eu)
services:
wishlist:
image: ghcr.io/cmintey/wishlist:v0.66.0
container_name: wishlist
restart: unless-stopped
environment:
- TZ=Europe/Budapest
volumes:
- wishlist_data:/data
networks:
- traefik-public
deploy:
resources:
limits:
memory: 128M
healthcheck:
# A wishlist képfájlban nincs wget és nincs curl — csak node. A korábbi
# wget próba ezért soha nem futott le, a konténer véglegesen unhealthy
# maradt, és a Traefik nem irányított rá forgalmat (404).
test: ["CMD", "node", "-e", "const http=require('http');http.get('http://127.0.0.1:3000',r=>process.exit(r.statusCode<500?0:1)).on('error',()=>process.exit(1))"]
interval: 30s
timeout: 5s
retries: 3
start_period: 30s
labels:
- "traefik.enable=true"
- "traefik.http.routers.wishlist.rule=Host(`${SUBDOMAIN}.${DOMAIN}`)"
- "traefik.http.routers.wishlist.entrypoints=websecure"
- "traefik.http.routers.wishlist.tls=true"
- "traefik.http.routers.wishlist.tls.certresolver=letsencrypt"
- "traefik.http.services.wishlist.loadbalancer.server.port=3000"
volumes:
wishlist_data:
networks:
traefik-public:
external: true