Giter Club home page Giter Club logo

dockerpi-ams's Introduction

Docker Pi - AMS

An Automated Media Server via Docker on Rapsberry Pi.

Scenario

With Raspberry Pi releasing a version of their hardware with 4GB of RAM, it is possible to setup a lightweight fully automated media server running a set of docker containers.

You're in a conversation with a friend, and he mentions something new to watch. You can pull out your cellphone, browse to a personal website, search the name and queue it to download on your dockerpi-ams. Once the download is finished, you will be able to playback most formats to 1 client, and potentially transcode the format for 1 stream.

Hardware

Tools

Method

Setup MicroSD and External Storage

  • Install Hypriot Flash tool

  • Change the contents of the cloud_config.yaml found in this directory with the following attributes:

    • users.name, users.plain_text_password
    • write_files.content.ssid, write_files.content.psk (password)
    • Note: This will enable your RPI to automatically connect to your WiFi upon boot. You will be able to ssh from there.
  • Open a terminal

    • Discover the mount point of your SD card. In OSX, run:
    • diskutil -l
    • Note: Replace the value after the -d parameter below with your own. There is a potential to flash one of your hard disks if you are not correct.
    • flash -d /dev/disk3 --userdata cloud_config.yaml https://github.com/hypriot/image-builder-rpi/releases/download/v1.11.1/hypriotos-rpi-v1.11.1.img.zip
  • Insert SD card into Pi and boot up.

  • Check ssh:

  • Mount External Storage:

    • lsblk to list where all devices are
    • sudo mount -t hfsplus -o force,rw /dev/sda3 /srv
  • Optional : Setup External Storage to AutoMount on boot

    • Once you have SSH into your dockerpi box, run: blkid
    • Note Copy the UUID of your External Storage
    • sudo vi /etc/fstab
    • Inside the editor, add a new line entry: UUID=<your_value> /srv hfsplus force,rw,nofail,x-systemd.device-timeout=1,noatime 0 0
  • All setup of containers (below) happens from SSH to your dockerpi-ams.

Setup Containers

Transmission Setup

  • Create directory structure and change to it: -/srv/plexMediaServer/config/combustion
  • Download Combustion:
    • rm -f release.zip && wget https://github.com/Secretmapper/combustion/archive/release.zip && unzip release.zip;
  • Note Export the above directory where combustion was installed as a variable to the transmission container:
$ docker create \
    --name=transmission \
    --network=rpi \
    -e PUID=1000 \
    -e PGID=1000 \
    -e TZ=Denver/America \
    -e TRANSMISSION_WEB_HOME=/config/combustion/combustion-release \
    -p 9091:9091 \
    -p 51413:51413 \
    -p 51413:51413/udp
    -v /srv/plexMediaServer/config:/config \
    -v /srv/plexMediaServer/Downloads:/downloads \
    -v /srv/plexMediaServer/config/torrents:/watch \
    --restart unless-stopped \
    linuxserver/transmission
  • Start the container:
    • docker start transmission
  • Edit transmission settings to add login and filebot ping script
    • sudo vi /srv/plexMediaServer/config/settings.json
    • Change the following values and uncomment:
      • rpc-username:
      • rpc-password: <plaintext_entry>
      • script-call-after: "/config/transmission/transmission-postprocess.sh"
      • rpc-host-whitelist:"t.dnsname.com"

Jackett Setup

$ docker create \
    --name=jackett \
    --network=rpi \
    -e PUID=1000 \
    -e PGID=1000 \
    -e TZ=Denver/America \
    -p 9117:9117 \
    -v /srv/plexMediaServer/config:/config \
    -v /srv/plexMediaServer/Downloads:/downloads \
    -- restart unless-stopped \
    linuxserver/jackett

Radarr Setup

$ docker create \
    --name=radarr \
    --network=rpi \
    -e PUID=1000 \
    -e PGID=1000 \
    -e TZ=Denver/America \
    -p 7878:7878 \
    -v /srv/plexMediaServer/config/radarr:/config \
    -v /srv/plexMediaServer/Movies:/movies \
    -v /srv/plexMediaServer/Downloads:/downloads \
    restart unless-stopped \
    linuxserver/darr

Detailed instructions and rest of container setup to come.

dockerpi-ams's People

Contributors

hareet avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.