services:
  puter:
    image: "ghcr.io/heyputer/puter:latest"
    pull_policy: always
    container_name: ${CONTAINER_NAME}
    restart: always
    networks:
      - 1panel-network
    ports:
      - "${PANEL_APP_PORT_HTTP}:${PANEL_APP_PORT_INTERNAL}"
    environment:
      - TZ=${TIME_ZONE}
      - CONFIG_PATH=${CONFIG_PATH}
      - PUID=${PUID}
      - PGID=${PGID}
    volumes:
      - "${DATA_PATH}/config:${CONFIG_PATH}"
      - "${DATA_PATH}/data:/var/puter"
    healthcheck:
      test: wget --no-verbose --tries=1 --spider http://127.0.0.1:${PANEL_APP_PORT_INTERNAL}/test || exit 1
      interval: 30s
      timeout: 3s
      retries: 3
      start_period: 30s
    labels:
      createdBy: "Apps"

networks:
  1panel-network:
    external: true
