services:
  neko:
    image: ${IMAGE_NAME}
    container_name: ${CONTAINER_NAME}
    restart: always
    networks:
      - 1panel-network
    shm_size: "${MEM_USE}"
    ports:
      - "${PANEL_APP_PORT_HTTP}:8080"
      - "${NEKO_EPR}:${NEKO_EPR}/udp"
    volumes:
      - ./data/downloads:/home/neko/Downloads
    environment:
      - NEKO_SCREEN=${NEKO_SCREEN}
      - NEKO_PASSWORD=${NEKO_PASSWORD}
      - NEKO_PASSWORD_ADMIN=${NEKO_PASSWORD_ADMIN}
      - NEKO_EPR=${NEKO_EPR}
      - NEKO_ICELITE=${NEKO_ICELITE}
      - NEKO_CONTROL_PROTECTION=${NEKO_CONTROL_PROTECTION}
      - NEKO_IMPLICIT_CONTROL=${NEKO_IMPLICIT_CONTROL}
      - NEKO_LOCKS=${NEKO_LOCKS}
      - NEKO_NAT1TO1=${NEKO_NAT1TO1}
      - NEKO_IPFETCH=${NEKO_IPFETCH}
      - NEKO_ICESERVER=${NEKO_ICESERVER}
      - NEKO_ICESERVERS=${NEKO_ICESERVERS}
      - NEKO_VIDEO_CODEC=${NEKO_VIDEO_CODEC}
      - NEKO_VIDEO_BITRATE=${NEKO_VIDEO_BITRATE}
      - NEKO_MAX_FPS=${NEKO_MAX_FPS}
      - NEKO_HWENC=${NEKO_HWENC}
      - NEKO_AUDIO_CODEC=${NEKO_AUDIO_CODEC}
      - NEKO_AUDIO_BITRATE=${NEKO_AUDIO_BITRATE}
      - NEKO_BROADCAST_PIPELINE=${NEKO_BROADCAST_PIPELINE}
      - NEKO_BROADCAST_URL=${NEKO_BROADCAST_URL}
      - NEKO_BROADCAST_AUTOSTART=${NEKO_BROADCAST_AUTOSTART}
      - NEKO_CERT=${NEKO_CERT}
      - NEKO_KEY=${NEKO_KEY}
      - NEKO_PROXY=${NEKO_PROXY}
      - NEKO_PATH_PREFIX=${NEKO_PATH_PREFIX}
      - NEKO_CORS=${NEKO_CORS}
      - NEKO_FILE_TRANSFER_ENABLED=${NEKO_FILE_TRANSFER_ENABLED}
      - NEKO_FILE_TRANSFER_PATH=/home/neko/Downloads
      - NEKO_DISPLAY=${NEKO_DISPLAY}
      - NEKO_DEVICE=${NEKO_DEVICE}
      - NEKO_STATIC=${NEKO_STATIC}
      - NEKO_WEBRTC_NAT1TO1=${NEKO_WEBRTC_NAT1TO1}
    labels:
      createdBy: "Apps"

networks:
  1panel-network:
    external: true
