services:
  upsnap:
    container_name: upsnap
    image: ghcr.io/seriousm4x/upsnap:5 # images are also available on docker hub: seriousm4x/upsnap:5
    network_mode: host
    restart: unless-stopped
    volumes:
      - /home/james/docker/upsnap/data:/app/pb_data
    # # To use a non-root user, create the mountpoint first (mkdir data) so that it has the right permission.
    # user: 1000:1000
    environment:
      - TZ=Europe/London # Set container timezone for cron schedules
    #  - UPSNAP_HTTP_LISTEN=127.0.0.1:8090
      - UPSNAP_INTERVAL=*/10 * * * * * # Sets the interval in which the devices are pinged
      - UPSNAP_SCAN_RANGE=192.168.200.0/24 # Scan range is used for device discovery on local network
      - UPSNAP_SCAN_TIMEOUT=500ms # Scan timeout is nmap's --host-timeout value to wait for devices (https://nmap.org/book/man-performance.html)
      - UPSNAP_PING_PRIVILEGED=true # Set to false if non-root user and no NET_RAW capability *requires host setting net.ipv4.ping_group_range="0   2147483647"
      - UPSNAP_WEBSITE_TITLE=UpSnap # Custom website title
    # # dns is used for name resolution during network scan
    dns:
      - 192.168.200.11
      - 192.168.200.22
    # # or install custom packages for shutdown
    # entrypoint: /bin/sh -c "apk update && apk add --no-cache <YOUR_PACKAGE> && rm -rf /var/cache/apk/* && ./upsnap serve"