--- services: puter: container_name: puter image: ghcr.io/heyputer/puter:latest pull_policy: always # Uncomment to build from this directory instead of pulling the published image: # build: # context: . # # buildx-only: cross-compile to both archs in a single push # # platforms: # # - linux/amd64 # # - linux/arm64 restart: unless-stopped ports: - '4100:4100' environment: # TZ: Europe/Paris PUID: 1000 PGID: 1000 volumes: # Drop your config.json into ./puter/config/. It is deep-merged over # config.default.json — only override what you care to change. # Image expects /etc/puter/config.json (see PUTER_CONFIG_PATH in Dockerfile). - ./puter/config:/etc/puter # Persistent runtime data (sqlite db, uploads, etc. — depends on your # config). Maps to volatile/ inside the container by default. - ./puter/data:/var/puter healthcheck: test: wget --no-verbose --tries=1 --spider http://puter.localhost:4100/test || exit 1 interval: 30s timeout: 3s retries: 3 start_period: 30s