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.

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 ensure proper functionality.

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
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: 3600
            # PAB_SYNC_MODES: '["interval"]'
            # PAB_FULL_SCAN: False
            # PAB_DESTRUCTIVE_SYNC: False
            # PAB_EXCLUDED_SYNC_FIELDS: '["notes", "score"]'
            # PAB_DRY_RUN: False
            # PAB_BATCH_REQUESTS: False
            # PAB_SEARCH_FALLBACK_THRESHOLD=-1
            # PAB_PROFILES__example__$FIELD=$VALUE
            # PAB_DATA_PATH: /config
            # PAB_LOG_LEVEL: INFO
            # PAB_WEB_ENABLED: True
            # PAB_WEB_HOST: 0.0.0.0
            # PAB_WEB_PORT: 4848
        volumes:
            - /path/to/plexanibridge/data:/config
        ports:
         - 4848:4848
        restart: unless-stopped

To start the container, run:

docker compose -f compose.yaml up -d

Tip

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

  • latest: The latest stable release
  • beta: The latest beta release (may be unstable)
  • alpha: The latest alpha release (may be unstable)
  • vX.Y.Z: A specific version from the releases page (e.g. v1.0.0)
  • X.Y.Z: Alias of vX.Y.Z (e.g. 1.0.0)
  • 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)

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=eyJ... \
    -e PAB_PLEX_TOKEN=2Sb... \
    -e PAB_PLEX_USER=username \
    -e PAB_PLEX_URL=http://plex:32400 \
    -v /path/to/plexanibridge/data:/config \
    ghcr.io/eliasbenb/plexanibridge:v1