version: '3'
services:
  unifi-controller:
    image: lscr.io/linuxserver/unifi-controller
    container_name: unifi_controller
    logging:
      driver: loki
      options:
        loki-url: http://localhost:3100/loki/api/v1/push
        loki-batch-size: "50"
        loki-retries: "1"
        loki-timeout: "2s"
        keep-file: "true"
    restart: "no"
    environment:
      - PUID=1000
      - PGID=1000
      - MEM_LIMIT=1024M
      - MEM_STARTUP=1024M
    volumes:
      - ${DOCKER_DATA}/config:/config
    ports:
      - 3478:3478/udp # unifi STUN port
      - 10001:10001/udp # AP discovery port
      - 8080:8080 # communicate with devices
      - 8443:8443 # web admin port
      #- 1900:1900/udp # discoverability on layer 2
      - 8843:8843 # guest portal http
      - 8880:8880 # guest portal https
      - 6789:6789 # mobile throughput test port
      - 5514:5514/udp # remote syslog