services:
  adguardhome-sync:
    container_name: adguardhome-sync
    image: ghcr.io/bakito/adguardhome-sync
    command: run --config /config/adguardhome-sync.yaml
    environment:
      LOG_LEVEL: info
      ORIGIN_URL: http://192.168.1.2:80
      ORIGIN_USERNAME: akanealw
      ORIGIN_PASSWORD: Aehaigoothohshoh1aab
      REPLICA1_URL: http://192.168.1.3:80
      REPLICA1_USERNAME: akanealw
      REPLICA1_PASSWORD: Aehaigoothohshoh1aab
      CRON: "*/30 * * * *"
      RUN_ON_START: true
      CONTINUE_ON_ERROR: true
    networks:
      - reverse-proxy
    restart: always

  freshrss:
    container_name: freshrss
    image: freshrss/freshrss:latest
    environment:
      - PUID=${PUID}
      - PGID=${PGID}
      - CRON_MIN=*/20
      - TZ=${TZ}
    depends_on:
      - freshrss-db
    networks:
      - freshrss
      - reverse-proxy
    ports:
      - 8088:80
    restart: unless-stopped
    volumes:
      - ${DOCKER_CONFIGS}/freshrss/data:/var/www/FreshRSS/data
      - ${DOCKER_CONFIGS}/freshrss/extensions:/var/www/FreshRSS/extensions
      - /etc/localtime:/etc/localtime:ro

  freshrss-db:
    container_name: freshrss-db
    image: postgres:12-alpine
    environment:
      - PUID=${PUID}
      - PGID=${PGID}
      - POSTGRES_USER=freshrss
      - POSTGRES_PASSWORD=freshrss
      - POSTGRES_DB=freshrss
    networks:
      - freshrss
    restart: unless-stopped
    volumes:
      - ${DOCKER_CONFIGS}/freshrss/db/data:/var/lib/postgresql/data
      - /etc/localtime:/etc/localtime:ro

  hbbr:
    container_name: hbbr
    image: rustdesk/rustdesk-server:latest
    command: hbbr -k _
    networks:
      - reverse-proxy
    ports:
      - 21117:21117
      - 21119:21119
    restart: always
    volumes:
      - ${DOCKER_CONFIGS}/rustdesk/hbbr:/root

  hbbs:
    container_name: hbbs
    image: rustdesk/rustdesk-server:latest
    command: hbbs -r rustdesk.akanealw.com:21117 -k _
    depends_on:
      - hbbr
    networks:
      - reverse-proxy
    ports:
      - 21115:21115
      - 21116:21116
      - 21116:21116/udp
      - 21118:21118
    restart: always
    volumes:
      - ${DOCKER_CONFIGS}/rustdesk/hbbs:/root

  it-tools:
    container_name: it-tools
    image: corentinth/it-tools:latest
    networks:
      - reverse-proxy
    ports:
      - 8383:80
    restart: always

  jellyseerr:
    container_name: jellyseerr
    image: fallenbagel/jellyseerr:latest
    environment:
      - LOG_LEVEL=info
      - TZ=${TZ}
    networks:
      - reverse-proxy
    ports:
      - 5056:5055
    restart: always
    volumes:
      - ${DOCKER_CONFIGS}/jellyseerr/config:/app/config

  kavita:
    container_name: kavita
    image: lscr.io/linuxserver/kavita:latest
    networks:
      - reverse-proxy
    ports:
      - 5002:5000
    restart: always
    volumes:
      - ${STORAGE_DIR}/Books:/data
      - ${DOCKER_CONFIGS}/kavita/config:/config

  metube:
    container_name: metube
    hostname: metube
    image: alexta69/metube
    environment:
      - PUID=${PUID}
      - PGID=${PGID}
      - CUSTOM_DIRS=true
      - CREATE_CUSTOM_DIRS=true
      - DEFAULT_THEME=auto
    networks:
      - reverse-proxy
    ports:
      - 8082:8081
    restart: always
    volumes:
      - ${MEDIA_DIR}/videos:/downloads

  mstream:
    container_name: mstream
    image: lscr.io/linuxserver/mstream:latest
    environment:
      - PUID=${PUID}
      - PGID=${PGID}
      - TZ=${TZ}
    networks:
      - reverse-proxy
    ports:
      - 3001:3000
    restart: always
    volumes:
      - ${DOCKER_CONFIGS}/mstream:/config
      - ${STORAGE_DIR}/Music:/music

  peanut:
    container_name: peanut
    image: brandawg93/peanut:latest
    environment:
      - NUT_HOST=192.168.1.51
      - NUT_PORT=3493
      - WEB_PORT=8080
    networks:
      - reverse-proxy
    ports:
      - 8980:8080
    restart: unless-stopped

  s-pdf:
    container_name: spdf
    image: frooodle/s-pdf
    networks:
      - reverse-proxy
    ports:
      - 8086:8080
    restart: always

  syncthing:
    container_name: syncthing
    image: lscr.io/linuxserver/syncthing:latest
    environment:
      - PUID=${PUID}
      - PGID=${PGID}
      - TZ=${TZ}
    networks:
      - reverse-proxy
    ports:
      - 8384:8384
      - 22000:22000/tcp
      - 22000:22000/udp
      - 21027:21027/udp
    restart: always
    volumes:
      - ${DOCKER_CONFIGS}/syncthing/config:/config
      - ${STORAGE_DIR}:/storage

  syncthing-relay-discovery:
    container_name: syncthing-relay-discovery
    image: t4skforce/syncthing-relay-discovery:latest
    environment:
      RELAY_OPTS:
      DISC_OPTS: 
      POOLS:
    networks:
      - reverse-proxy
    ports:
      - 22067:22067
      - 22026:22026
    restart: always
    volumes:
      - ${DOCKER_CONFIGS}/syncthing-relay-discovery:/home/syncthing/certs

networks:
  freshrss:
    name: freshrss
  reverse-proxy:
    name: reverse-proxy
    external: true
