plex-rpi
plex-rpi copied to clipboard
Working?
Buenos días,
Actualmente este proyecto está funcionando?
He realizado el git clone, modificado el docker-compose.yaml con las configuraciones de red / unidad montada pero los dockers de transmission y flexget no acaban de levantar y no sé el motivo.
Muchas gracias!
#23 Está resuelto aquí. Hay que agregar la carpeta complete en el storage.
EDITO: el issue que enlazo únicamente soluciona el error del contenedor de flex, el de transmission no he sido capaz de hacerlo funcionar tampoco, mismo error. Alguna idea?
#23 Está resuelto aquí. Hay que agregar la carpeta complete en el storage.
EDITO: el issue que enlazo únicamente soluciona el error del contenedor de flex, el de transmission no he sido capaz de hacerlo funcionar tampoco, mismo error. Alguna idea?
Tengo el mismo problemas con el contenedor transmission, la cosa es que no genera ningun error y tpco genera logs en docker por lo que no sé como solucionarlo.
Alguna idea??? @pablokbs @bibaldo
Adjunto imagen donde puede verse que no se le asigna el puerto 9091
Estoy teniendo el mismo problema con el contenedor de transmission, no he encontrado ninguna manera de echarlo a andar.
Estoy teniendo el mismo problema con el contenedor de transmission, no he encontrado ninguna manera de echarlo a andar.
Pues siento decirte que nadie me ha contestado sobre este asunto 😞
Logre correr los contenedores, pero aun no logro que FlexGet descargue los torrents, mañana puedo subir mis configuraciones y setup!
transmission funciona bien (descarga los torrents que le paso) flexget funciona aparentemente bien (hizo el trabajo de mover el video a la libreria de plex) plex funciona bien
solo me falta conseguir que flexget busque y descargue las peliculas y series automaticamente
Logre correr los contenedores, pero aun no logro que FlexGet descargue los torrents, mañana puedo subir mis configuraciones y setup!
transmission funciona bien (descarga los torrents que le paso) flexget funciona aparentemente bien (hizo el trabajo de mover el video a la libreria de plex) plex funciona bien
solo me falta conseguir que flexget busque y descargue las peliculas y series automaticamente
Yeahhh, impaciente de ver cómo lo hiciste
Hola!
Estoy trabajando sobre una Raspberry PI 4 de 2GB con Ubuntu 20.04
En el Docker Compose, para PLEX utilice la Imagen de LinuxServer, me pareció mas intuitiva y fácil.
Para Transmission le agregue una configuración nueva, ya que me dio problemas con el uso de Internet, sin embargo, aplique esta configuración a la Raspberry, así que no estoy seguro si esa configuración tiene que correr a nivel de host (es decir, la raspberry) o a nivel del contenedor.
Para FlexGet mantuve los cambios, usando la versión ARM que se encuentra en este mismo repositorio.
PD: Utilice la SD de la raspberry porque soy pobre y no tengo HDD :(
docker.compose.yaml
version: "3"
services:
plex:
image: ghcr.io/linuxserver/plex # imagen de linuxserver
container_name: plex
network_mode: host
restart: unless-stopped
environment:
- PUID=1001
- PGID=1001
- VERSION=docker
- PLEX_CLAIM= # aqui use un claim, pero es opcional
volumes:
- /home/kevin/plex/config:/config
- /home/kevin/plex/media/movies:/movies
- /home/kevin/plex/media/series:/tv
transmission:
image: jaymoulin/transmission
command: transmission-daemon -f -g /config
container_name: transmission
volumes:
- /home/kevin/plex/transmission:/config
- ${STORAGE}:/downloads
- /home/kevin/plex/transmission/config/sysctl.conf:/etc/sysctl.conf # nuevo
ports:
- "9091:9091"
- "51413:51413"
restart: unless-stopped
flexget:
build: flexget
container_name: flexget
volumes:
- /home/kevin/plex/flexget:/config
- ${STORAGE}:/downloads
- ${MEDIA}:/storage
ports:
- "5050:5050"
environment:
- TORRENT_PLUGIN=transmission
- FB_WEBUI_PASSWD=${TRANSMISSION_PASSWORD}
restart: unless-stopped
links:
- transmission
/home/kevin/plex/transmission/config/sysctl.conf
net.core.rmem_max = 4194304
net.core.wmem_max = 1048576
FlexGet Dockerfile:
FROM armhf/alpine
MAINTAINER bren
RUN apk add --update \
tzdata \
python \
py-pip \
ca-certificates \
&& pip install --no-cache-dir --disable-pip-version-check flexget==2.21.0 transmissionrpc==0.11 \
&& rm -rf /var/cache/apk/*
RUN apk add --update --repository http://dl-cdn.alpinelinux.org/alpine/edge/main tinyxml2 && \
apk add --update --repository http://dl-cdn.alpinelinux.org/alpine/edge/community mediainfo && \
apk add --update ffmpeg && \
rm -rf /var/cache/apk/*
# Copy local files
COPY files/ /
# add default volumes
VOLUME /config /data
WORKDIR /config
# expose port for flexget webui
EXPOSE 3539 3539/tcp
# run init.sh to set uid, gid, permissions and to launch flexget
RUN chmod +x /scripts/init.sh
CMD ["/scripts/init.sh"]
Para la configuracion de FlexGet, use las mismas que @pablokbs
web_server: yes
schedules:
- tasks: '*'
interval:
minutes: 1
templates:
tv:
series:
settings:
tv:
exact: yes
propers: 12 hours
quality: 720p
tv:
- Black Mirror
- Mr Robot
- Rick and Morty
- Silicon Valley
- The Walking Dead
- WandaVision
transmission:
host: transmission
port: 9091
username: keviinplz
password: # owo
tasks:
eztvrss:
rss: https://eztv.re/ezrss.xml
template: tv
priority: 2
showrss:
rss: # owo
template: tv
priority: 2
sort_tv:
priority: 2
no_entries_ok: yes
parsing:
series: guessit
filesystem:
path: /downloads/complete
regexp: '.*\.(avi|mkv|mp4)$'
recursive: yes
accept_all: yes
thetvdb_lookup: yes
require_field: series_name
all_series:
parse_only: yes
exec:
auto_escape: yes
on_output:
for_entries: |
if mediainfo "{{ location }}" | grep EAC3; then
mkdir -p "/storage/series/{{ tvdb_series_name }}/Season {{ series_season }}" && ffmpeg -hwaccel auto -y -i "{{ location }}" -map 0 -c:s copy -c:v copy -c:a ac3 -b:a 640k "/storage/series/{{ tvdb_series_name }}/Season {{ series_season }}/{{ tvdb_series_name }} - {{ series_id }}{{ location | pathext }}"
else
mkdir -p "/storage/series/{{ tvdb_series_name }}/Season {{ series_season }}" && cp "{{ location }}" "/storage/series/{{ tvdb_series_name }}/Season {{ series_season }}/{{ tvdb_series_name }} - {{ series_id }}{{ location | pathext }}"
fi
sort_movies:
priority: 2
no_entries_ok: yes
filesystem:
path: /downloads/complete
regexp: '.*\.(avi|mkv|mp4)$'
recursive: yes
accept_all: yes
require_field: movie_name
imdb_lookup: yes
exec:
auto_escape: yes
on_output:
for_entries: |
if mediainfo "{{ location }}" | grep EAC3; then
mkdir -p "/storage/movies/{{ movie_name }} ({{ movie_year }})" && ffmpeg -hwaccel auto -y -i "{{ location }}" -map 0 -c:s copy -c:v copy -c:a ac3 -b:a 640k "/storage/movies/{{ movie_name }} ({{ movie_year }})/{{ movie_name }} ({{ movie_year }}){{ location | pathext }}"
else
mkdir -p "/storage/movies/{{ movie_name }} ({{ movie_year }})" && cp "{{ location }}" "/storage/movies/{{ movie_name }} ({{ movie_year }})/{{ movie_name }} ({{ movie_year }}){{ location | pathext }}"
fi
remove_stale_torrents:
from_transmission:
host: transmission
port: 9091
username: keviinplz
password: # owo
disable: [seen, seen_info_hash]
if:
- transmission_progress == 100: accept
- not transmission_seed_ratio_ok: reject
- not transmission_idle_limit_ok: reject
transmission:
host: transmission
port: 9091
username: keviinplz
password: # owo
action: purge
Finalmente, mi repositorio de trabajo tiene la siguiente estructura
├── config
├── docker-compose.yaml
├── downloads
│ ├── complete
│ ├── incomplete
│ └── uncomplete
├── flexget
│ ├── Dockerfile
│ ├── config.yml
│ ├── files
│ │ └── scripts
│ │ └── init.sh
├── media
│ ├── movies
│ └── series
└── transmission
├── config
│ └── sysctl.conf
├── settings.json
Algunas imagenes:
Disculpen, olvide subir el settings.json de Transmission
{
"alt-speed-down": 100,
"alt-speed-enabled": false,
"alt-speed-time-begin": 660,
"alt-speed-time-day": 127,
"alt-speed-time-enabled": false,
"alt-speed-time-end": 300,
"alt-speed-up": 20,
"bind-address-ipv4": "0.0.0.0",
"bind-address-ipv6": "::",
"blocklist-enabled": false,
"blocklist-url": "http://www.example.com/blocklist",
"cache-size-mb": 4,
"dht-enabled": true,
"download-dir": "/downloads/complete",
"download-queue-enabled": true,
"download-queue-size": 5,
"encryption": 1,
"idle-seeding-limit": 300,
"idle-seeding-limit-enabled": true,
"incomplete-dir": "/downloads/incomplete",
"incomplete-dir-enabled": true,
"lpd-enabled": false,
"message-level": 1,
"peer-congestion-algorithm": "",
"peer-id-ttl-hours": 6,
"peer-limit-global": 200,
"peer-limit-per-torrent": 50,
"peer-port": 51413,
"peer-port-random-high": 65535,
"peer-port-random-low": 49152,
"peer-port-random-on-start": false,
"peer-socket-tos": "default",
"pex-enabled": true,
"port-forwarding-enabled": true,
"preallocation": 1,
"prefetch-enabled": true,
"queue-stalled-enabled": true,
"queue-stalled-minutes": 30,
"ratio-limit": 1.1000,
"ratio-limit-enabled": true,
"rename-partial-files": true,
"rpc-authentication-required": true,
"rpc-bind-address": "0.0.0.0",
"rpc-enabled": true,
"rpc-host-whitelist": "",
"rpc-host-whitelist-enabled": true,
"rpc-password": "#owo",
"rpc-port": 9091,
"rpc-url": "/transmission/",
"rpc-username": "keviinplz",
"rpc-whitelist": "*.*.*.*",
"rpc-whitelist-enabled": true,
"scrape-paused-torrents-enabled": true,
"script-torrent-done-enabled": false,
"script-torrent-done-filename": "",
"seed-queue-enabled": true,
"seed-queue-size": 5,
"speed-limit-down": 100,
"speed-limit-down-enabled": false,
"speed-limit-up": 200,
"speed-limit-up-enabled": true,
"start-added-torrents": true,
"trash-original-torrent-files": true,
"umask": 2,
"upload-slots-per-torrent": 14,
"utp-enabled": true,
"watch-dir": "/to_download",
"watch-dir-enabled": false
}
Saludos, me dicen si les funciono, y ojala me ayuden con lo de descargar torrents automaticamente! :)
Buenas @Keviinplz , lo que deberias hacer para probar a ver si te salta algun error, es correr la tarea manualmente desde el contenedor de flexget:
flexget execute --dump --tasks eztvrss
Tirá ese comando y veamos que te dice, creo que el lunes que viene hago un vivo tratando de responder todos estos issues
Holaa!
Tire el comando, al parecer no se decide por descargarlos jaja
$ docker-compose exec flexget flexget execute --dump --task eztvrss
There is a FlexGet process already running for this config, sending execution there.
2021-02-08 15:27 VERBOSE input_cache eztvrss Restored entries from cache
2021-02-08 15:27 VERBOSE details eztvrss Produced 50 entries.
2021-02-08 15:28 VERBOSE details eztvrss Summary - Accepted: 0 (Rejected: 0 Undecided: 50 Failed: 0)
Y luego una lista con los torrents (entre ellos, algunos que puse explicitamente que descargara)
Hola!
En mi caso todos los servicios funcionan correctamente, excepto transmission, que no arranca las descargas de los torrent que le pasa FlexGet.
Inicialmente me aparecía este error en el contenedor de transmission:
$ docker logs 21e5dec61d06
[2037-06-03 02:13:20.005] UDP Failed to set receive buffer: requested 4194304, got 360448 (/home/buildozer/aports/community/transmission/src/transmission-3.00/libtransmission/tr-udp.c:97)
[2037-06-03 02:13:20.005] UDP Failed to set send buffer: requested 1048576, got 360448 (/home/buildozer/aports/community/transmission/src/transmission-3.00/libtransmission/tr-udp.c:105)
Pero conseguí hacerlo desaparecer añadiendo las siguientes líneas al fichero /etc/sysctl.conf en el host (Mi Raspberry Pi 3).
net.core.rmem_max = 4194304
net.core.wmem_max = 1048576
También probé a pasar ese fichero como un volumen del servicio transmission, tal y como hace @Keviinplz en su docker-compose.yaml, pero no me funcionó.
Si le paso explícitamente el magnet de un torrent a transmission ocurre lo mismo, se queda en la cola al 0% y no arranca.
¿Alguien tiene alguna idea para solucionar esto?
Gracias y saludos!
Edit: Encontré la solución aquí
https://gitlab.alpinelinux.org/alpine/aports/-/issues/12091
Espero que os sirva si os encontrais con este problema
@febag Hola, me pregunto si cuando mencionas que te funciona, fue con clonando el repo actual, con los archivos de @pablokbs o aplicando algo de lo que sale en este foro?. Ya que a me me da algunos de los problemas que mencionan, y no veo pull request con los aportes.
Si tu proyecto si corre, seria genial si publicas tu repo, es que estoy tratando de aprender pero este monton de erroes me supera. Gracias
@febag Cuando le pasaba el torrent a transmission si descargaba, sin embargo flexget no lograba pasarle la info a transmission. Lo que veo es que tu hiciste la configuración de /etc/sysctl.conf
en el host. Probaré si haciendo esa modificación me funciona.
(Uso una Raspberry 4 con Ubuntu Server.)
Hola @HaroldBrenesH, en mi caso no tuve ningún problema con el repo. Mi problema era que mi host era incompatible con el contenedor de Transmission, basado en Alpine 3.13. Al parecer, esto ocurre con algunas distribuciones y es un bug en libseccomp2
, que es una dependencia de Docker. En el siguiente enlace viene explicado:
https://docs.linuxserver.io/faq#libseccomp
La solución a este problema viene explicada en un comentario de la issue que he puesto en mi anterior mensaje, y consiste en ejecutar las siguientes líneas en el host.
wget http://ftp.us.debian.org/debian/pool/main/libs/libseccomp/libseccomp2_2.4.4-1~bpo10+1_armhf.deb
sudo dpkg -i libseccomp2_2.4.4-1~bpo10+1_armhf.deb
Una vez hecho esto, reinicié el contenedor de Transmission y las descargas arrancaron correctamente.
@Keviinplz, el cambio que comentas, lo deshice una vez que probé esta solución, y todo seguía funcionando correctamente.
Muy buenas, alguien tiene publicado algun repo que corra correctamente de Flexget-Plex-Transmission ? O quizas Pablo hizo el live para poder verlo y sacar conclusiones. Gracias mil!