# Docker Compose configuration for BigBear CasaOS JFA-GO
# This service provides a web interface for managing Jellyfin users and permissions
# Initial Version: latest

# Name of the big-bear-jfa-go application
name: big-bear-jfa-go
# Service definitions for the big-bear-jfa-go application
services:
  # Main service configuration for the JFA-GO application
  # This service provides a web interface running on port 8056 for user administration
  big-bear-jfa-go:
    # Name of the container
    container_name: big-bear-jfa-go
    # Image to be used for the container specifies the hrfee/jfa-go version and source
    image: hrfee/jfa-go:latest
    # Container restart policy - restarts the container unless manually stopped
    restart: unless-stopped
    # Volume mappings required for system integration
    # These mounts allow the container to interact with the host system
    volumes:
      - /DATA/AppData/$AppID/.config/jfa-go:/data # Path to wherever you want to store the config file and other data
      - /DATA/AppData/$AppID/jellyfin:/jf # Only needed for password resets through Jellyfin, ignore if not using or using Emby
      - /etc/localtime:/etc/localtime:ro # Makes sure time is correct
    # Map port 8056 on the host to port 8056 on the container
    ports:
      - "8056:8056"
    x-casaos:
      volumes:
        - container: /data
          description:
            en_us: 'Container Path: /data'
        - container: /jf
          description:
            en_us: 'Container Path: /jf'
        - container: /etc/localtime
          description:
            en_us: 'Container Path: /etc/localtime'
      ports:
        - container: "8056"
          description:
            en_us: 'Container Port: 8056'
x-casaos:
  # Supported CPU architectures for this application
  architectures:
    - amd64
    - arm64
  # Main service for this application
  main: big-bear-jfa-go
  # Detailed description for the application
  description:
    en_us: jfa-go is a user management app for Jellyfin (and Emby as 2nd class) that provides invite-based account creation as well as other features that make one's instance much easier to manage.
  # Screenshot links for the application
  screenshot_link:
    - https://cdn.jsdelivr.net/gh/bigbeartechworld/big-bear-universal-apps@main/apps/jfa-go/screenshots/screenshot-1.png
    - https://cdn.jsdelivr.net/gh/bigbeartechworld/big-bear-universal-apps@main/apps/jfa-go/screenshots/screenshot-2.png
    - https://cdn.jsdelivr.net/gh/bigbeartechworld/big-bear-universal-apps@main/apps/jfa-go/screenshots/screenshot-3.png
    - https://cdn.jsdelivr.net/gh/bigbeartechworld/big-bear-universal-apps@main/apps/jfa-go/screenshots/screenshot-4.png
  # Brief tagline for the application
  tagline:
    en_us: Manage users in Jellyfin
  # Developer's information
  developer: hrfee
  # Author of this particular configuration
  author: BigBearTechWorld
  # Icon URL for the application
  icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/jellyfin.png
  # Thumbnail image for the application (if any)
  thumbnail: https://cdn.jsdelivr.net/gh/bigbeartechworld/big-bear-universal-apps/apps/jfa-go/thumbnail.png
  # Installation tips
  tips:
    before_install:
      en_us: |
        Read this before installing: https://community.bigbeartechworld.com/t/added-jfa-go-to-bigbearcasaos/3364?u=dragonfire1119
  # Title for the application
  title:
    en_us: jfa-go
  # Category under which the application falls
  category: BigBearCasaOS
  # Default port mapping for the application
  port_map: "8056"
