Skip to content

Docker

Requirements

  • Docker and Docker Compose
  • AMD64 or ARM64 CPU architecture (or build the image yourself for other architectures)

Setup

Docker Compose

Below is a PlexAniBridge Docker compose file with example values. Optional environment variables are commented out.

compose.yaml
services:
    plexanibridge:
        image: ghcr.io/eliasbenb/plexanibridge:v1 # :vX, :vX.Y, :vX.Y.Z, :main, :develop, :experimental, :latest
        environment:
            PUID: 1000
            PGID: 1000
            UMASK: 022
            TZ: "Etc/UTC"
            PAB_ANILIST_TOKEN: ...
            PAB_PLEX_TOKEN: ...
            PAB_PLEX_USER: ...
            PAB_PLEX_URL: ...
            # PAB_PLEX_SECTIONS: '[]'
            # PAB_PLEX_GENRES: '[]'
            # PAB_PLEX_METADATA_SOURCE: "local"
            # PAB_SYNC_INTERVAL: 86400
            # PAB_SYNC_MODES: '["periodic", "poll", "webhook"]'
            # PAB_FULL_SCAN: false
            # PAB_DESTRUCTIVE_SYNC: false
            # PAB_EXCLUDED_SYNC_FIELDS: '["notes", "score"]'
            # PAB_DRY_RUN: false
            # PAB_BACKUP_RETENTION_DAYS: 30
            # PAB_BATCH_REQUESTS: false
            # PAB_SEARCH_FALLBACK_THRESHOLD=-1
            # PAB_PROFILES__example__$FIELD=$VALUE
            # PAB_DATA_PATH: "/config"
            # PAB_LOG_LEVEL: "INFO"
            # PAB_MAPPINGS_URL: "https://raw.githubusercontent.com/eliasbenb/PlexAniBridge-Mappings/v2/mappings.json"
            # PAB_WEB_ENABLED: true
            # PAB_WEB_HOST: "0.0.0.0"
            # PAB_WEB_PORT: 4848
            # PAB_WEB_BASIC_AUTH_USERNAME: null
            # PAB_WEB_BASIC_AUTH_PASSWORD: null
            # PAB_WEB_BASIC_AUTH_HTPASSWD_PATH: null
            # PAB_WEB_BASIC_AUTH_REALM: "PlexAniBridge"
        volumes:
            - /path/to/plexanibridge/data:/config
        ports:
            - 4848:4848
        restart: unless-stopped

PlexAniBridge Configuration

Have a look at the configuration page for a detailed list of configurable environment variables.

Docker Variables

While configuring the Docker variables are not required, they are highly recommended to improve file permission handling and debugging.

Setting the PUID and PGID variables allows PlexAniBridge to run with the same permissions as the user running the container, which is important if you want to access files on the host system. You can find your user ID and group ID by running id -u and id -g in the terminal.

The UMASK variable sets the default file permissions for new files created by the container. A common value is 022, which gives read and execute permissions to everyone, but only write permissions to the owner.

The TZ variable sets the timezone for the container, which is useful for logging and scheduling tasks. You can search for your timezone in the list of tz database time zones Wikipedia page.

environment:
    PUID: 1000
    PGID: 1000
    UMASK: 022
    TZ: "Etc/UTC"

To start the container, run:

docker compose -f compose.yaml up -d

Image Tags

You can pin the image to a specific version or branch by changing latest to a specific tag. Some available tags are:

  • vX.Y.Z, X.Y.Z: A specific version from the releases page (e.g. v1.0.0)
  • vX.Y, X.Y: The latest release in a specific minor version series (e.g. v1.0 for the latest 1.0.x release)
  • vX, X: The latest release in a specific major version series (e.g. v1 for the latest 1.x.x release)
  • beta: The latest beta release (may be unstable)
  • alpha: The latest alpha release (may be unstable)
  • main: The latest commit on the main branch, which is usually tied to the latest release
  • develop: The latest commit on the develop branch (may be unstable)
  • experimental: The latest commit on the experimental branch (may be unstable)
  • latest: The latest stable release

Docker CLI

Below is a minimal example of a Docker run command with only the required variables.

docker run \
    --name plexanibridge \
    -e PUID=1000 \
    -e PGID=1000 \
    -e UMASK=022 \
    -e TZ=Etc/UTC \
    -e PAB_ANILIST_TOKEN=... \
    -e PAB_PLEX_TOKEN=... \
    -e PAB_PLEX_USER=... \
    -e PAB_PLEX_URL=... \
    -p 4848:4848 \
    -v /path/to/plexanibridge/data:/config \
    ghcr.io/eliasbenb/plexanibridge:v1