callum027/buildarr
Configuration management of *Arr stacks
1M+
This is the Docker container for Buildarr, a solution to automating deployment and configuration of your *Arr stack.
The following plugins are bundled with the latest Docker container:
buildarr-sonarr
- Sonarr PVR for TV showsbuildarr-radarr
- Radarr PVR for moviesbuildarr-prowlarr
- Prowlarr indexer manager for Arr applicationsbuildarr-jellyseerr
- Jellyseerr media library request manager for Jellyfin/Emby and PlexFor more information on configuring Buildarr and its plugins, refer to the full documentation for Buildarr.
The Buildarr Docker container is currently built for the following platforms:
linux/amd64
- AMD64 (x86-64)linux/arm/v7
- ARMv7 (32-bit ARM)linux/arm64/v8
- ARMv8 (64-bit ARM)The Buildarr Docker images can be run on macOS (Intel or Apple Silicon) using Docker Desktop. On Windows, Docker Desktop or Docker under the Windows Subsystem for Linux can be used.
If support for a Docker platform that is not on the above list is required, please make a ticket on GitHub.
Note that as the Buildarr container is a bundle consisting of Buildarr itself and some of the available plugins, it has a separate version number from the Buildarr core package.
The release notes for the Buildarr container are available in the Buildarr Docker container documentation.
0.7.8
, 0.7
, latest
A standalone container for Buildarr can be started using the following command.
This command starts a container with the name buildarr
in daemon mode, sets it to start automatically, and mounts the config
directory in the current directory as the Buildarr configuration directory. The UID and GID of the current user are mapped to the container, to give the correct permissions for accessing the configuration folder.
Make sure the config
folder exists with the buildarr.yml
file placed in it.
docker run -d \
--name buildarr \
--restart=always \
--mount "type=bind,source=$(pwd)/config,target=/config,readonly" \
-e PUID=$(id -u) \
-e PGID=$(id -g) \
callum027/buildarr:latest
For more information, including installing additional plugins within the container, see the Docker container installation instructions.
Buildarr is intended to run alongside your *Arr applications as an integrated stack, where Buildarr takes the role of automatically configuring the instances, and updating them if the configuration files have changed.
Here is a sample Docker Compose file for managing one Sonarr, one Radarr, and one Prowlarr instance, with a Transmission service for downloading torrents, and FlareSolverr for solving CloudFlare challenges:
---
version: "3.7"
services:
transmission:
image: lscr.io/linuxserver/transmission:version-3.00-r8
hostname: transmission
restart: always
ports:
- 127.0.0.1:9091:9091
volumes:
- ./transmission:/config
- type: bind
source: "/opt/arrstack/data/torrents"
target: /data/torrents
environment:
TZ: "Pacific/Auckland"
PUID: "1000"
PGID: "1000"
TRANSMISSION_WEB_HOME: "/flood-for-transmission/"
WHITELIST: "*.*.*.*"
flaresolverr:
image: ghcr.io/flaresolverr/flaresolverr:v3.3.4
hostname: flaresolverr
restart: always
ports:
- 127.0.0.1:8191:8191
environment:
TZ: "Pacific/Auckland"
LOG_LEVEL: "info"
sonarr:
image: lscr.io/linuxserver/sonarr:3.0.10
hostname: sonarr
restart: always
ports:
- 127.0.0.1:8989:8989
volumes:
- "./sonarr:/config"
- type: bind
source: "/opt/arrstack/data"
target: /data
environment:
TZ: "Pacific/Auckland"
PUID: "1000"
PGID: "1000"
depends_on:
- transmission
radarr:
image: lscr.io/linuxserver/radarr:4.7.5
hostname: radarr
restart: always
ports:
- 127.0.0.1:7878:7878
volumes:
- "./radarr:/config"
- type: bind
source: "/opt/arrstack/data"
target: /data
environment:
TZ: "Pacific/Auckland"
PUID: "1000"
PGID: "1000"
depends_on:
- transmission
prowlarr:
image: lscr.io/linuxserver/prowlarr:1.7.4
hostname: prowlarr
restart: always
ports:
- 127.0.0.1:9696:9696
volumes:
- "./prowlarr:/config"
- type: bind
source: "/opt/arrstack/data"
target: /data
environment:
TZ: "Pacific/Auckland"
PUID: "1000"
PGID: "1000"
depends_on:
- transmission
- flaresolverr
- sonarr
- radarr
buildarr:
image: callum027/buildarr:latest
hostname: buildarr
restart: always
volumes:
- type: bind
source: ./buildarr
target: /config
read_only: true
environment:
TZ: "Pacific/Auckland"
PUID: "1000"
PGID: "1000"
depends_on:
- sonarr
- radarr
- prowlarr
For an example on how to use Buildarr with Ansible and Docker Compose to automatically deploy and configure an *Arr stack, have a look at the example Ansible playbooks available on GitHub.
docker pull callum027/buildarr