Skip to content

Commit

Permalink
initial
Browse files Browse the repository at this point in the history
  • Loading branch information
Laim committed Mar 6, 2022
1 parent 550db98 commit 2210740
Show file tree
Hide file tree
Showing 8 changed files with 194 additions and 1 deletion.
9 changes: 8 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,9 @@
# docker-compose
Collection of my docker-compose files

This is a collection of the docker-compose files that I'm currently using on my QNAP to run various different things. Assuming that I've done it right, things are broken out into their own networks, for example Plex can talk to Jackett but Plex nor Jackett can talk to MediaWiki.

# Usage

These were specifically made for my set-up so I wouldn't recommend just copy and pasting them. They do have comments for what things do, but I would also recommend reading the [docker docs](https://docs.docker.com/compose/compose-file/) before just randomly running stuff from the internet on your server. :-)

The files are named after their container (i.e `docker-compose_plex.yml`), so I'd recommend renaming them back to `docker-compose.yml` before using them.
23 changes: 23 additions & 0 deletions docker-compose_mediawiki.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
version: '3.2'

services:
web:
image: mediawiki
ports:
- 4200:80 # internal docker port 80, media wiki accessible at https://host:4200
environment:
- PUID=0 # change this to your docker runner user, default to admin (bad)
- PGUID=0 # change this to your docker runner user, default to admin (bad)
volumes:
- ./LocalSettings.php:/var/www/html/LocalSettings.php # linking the docker directory to your server directory, change BEFORE the colon :
- /AppData/Wiki/database:/var/www/data # linking the docker directory to your server directory, change BEFORE the colon :
- /AppData/Wiki/image:/var/www/html/images # linking the docker directory to your server directory, change BEFORE the colon :
deploy: # limits the amount of resource that transmission can use, i find 128M of RAM good enough
resources:
limits:
cpus: 0.50
memory: 512M
restart: unless-stopped # if we crash, restart


## Tutorial: https://laim.scot/blog/mediawiki-qnap-docker
17 changes: 17 additions & 0 deletions plexnet/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# docker-compose\plexnet

I don't use Docker to host my Plex Media Server because it ran like garbage on my QNAP. Here's docker-compose files for all the other useful stuff though.

**FlareSolverr**: http://(host):8191
**Transmission**: http://(host):9091
**Jackett**: http://(host):8191
**Sonarr**: http://(host):8191
**Radarr**: http://(host):8191

# Usage

I'm hoping that if you've come across this you know what you're doing but basically, modify the configuration files so they match with what you want then run `docker-compose up -d`. You'll then need to configure them all to talk to each other for various reasons.

Sonarr and Radarr talk to Jackett to pull torrents. Jackett uses FlareSolverr to bypass Cloudflare for certain torrent sites like yts. The torrents are then sent to Transmission to download, and sends a call back to Sonarr or Radarr to tell them its finished, and they'll then drop the files into the designated directories that you've configured in the docker-compose file.

Plex (not included here) will then use the same paths you've chosen for media in Sonarr (TV) and Radarr (Films) to include those movies in your Plex Library.
21 changes: 21 additions & 0 deletions plexnet/docker-compose_flaresolverr.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
---
version: "2.1"

networks:
plexnet: # custom network for plex media server
external: true

services:
flaresolverr:
image: ghcr.io/flaresolverr/flaresolverr:latest # always pull the latest image unless you want a custom one
container_name: flaresolverr
environment:
- LOG_LEVEL=${LOG_LEVEL:-info}
- LOG_HTML=${LOG_HTML:-false}
- CAPTCHA_SOLVER=${CAPTCHA_SOLVER:-none}
- TZ=Europe/London
ports:
- "${PORT:-8191}:8191" # Web portal/api will be accessible on http://host:8191
networks:
- plexnet
restart: unless-stopped # if we crash, restart
30 changes: 30 additions & 0 deletions plexnet/docker-compose_jackett.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
---
version: "2.1"

networks:
plexnet:
external: true

services:
jackett:
image: lscr.io/linuxserver/jackett
container_name: jackett
environment:
- PUID=100 # change this to your docker runner user
- PGID=100 # change this to your docker runner group
- TZ=Europe/London
- AUTO_UPDATE=true #optional
#- RUN_OPTS=<run options here> #optional
volumes:
- /AppData/Jackett/config:/config # linking the docker directory to your server directory, change BEFORE the colon :
- /AppData/Jackett/blackhole:/downloads # linking the docker directory to your server directory, change BEFORE the colon :
ports:
- 9117:9117 # Web portal will be accessible on http://host:9117
networks:
- plexnet
deploy: # limits the amount of resource that jackett can use, i find 128M of RAM good enough
resources:
limits:
cpus: 0.10
memory: 128M
restart: unless-stopped # if we crash, restart
29 changes: 29 additions & 0 deletions plexnet/docker-compose_radarr.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
---
version: "2.1"

networks:
plexnet: # custom network for plex media server
external: true

services:
radarr:
image: lscr.io/linuxserver/radarr # always pull the latest image unless you want a custom one
container_name: radarr
environment:
- PUID=0 # change this to your docker runner user, default to admin (bad)
- PGID=0 # change this to your docker runner group, default to admin (bad)
- TZ=Europe/London
volumes:
- /AppData/Radarr/config:/config # linking the docker directory to your server directory, change BEFORE the colon :
- /Multimedia/Movies:/movies # linking the docker directory to your server directory, change BEFORE the colon :
- /Multimedia/Downloads:/downloads # linking the docker directory to your server directory, change BEFORE the colon :
ports:
- 7878:7878 # Web portal will be accessible on http://host:7878
networks:
- plexnet
deploy: # limits the amount of resource that radarr can use, i find 128M of RAM good enough
resources:
limits:
cpus: 0.50
memory: 128M
restart: unless-stopped # if we crash, restart
29 changes: 29 additions & 0 deletions plexnet/docker-compose_sonarr.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
---
version: "2.1"

networks:
plexnet: # custom network for plex media server
external: true

services:
sonarr:
image: lscr.io/linuxserver/sonarr # always pull the latest image unless you want a custom one
container_name: sonarr
environment:
- PUID=0 # change this to your docker runner user, default to admin (bad)
- PGID=0 # change this to your docker runner group, default to admin (bad)
- TZ=Europe/London
volumes:
- /AppData/Sonarr/config:/config
- /Multimedia/TV:/tv # linking the docker directory to your server directory, change BEFORE the colon :
- /Multimedia/Downloads:/downloads # linking the docker directory to your server directory, change BEFORE the colon :
ports:
- 8989:8989 # Web portal will be accessible on http://host:8989
networks:
- plexnet
deploy: # limits the amount of resource that sonarr can use, i find 128M of RAM good enough
resources:
limits:
cpus: 0.50
memory: 128M
restart: unless-stopped # if we crash, restart
37 changes: 37 additions & 0 deletions plexnet/docker-compose_transmission.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
---
version: "2.1"

networks:
plexnet: # custom network for plex media server
external: true


services:
transmission:
image: lscr.io/linuxserver/transmission # always pull the latest image unless you want a custom one
container_name: transmission
environment:
- PUID=0 # change this to your docker runner user, default to admin (bad)
- PGID=0 # change this to your docker runner group, default to admin (bad)
- TZ=Europe/London
#- TRANSMISSION_WEB_HOME=/combustion-release/ #optional
- USER=user #optional -- username you use to login to transmission
- PASS=pass123 #optional -- password you use to login to transmission
#- WHITELIST=192.168.0.5 #optional
#- HOST_WHITELIST=dnsnane list #optional
volumes:
- /AppData/Transmission/config:/config # linking the docker directory to your server directory, change BEFORE the colon :
- /Multimedia/Downloads:/downloads # linking the docker directory to your server directory, change BEFORE the colon :
#- <path to watch folder>:/watch
ports:
- 9091:9091 # Web portal will be accessible on http://host:9091
- 51413:51413
- 51413:51413/udp
networks:
- plexnet
deploy: # limits the amount of resource that transmission can use, i find 128M of RAM good enough
resources:
limits:
cpus: 0.50
memory: 128M
restart: unless-stopped # if we crash, restart

0 comments on commit 2210740

Please sign in to comment.