/docker-media-center

Docker compose to start my local media center

MIT LicenseMIT

docker-media-center

Docker compose to start my local media center

Includes

Couchpotato

Running on: http://couchpotato.htpc/

Plex Media Center

Running on: http://plex.htpc/web/

uTorrent

Running on: http://utorrent.htpc/gui/web/

Dashboard

manage-this-node running on: http://dashboard.htpc/

NGINX Proxy

This container act as a reverse proxy of the above containers

LogmeIn Hamachi

Notes: start container, enter with docker exec -it hamachi bash and join your network manually with hamachi join <network id> <password>

Emby

Running on: http://emby.htpc/

Mr. Potato Slack bot

https://github.com/RolfKoenders/potato

An environment variables file is required on: $HOME/.config/mrpotato/env like

CB_SLACK_KEY=YOUR_SLACK_KEY
CB_SLACK_NAME=mrpotato
CB_HOST=http://couchpotato
CB_PORT=5050
# CB_BASE_URL=/
CB_COUCH_KEY=YOUR_COUCHPOTATO_KEY

uTorrent Slack bot

https://github.com/inakiabt/utorrent-bot

An environment variables file is required on: $HOME/.config/ubot/env like

UBOT_TOKEN=YOUR_TOKEN
UTORRENT_PASSWORD=YOUR_UTORRENT_PASSWORD
UTORRENT_USERNAME=YOUR_UTORRENT_USERNAME
UTORRENT_PORT=YOUR_UTORRENT_PORT
UTORRENT_HOST=YOUR_UTORRENT_HOST

DNS (macOS)

Taken from: https://medium.com/@williamhayes/local-dev-on-docker-fun-with-dns-85ca7d701f0a

dsnmasq

Install brew services

brew tap homebrew/services

Install and start the service

brew install dnsmasq
sudo brew services start dnsmasq

Setup 127.0.0.1 alias

sudo ifconfig lo0 alias 10.254.254.254
cat << EOF | sudo tee -a /Library/LaunchDaemons/com.docker-media-center.loopback1.plist
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
  <dict>
    <key>Label</key>
    <string>com.docker-media-center.loopback1</string>
    <key>ProgramArguments</key>
    <array>
        <string>/sbin/ifconfig</string>
        <string>lo0</string>
        <string>alias</string>
        <string>10.254.254.254</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
  </dict>
</plist>
EOF
sudo launchctl load /Library/LaunchDaemons/com.docker-media-center.loopback1.plist

Configure and restart

echo "nameserver 10.254.254.254" > /etc/resolver/htpc
echo "domain htpc" >> /etc/resolver/htpc
echo "search_order 1" >> /etc/resolver/htpc

echo "address=/.htpc/10.254.254.254\n" >> /path/to/dnsmasq.conf
sudo brew services restart dnsmasq

In case it does not work for containers See https://stackoverflow.com/questions/53181154/docker-container-internal-vs-external-dns-resolution-issue-using-traefik#comment101968337_53503399

Thanks to