Welcome, Guest
You have to register before you can post on our site.

Username
  

Password
  





Search Forums



(Advanced Search)

Forum Statistics
» Members: 7.345
» Latest member: PaulJacks10
» Forum threads: 3.488
» Forum posts: 19.938

Full Statistics

Online Users
There are currently 146 online users.
» 0 Member(s) | 144 Guest(s)
Bing, Google

Latest Threads
fallo en un RAID 1
Forum: Cuestiones técnicas
Last Post: mauricio del aguila
20-10-2025, 10:22 PM
» Replies: 0
» Views: 38
Vendo Qnap TS-410E
Forum: Compra, Venta e Intercambio
Last Post: teamserpent
17-10-2025, 09:56 AM
» Replies: 2
» Views: 183
Me presento
Forum: Presentaciones
Last Post: teamserpent
16-10-2025, 10:20 AM
» Replies: 0
» Views: 87
Carpetas inmutables en QT...
Forum: Tutoriales
Last Post: German_Ardila
09-10-2025, 12:46 AM
» Replies: 8
» Views: 2.342
Error disco inactivo
Forum: Cuestiones técnicas
Last Post: JoseRic
08-10-2025, 04:02 PM
» Replies: 5
» Views: 755
Error en TL-D800S RAID Gr...
Forum: Cuestiones técnicas
Last Post: Ganekogorta
05-10-2025, 05:28 PM
» Replies: 8
» Views: 1.800
Canal en Telegram QnapClu...
Forum: Anuncios, noticias y enlaces
Last Post: Ganekogorta
05-10-2025, 04:46 PM
» Replies: 122
» Views: 101.885
Problema archivos que des...
Forum: Cuestiones técnicas
Last Post: Ganekogorta
02-10-2025, 07:01 AM
» Replies: 1
» Views: 237
Gestor de contraseñas Ali...
Forum: VMs & Docker Containers
Last Post: yeraycito
27-09-2025, 02:32 PM
» Replies: 1
» Views: 304
Multimedia por toda la ca...
Forum: Firmware, Aplicaciones y Tutoriales
Last Post: Duende
24-09-2025, 06:19 PM
» Replies: 8
» Views: 7.620

 
  Duplicación de redes bridge personalizadas tras reinicio del NAS en Container Station
Posted by: nebur - 21-08-2025, 10:16 AM - Forum: Cuestiones técnicas - Replies (1)

Contexto:
- NAS con Container Station, contenedores gestionados con archivos YML.
- Un contenedor sin red específica (bridge por defecto) funciona correctamente tras reinicio.
- Otro con red creada con docker network create (driver qnet) tampoco presenta problemas.
- Varios contenedores usan redes bridge personalizadas creadas manualmente con docker network create (driver bridge) para comunicación interna, declaradas como external: true en el YML.

Incidencia:
Tras reiniciar el NAS, las redes bridge personalizadas se duplican:
- Aparecen las redes originales (creadas manualmente) junto a redes nuevas con las mismas configuraciones de IP pero nombres autogenerados (ej: br-xxxx).
- Esta duplicación causa conflictos de routing y pérdida de comunicación entre contenedores.

Consecuencia:
Requiero eliminar manualmente contenedores, eliminar ambas redes (las originales y las autogeneradas), recrear las redes manuales y luego reinstanciar los contenedores. Esto rompe la automatización y es inviable ante reinicios no planificados.

Consulta:
¿Por qué Container Station/Docker recrea automáticamente estas redes bridge personalizadas tras el reinicio, duplicándolas y causando conflictos? ¿Es un comportamiento esperado o existe una configuración para evitarlo?


  Plantillas Tautulli
Posted by: Oroimenak - 19-08-2025, 05:35 PM - Forum: Tutoriales - Replies (1)

Hola a todos, después de que el compañero Ganekogorta hiciese un tutoría sobre Docker Tautulli, he decidido añadir un extra mas para que se nos notifique mediante Telegram tanto a nosostros como a la gente con la que compartimos nuestra videoteca de Plex unas pequeñas plantillas.
PD: No se porque los emojis cuando lo edito aparecen pero luego una vez guardado aparecen solo interrogaciones, os dejo aquí de donde he cogido todos esos emojis, simplemente seleccionar el que queremos y ponerlo en plantilla delante del nombre de la sección donde sale la "?"
https://emojicopy.com

tendría que salir de la siguiente forma:

   

Es necesario crear un bot y un grupo y añadir a la gente que queramos que sean notificados, cosa que no explicare ya que se ha explicado varias veces.

Lo que necesitaremos sera:

- Un servidor Plex
- Servidor Tautulli
- 1 Bot o 2, según cada uno, yo tengo 2 uno para que avise a la gente de los nuevos añadidos, caidas del servidor etc... y otro que me avisa de los visitados para ver si el servidor esta sufriendo o no.


Empezamos como lo tengo yo, con 2 bots

Notificaciones de nuevos añadidos y Servidor Up/Down
 
Primeros Pasos:

  1. Nos logearemos en Tautulli e iremos a configuración/Notification Agents y le daremos a: add a new Notification agent y seleccionamos Telegram

   

    2. Ahora rellenamos con nuestros datos los apartados de: Telegram Bot Token y Telegram Chat ID

   

    3.  Nos dirigidos la pestaña de Triggers y seleccionamos los que queramos, en nuestro caso:
       

   4. Una vez que tengamos todo esta seleccionados llega el momento de rellenar con estos datos las plantillas que queremos que se nos muestren en telegram, nos dirigimos entonces a Text y seleccionamos los triggger que hemos seleccionado previamente para rellenar los datos con estas plantillas, en nuestro caso han sido: Recently added, Plex server Down, Plex server back up, debemos rellenar los campos: Subject Line y Message Body.


         

Plantillas
  • Nuevo Añadido
Quote:Subject Line

Nuevo Añadido ({server_name})

Message Body

<movie>{added_date} {timestamp}
?❗ <b>NUEVA PELÍCULA</b>❗ <b>{title}</b> ({year}).
<b>? Biblioteca:</b> <i>{library_name}.</i>
<b>? Colecciones:</b> <i>{collections}.</i>
<b>? Estreno:</b> <i>{release_date}.</i>
<b>? Género:</b> <i>{genres}.</i>
<b>⏳ Duración:</b> <i>{duration} minutos.</i>
<b>? Director:</b> <i>{directors}.</i>
<b>? Actores:</b> <i>{actors:[:5]}.</i>
<b>? Productora:</b> <i>{studio}.</i>
<b>? Valoración:</b> <i>{rating}/10.</i>
<b>? Clasificación por edad:</b> <i>{content_rating}.</i>
<b>? Resolución:</b> <i>{video_resolution}p.</I>
<b>? Tamaño:</b> <i>{file_size}.</i>
<b>? Framerate:</b> <i>{video_framerate}.</i>
<b>? Bitrate:</b> <i>{bitrate} kbps.</i>
<b>? Contenedor:</b> <i>.{container}</i>
<b>? Codec de video:</b> <i>{video_codec}.</i>
<b>? Codec de audio:</b> <i>{audio_codec!u} {audio_channel_layout}.</i>
<b>? Codec de subtítulos:</b> <i>{subtitle_codec!u}.</I>
<b>? Sinopsis:</b> <i>{summary}</i>
<b>? Enlace a "The Movie Database":</b> {themoviedb_url} </movie>
<episode>{added_date} {timestamp}
?❗ <b>NUEVO EPISODIO</b>❗
<b>"Episodio {episode_num} - {episode_name}"</b> de la <i>temporada
{season_num}</i> de <b>{show_name}.</b>
<b>? Biblioteca:</b> <i>{library_name}.</i>
<b>? Emisión:</b> <i>{air_date}.</i>
<b>? Género:</b> <i>{genres}.</i>
<b>⏳ Duración:</b> <i>{duration} minutos.</i>
<b>? Director:</b> <i>{directors}.</i>
<b>? Actores:</b> <i>{actors:[:5]}.</i>
<b>? Productora:</b> <i>{studio}.</i>
<b>? Valoración:</b> <i>{rating}/10.</i>
<b>? Clasificación por edad:</b> <i>{content_rating}.</i>
<b>? Resolución:</b> <i>{video_resolution}p.</i>
<b>? Tamaño:</b> <i>{file_size}.</i>
<b>? Framerate:</b> <i>{video_framerate}.</i>
<b>? Bitrate:</b> <i>{bitrate} kbps.</i>
<b>? Contenedor:</b> <i>.{container}</i>
<b>? Codec de video:</b> <i>{video_codec}.</i>
<b>? Codec de audio:</b> <i>{audio_codec!u} {audio_channel_layout}.</i>
<b>? Codec de subtítulos:</b> <i>{subtitle_codec!u}.</I>
<b>? Sinopsis:</b> <i>{summary}</I>
<b>? Enlace a "The TV Database":</b> {thetvdb_url} </episode>
<season>{added_date} {timestamp}
?❗ <b>NUEVA TEMPORADA</b>
<b>Temporada {season_num}</b> de <b>”{show_name}”.</b>
<b>? Biblioteca:</b> <i>{library_name}.</i>
<b>? Número de episodios disponibles:</b> <i>{episode_count}</i>
<b>? Género:</b> <i>{genres}.</i>
<b>⏳ Duración por episodio:</b> <i>{duration} minutos.</i>
<b>? Actores:</b> <i>{actors:[:5]}.</i>
<b>? Productora:</b> <i>{studio}.</i>
<b>? Clasificación por edad:</b> <i>{content_rating}.</i>
<b>? Sinopsis:</b> <i>{summary}</i>
<b>? Enlace a "The TV Database":</b> {thetvdb_url} </season>
<show>{added_date} {timestamp}
?❗ <b>NUEVA SERIE</b>❗ <big><b>{show_name}</b> ({year}).</big>
<b>? Biblioteca:</b> <i>{library_name}.</i>
<b>? Primera emisión:</b> <i>{air_date}.</i>
<b>? Número de temporadas disponibles:</b> <i>{season_count}</i>
<b>? Género:</b> <i>{genres}.</i>
<b>⏳ Duración por episodio:</b> <i>{duration} minutos.</i>
<b>? Actores:</b> <i>{actors:[:5]}.</i>
<b>? Productora:</b> <i>{studio}.</i>
<b>? Valoración:</b> <i>{rating}/10.</i>
<b>? Clasificación por edad:</b> <i>{content_rating}.</i>
<b>? Sinopsis:</b> <i>{summary}</i>
<b>? Enlace a "The TV Database":</b> {thetvdb_url} </show>

  • Servidor Caído
xxxxxx Aqui devemos sustituir una dirección a una imagen que queramos ver, en mi caso he subido una a imgur.
Quote:Subject Line

❗ <b>INFORMACION</b>❗

Message Body

{datestamp} {timestamp}
<a href="xxxxxxxxxx>.</a>
El <b>Servidor Plex esta Caído</b>, sentimos las molestias.
<b>Intentaremos solucionarlo lo antes posible. </b>
Mientras tanto salga de casa y tomese una caña, <b>le avisaremos en cuanto este solucionado.</b>
Gracias

  • Servidor en Funcionamiento
Quote:Subject Line

❗ <b>INFORMACION</b>❗

Message Body

{datestamp} {timestamp}

<a href="https://i.imgur.com/vI8P5pB.jpg">.</a>.
El <b>Servidor Plex esta Operativo, sentimos las molestias.</b>
Como puede observar <b>somos muy eficientes con nuestro trabajo </b>para que usted pueda disfrutar de una agradable velada del mejor cine.

<b>Gracias</b>


Nos quedarían las notificaciones por telegram de esta forma:

               


Notificaciones de Reproduccion

        1. En este ejemplo usaremos para que notifique los visitados al Administrador del servidor Plex de tal forma que pueda ver si esta el servidor sufriendo o no y ver que se esta reproduciendo, esto es meramente informativo se puede hacer o no. 
       2. Aqui necesitaremos crear otro agente y añadir datos de otro bot y otro grupo diferente al de nuevos añadidos ya que solo seremos nosotros los Admin los que veremos dicha información. 
       3. Los pasos a seguir son los mismo que antes a diferencia de la pantillas que pondrá acontinuacion.
       
       4. En mi caso he seleccionado solamente estos trigger: 
     

Plantillas
Reproduccion
Quote:
Subject Line

❗ <b>NUEVA REPRODUCCIÓN</b>❗

Message Body

<movie>{datestamp} {timestamp}

<b>{user}</b> ha iniciado la reproducción de <b>”{title}”.</b>

<b>? Dispositivo:</b> <i>{player}.</i>
<b>? Sistema operativo:</b> <i>{platform}.</i>
<b>? Reproductor:</b> <i>{product}.</i>
<b>? Tipo de transcodificación:</b> <i>{transcode_decision}.</i>
<b>? Resolución de la reproducción:</b> <i>{stream_video_resolution}.</i>
<b>? Calidad de la reproducción:</b> <i>{quality_profile}.</i>
<b>? Bitrate:</b> <i>{bitrate} kbps.</i>
<b>⏳ Tiempo restante de reproducción:</b> <i>{remaining_duration} minutos.</i>
</movie>

<episode>{datestamp} {timestamp}

<b>{user}</b> ha iniciado la reproducción del <b>”Episodio {episode_num} -
{episode_name}”</b> de la <i>temporada {season_num}</i> de <b>{show_name}.</b>

<b>? Dispositivo:</b> <i>{player}.</i>
<b>? Sistema operativo:</b> <i>{platform}.</i>
<b>? Reproductor:</b> <i>{product}.</i>
<b>? Tipo de transcodificación:</b> <i>{transcode_decision}.</i>
<b>? Resolución de la reproducción:</b> <i>{stream_video_resolution}.</i>
<b>? Calidad de la reproducción:</b> <i>{quality_profile}.</i>
<b>? Bitrate:</b> <i>{bitrate} kbps.</i>
<b>⏳ Tiempo restante de reproducción:</b> <i>{remaining_duration} minutos.</i>
</episode>

Reproduccion detenida
Quote:Subject Line
❗ <b>REPRODUCCIÓN FINALIZADA</b>❗

Message Body
<movie>{datestamp} {timestamp}


<b>{user}</b> ha finalizado la reproducción de <b>"{title}".</b>

<b>⏳ Tiempo restante de reproducción:</b> <i>{remaining_duration} minutos.</i>
</movie>

<episode>{datestamp} {timestamp}

<b>{user}</b> ha finalizado la reproducción del <b>"Episodio {episode_num} - {episode_name}"</b> de la <i>temporada {season_num}</i> de <b>{show_name}.</ b>

<b>⏳ Tiempo restante de reproducción:</b> <i>{remaining_duration} minutos.</i>
</episode>

Reproduccion pausada
Quote:Subject Line
❗ <b>REPRODUCCIÓN PAUSADA</b>❗

Message Body

<movie>{datestamp} {timestamp}

<b>{user}</b> ha parado la reproducción de <b>"{title}".</b>

<b>⏳ Tiempo restante de reproducción:</b> <i>{remaining_duration} minutos.</i>
</movie>

<episode>{datestamp} {timestamp}

<b>{user}</b> ha parado la reproducción del <b>"Episodio {episode_num} - {episode_name}"</b> de la <i>temporada {season_num}</i> de <b>{show_name}.</b>

<b>⏳ Tiempo restante de reproducción:</b> <i>{remaining_duration} minutos.</i>
</episode>

Inicia de nuevo de la reproducción
Quote:Subject Line
❗ <b>RESUMEN DE REPRODUCCIÓN</b>❗

Message Body
<movie>{datestamp} {timestamp}

<b>{user}</b> continúa la reproducción de <b>”{title}”.</b>

<b>? Dispositivo:</b> <i>{player}.</i>
<b>? Sistema operativo:</b> <i>{platform}.</i>
<b>? Reproductor:</b> <i>{product}.</i>
<b>? Tipo de transcodificación:</b> <i>{transcode_decision}.</i>
<b>? Resolución de la reproducción:</b> <i>{stream_video_resolution}.</i>
<b>? Calidad de la reproducción:</b> <i>{quality_profile}.</i>
<b>? Bitrate:</b> <i>{bitrate} kbps.</i>
<b>⏳ Tiempo restante de reproducción:</b> <i>{remaining_duration} minutos.</i>
</movie>

<episode>{datestamp} {timestamp}



Attached Files Thumbnail(s)
                       
                   


  Backrest copia seguridad dockers
Posted by: yeraycito - 10-08-2025, 10:06 PM - Forum: VMs & Docker Containers - No Replies

Desde hace ya bastante tiempo está de moda instalar aplicaciones a través de Docker con todas las ventajas que eso implica y que no son necesarias explicarlas. En todos los programas y los dockers no son una excepción, es muy recomendable hacer copias de seguridad de sus configuraciones para que en caso de que exista algún problema al restaurarlas todo vuelva a la normalidad. Aunque muchos dockers funcionan sin necesidad de hacerlo en este apartado del foro relativo a dockers siempre se explica que es muy recomendable crear carpetas persistentes Dockerdata para que esas configuraciones de los dockers sean accesibles y se pueda hacer copia de seguridad de ellas.

A la hora de hacer copias de seguridad de las carpetas persistentes de los dockers no hay mucho donde escoger y de lo poco que hay puede que no convenga del todo según los casos...... algunos sistemas automatizados necesitan mapear por partes los dockers y otros, por el contrario, lo hacen al completo sin ninguna discriminación lo cual es un problema gordo si, por ejemplo, se tiene mapeado un volumen de Plex con 2 TB de películas sin olvidar que mayórmente los sistemas actuales de copia de seguridad de dockers funcionan a través de scripts o consola.

En este post voy a tratar de explicar como instalar y configurar un docker llamado Backrest que tiene interfaz gráfica, permite copias de seguridad de los dockers de forma programada a voluntad, restauración de esas copias si fuera necesario, notificaciones a través de distintos servicios, etc, etc.

El compose para su instalación a través de Container Station o Portainer es el siguiente:


services:
    backrest:
        image: garethgeorge/backrest:latest
        container_name: backrest
        volumes:
           - /path/to/backrest/data:/data
           - /path/to/backrest/config:/config
           - /path/to/backrest/cache:/cache
           - /path/to/backrest/tmp:/tmp
           - /path/to/backup/data:/userdata
           - /path/to/local/repos:/repos
           - /var/run/docker.sock:/var/run/docker.sock:ro
       environment:
           - BACKREST_DATA=/data
           - BACKREST_CONFIG=/config/config.json
           - XDG_CACHE_HOME=/cache
           - TMPDIR=/tmp
           - TZ=Europe/Madrid
       ports:
           - 9898:9898
       restart: always


A tener en cuenta:

 - Los directorios /path/to/backrest hacen referencia a los directorios de la configuración de Backrest que hay que adecuarlos a las carpetas compartidas del nas.

 - El directorio /path/to/backup hace referencia a la carpeta compartida del nas Dockerdata en la que se guardan las configuraciones de los dockers que tengamos. Si 
   esas configuraciones están por separado en otros directorios podemos mapear la carpeta compartida superior.

 - El directorio /path/to/local/repos hace referencia a la carpeta compartida principal del nas en la que queramos guardar las copias de seguridad de Backrest. Esa 
   carpeta puede ser del propio nas o de otro dispositivo de la red local que tengamos mapeado.

Adicionálmente a través de la interfaz de Backrest podemos configurar distintos servicios en la nube como destinos de esas copias de seguridad:

 - Backblaze B2: b2:bucket or b2:bucket/prefix

- AWS S3: s3:bucket or s3:bucket/prefix

- Google Cloud: gs:bucket:/ or gs:bucket:/prefix

- SFTP: sftp:user@host:/path/to/repo

- Rclone: rclone:remote:path (requires rclone installation)


Instalado el compose de Backrest en el nas accedemos a su interfaz mediante el navegador a través de    http://iplocaldelnas:9898

Por defecto Backrest no requiere de usuario - contraseña para acceder a su interfaz así que al hacerlo nos propone su creación voluntaria:



   



El funcionamiento principal de Backrest se basa en dos premisas:

 - Creación de lo que denominan Repos que consisten en las carpetas donde se guardarán las copias de seguridad de los dockers de Backrest

 - Creación de Planes de copia de seguridad.

Estas dos configuraciones las podemos hacer por separado para cada docker que nos interese hacer copia de seguridad. Para este tutorial paso a explicar a continuación como realizar esos procesos con un único docker.

Lo primero que tenemos que hacer a través de la interfaz de Backrest es añadir un nuevo Repo



   



 - Le ponemos el nombre que nos apetezca

 - En el compose de instalación asignamos la ruta del nas para guardar los repos /path/to/local/repos:/repos así que se la indicamos también ( esa carpeta repos nos       aparece en un desplegable clickando en el apartado correspondiente ) añadiendo la carpeta en la que queramos se guarde la copia de seguridad de ese docker en     concreto, en este caso queda así:    /repos/Homarr

 - Las copias de seguridad que se generen están encriptadas de ahí que se nos pida una contraseña.

 - Los apartados con flechas verdes Prune Policy - Check Policy se pueden dejar tal cual sabiendo que han referencia a esto:

          Política de limpieza: Programación para la limpieza de datos sin referencias

          Política de comprobación: Programación para la verificación de la integridad de las copias de seguridad

A tener en cuenta: En el apartado Repository URL podemos configurar si queremos los servicios en la nube como destino de las copias de seguridad anteriórmente citados.

Configurado todo guardamos los cambios.


Puesto en funcionamiento nuestro primer Repo pasamos a la segunda parte consistente en añadir un Plan asociado a ese Repo creado:



   



 - Le ponemos el nombre que nos apetezca.

 - Seleccionamos el Repo creado anteriórmente.

 - Similar al caso anterior, en el compose pusimos la ruta donde tenemos guardadas las configuraciones de los dockers que tengamos con el parámetro
    /path/to/backup/data:/userdata así que clickando en el apartado Patch de la interfaz nos aparecerá entre otras la carpeta userdata y dentro de ella, en 
    este caso, la carpeta de configuración de Homarr.

 - En los apartados marcados con flechas verdes podemos configurar a nuestro gusto cuando se hacen las copias de seguridad y el tiempo de retención.


 El apartado marcado con flecha azul ( Hooks ) merece una atención especial:



   



Como se puede ver tenemos varias opciones para elegir, de todas ellas escogemos Command



   



 - CONDITION_SNAPSHOT_START nos aparece si clickamos en un desplegable y hace referencia al inicio de la copia de seguridad

 - docker stop homarr lo escribimos a mano y da la orden de detener el contenedor Homarr ANTES de hacer la copia de seguridad

 - ON_ERROR_FATAL también aparece en un desplegable y obliga a detener la copia si ocurre un error grave.


En el sitio donde estamos añadimos un segundo Hook junto al anterior:



   



 - CONDITION_SNAPSHOT_END hacer referencia a la finalización de la copia de seguridad por parte de Backrest de ese contenedor Homarr

 - docker start homarr arranca el contenedor después de finalizada la copia

 - ON_ERROR_FATAL impide lo anterior si hay un error grave


Con esto configurado ya tendríamos lista la copia de seguridad automatizada del contenedor, en este caso, Homarr, si opcionálmente quisiéramos que Backrest nos notificara el inicio - finalización de la copia de seguridad, por ejemplo, a través de un bot de Telegram añadimos un tercer Hook junto a los anteriores.



   



 - Las dos condiciones que se ven son las mismas de antes y hacen referencia al inicio - finalización de la copia de seguridad

 - Las notificaciones anteriores mediante un bot de Telegram a través de Shoutrrr tienen que estar configuradas en el siguiente formato:

telegram://XXXXX@telegram?chats=YYYYYYYYYY

Las XXXX se corresponden al token del bot

Las YYYYYYY se corresponden al Chat ID



Configurado todo guardamos los cambios. De esta forma ya tenemos configurada en Backrest las copias de seguridad de un docker en concreto, lo siguiente sería repetir los mismos procesos anteriores adecuándolos a los demás dockers de los que queramos hacer copia de seguridad automatizada.

En este punto primigenio la interfaz de Backrest queda así:



   



Os pongo una imagen que no es mia para que veais como queda un sistema completo ya configurado:



   



Backrest no sólo permite hacer copias de seguridad de los dockers sino que también permite su fácil restauración ( las siguientes imágenes tampoco son mias ):



   



Proceso de restauración:



   



Hasta aquí lo principal, sin embargo Backrest permite múltiples configuraciones a través de condiciones, variables, etc que por su extensión no voy a explicar. En su lugar os dejo un enlace a la documentación del programa:


https://garethgeorge.github.io/backrest/...ng-started


  Virtualizacion station
Posted by: Ruben Rojas - 10-08-2025, 01:18 AM - Forum: VMs & Docker Containers - No Replies

Hola amigos
Tengo un TS-264 e instalé virtualizacion station y , se instala pero cuando intento acceder, queda en CARGANDO todo el tiempo y no arranca
Ayuda por favor
Gracias


  Error disco inactivo
Posted by: JoseRic - 07-08-2025, 09:36 PM - Forum: Cuestiones técnicas - Replies (5)

Hola, tengo un TS-230 con dos discos y me ha aparecido el error en uno de ellos que dice disco inactivo, ¿Es posible que el disco se haya estropeado del todo?
No se si se puede tomar alguna acción desde el propio NAS, ¿alguna recomendación?

Muchas gracias por anticipado.

Saludos,

JoseRic


  Docker de Tautulli y su QPKG
Posted by: Ganekogorta - 02-08-2025, 11:29 PM - Forum: VMs & Docker Containers - Replies (1)

Hola

El otro día un usuario de Qnap consultaba si existía una aplicación en QPKG de Tautulli.

Para el que no lo conozca Tautulli es un programa que es capaz de conectarse a nuestra cuenta del servidor Plex y obtener métricas y estadísticas de uso de Plex. Algo que puede ser útil si queremos ver como se usa en nuestra familia nuestra biblioteca de músicas, fotos y películas. 

Se que hay aplicaciones en la web de www.myqnap.org como https://www.myqnap.org/product/tautulli-apache84/ pero aunque parezca gratuita, en realidad se necesita el qpkg requerido por ella https://www.myqnap.org/product/apache84/ que si tiene un coste. 

El problema de estas aplicaciones es que no son actualizadas con frecuencia y la ventaja de este docker es que siempre que es desplegado, se despliega la última imagen disponible.


1-Requisitos
2-Despliegue del docker
3-Instalacion del pqkg


1- Requisitos
Para instalar el docker, los requisitos son sencillos:
-disponer de una cuenta Plex.
-tener instalado y activo Container Station.
-poder acceder por ssh a la nas (Panel de control, red y servicios, telnet/ssh y activar y permitir usuarios recordando el puerto)

2-Despliegue del docker
Abrimos nuestra consola de comandos por ssh.
Un programa que siempre recomiendo es Putty , pero también tenemos qpkg instalables en nuestra Qnap como "Putty HD". Hay muchos mas y la lista sería interminable ya que algunos SO los integran de serie.

Y lanzamos el siguiente comando:
Code:
docker run -d  --name=tautulli --restart=unless-stopped -v /share/DockerData/tuatulli:/config -e PUID=1000 -e PGID=100 -e TZ=Europe/Madrid -p 8181:8181 ghcr.io/tautulli/tautulli

Resumen de parámetros:
- con  "-v share/DockerData/tuatulli:/config" indicamos una la ruta persistente. En este caso uso una carpeta compartida llamada "DockerData", pero podriamos usar la carpeta "Public" y en ese caso escribiriamos "-v share/Public/tuatulli:/config"
- con "-e PUID=1000 -e PGID=100" indicamos el usuario de la nas y su grupo. Al escoger 1000, será el primero creado y 100 es el de todos. Pero si queremos usar uno distinto obtendremos los valores ejecutando el comando de consola "id usuario_deseado"
- con "-e TZ=Europe/Madrid" indicamos nuestra zona horaria
- con "-p 8181:8181" indicamos el puerto http por el que accederemos. Si queremos otro como el 7777, entonces pondremos "-p 7777:8181"

Una vez desplegado el docker, sólo hemos de ir a la web "http://ip_nas:8181" y veremos la web con el asistente inicial.
   

3- Instalación del QPKG
Digamos que parece ser lo mas cómodo pero sigue siendo obligado tener instalado y funcionando a Container Station.

El enlace de descarga del QPKG es el siguiente ubicado en Mega tautulli.qpkg

La instalación es sencilla, como en cualquier qpkg. 

   

   

   

Con la salvedad de que al no ser un paquete firmado os lanza un aviso de ello y debéis aceptarlo.
   

   

   

   

Y ya tendremos el icono de la aplicación en el appCenter

   

En realidad este qpkg hace alguna función mas ya que nos permite variar su ubicación (carpeta persistente), el puerto donde es accesible, la TZ, ... y unos pocos parámetros mas.

En su primer inicio se instala en la carpeta "tautulli" dentro de la carpeta compartida "Public".
Si quisiésemos hacer algún cambio de parámetros, debemos:
 -detener la app desde el "app Center"
 -editar el archivo oculto ".env_tautulli" ubicado en "Public/tautulli"
 - guardar los cambios
 - iniciar el qpkg desde el appCenter

Es muy importante respetar el orden de las líneas, sus saltos y no alterar su orden.
Si por lo que sea sale mal o no sabemos como estaba, podemos eliminar el archivo, que el docker al iniciarse volvería a crear el de defecto.
El archivo .env_tautulli contiene el siguiente contenido por defecto:
Code:
PUERTO=8181
CONFIG=/share/Public/tuatulli
PUID=1000
PGID=100
TZ=Europe/Madrid
LOG=TRUE


Si alteramos la ruta del parámetro CONFIG, el docker será movido de ubicación.
Así que antes de hacerlo es conveniente asegurarse que lo hacemos correctamente.
Por ejemplo podríamos enviarlo /share/CarpetaCompartida/tautulli


Una vez desplegado el docker, sólo hemos de ir a la web "http://ip_nas:8181" (o el puerto que hayamos elegido) y veremos la web con el asistente inicial.


Sobre el uso poco voy a contar ya que es sencillo de configurar y usar.
Podéis echar una ojeada aquí https://tautulli.com/#features


  Problemas con conexion SSH
Posted by: Dorkf - 01-08-2025, 08:24 PM - Forum: Cuestiones técnicas - Replies (10)

Hola, buenas  
No puedo conectarme con winscp al qnap por protocolo SSH.
Estoy en una red local, he habilitado el servicio, pero cuando voy a conectarme meda error.
¿Alguien tiene alguna idea de como hacerlo?
La ip del servidor es la misma que con la que entro al QTS panel de control, no?
He dado acceso un usuario administardor.
No se que hacer.


  Usar NAS "vieja" para backup
Posted by: freak128 - 27-07-2025, 05:10 PM - Forum: Empezando con tu NAS - Replies (4)

Hola, soy nuevo en el foro y me he unido porque tengo una duda sobre backup. Comentar que uso NAS desde hace años en un entorno doméstico para tener en red todas mis fotos, vídeos y música que reproduzco desde un reproductor Bluray Oppo y, evidentemente, también guardo archivos que consumo des de los distintos PCs de casa.

Hace unos años me compré una TS-431P en la que monté 4 discos en RAID5 y usaba las snapshots internas y de vez en cuando copiaba los datos a un disco externo manualmente. Por desgracia se me ha estropeado la bahía del 4 disco (confirmado por el SAT de QNAP) por lo que no he perdido datos pero estoy en jaque. Por eso he decidido comprarme una NAS nueva pero por motivos económicos he "bajado" a un modelo de dos bahías en el que haré un RAID1, concretamente una TS-262-4G. Cuando me llegue pasaré todos los datos a la nueva NAS que usaré de producción y estaba pensando en usar la vieja de backup. Antes volvería a incializar los discos de la TS-431P para montar un RAID0 y así tener espacio de sobras para las copias. 

Después de este rollo de introducción planteo mi pregunta. Qué método usaríais vosotros para hacer el backup de la TS-262 a la TS-431? Por un lado entiendo que lo mejor es usar alguna aplicación de QNAP o de terceros instalada en la TS-262, verdad? O sería mejor instalarla en el destino y que sea la TS-431 la que gestione las copias? Cual sería la mejor conectividad para el backup? Las conecto las dos por ethernet o las conecto por USB? Ahora tengo el router de Vodafone que tiene 4 puertos ethernet y los tengo todos ocupados. Podría poner un switch externo y así tener suficientes puertos, pero si el backup por USB me puede ir mejor entonces me lo ahorraría. Por otro lado no sé si el hecho de tener la NAS de backup sin red puede ser más seguro para evitar infecciones de virus...
Vamos que tengo unas cuantas dudas y no tengo claro por donde tirar.

Gracias!


  Docker ConvertX para convertir archivos
Posted by: yeraycito - 26-07-2025, 09:30 PM - Forum: VMs & Docker Containers - No Replies

Los desarrolladores de este docker no se han calentado mucho la cabeza para ponerle un nombre, en fin, un docker estilo caja de herramientas que sirve tanto para un roto como para un descosido, es decir, convertir entre formatos de una buena cantidad de tipos de archivos que son los siguientes:



   



El compose para su instalación a través de Container Station o Portainer es el siguiente:


services:
    convertx:
        image: ghcr.io/c4illin/convertx:latest
        container_name: convertx
        restart: unless-stopped
        ports:
            - 3522:3000
        environment:
             - JWT_SECRET=WpDPBLWrsdRyhQBRDzyDbcsTsVVhmWRviBQFwBRZipSyzXcfoxAxEPUUsliyLzfz
             - ACCOUNT_REGISTRATION=false
             - ALLOW_UNAUTHENTICATED=true
             - HTTP_ALLOWED=true
             - AUTO_DELETE_EVERY_N_HOURS=1
        volumes:
            - /your/local/path/to/data:/app/data


A tener en cuenta:

 - El compose anterior está configurado para NO utilizar usuario - contraseña para acceder a su interfaz, si queremos añadir esa capa de seguridad modificaremos los 
    dos siguientes valores dejándolos así:

               - ACCOUNT_REGISTRATION=true

               - ALLOW_UNAUTHENTICATED=false

 - El valor AUTO_DELETE_EVERY_N_HOURS hace referencia a las horas en las que el docker eliminará los archivos que le pongamos, un valor de 0 desactiva este 
    ajuste.

 - El valor /your/local/path/to lo deberemos modificar adecuándolo a la ruta del nas de la carpeta compartida en la que queramos que se guarde la configuración del 
   docker.


Instalado ConvertX accederemos a su interfaz mediante un navegador en     http://iplocaldelnas:3522



   



Lo siguiente es subir un archivo y clickar en Search for conversions



   



ConvertX ya ha detectado que tipo de archivo le hemos subido y nos propone formatos de archivo para convertir así que sólo tenemos que escoger uno de ellos.



   



Hecha la conversión muy rápidamente se nos ofrece el nuevo archivo convertido para poder descargarlo.



   



Poco más que añadir, como curiosidad diré que la gran cantidad de tipos de archivos que admite ConvertX hace que la imagen del docker sea bastante grande, en concreto 2.6 gigas.


  Docker optimizador de imágenes
Posted by: yeraycito - 26-07-2025, 08:19 PM - Forum: VMs & Docker Containers - Replies (1)

A la hora de mejorar la calidad de las imágenes, modificar su tamaño o realizar conversiones de formato podemos utilizar programas especializados o decantarnos por usar la enorme cantidad de servicios online existentes para ello algo que no es aconsejable por cuestiones de privacidad y ahora más aún por la manía que tiene la IA de estar en todas partes quedándose con todo.

El docker de este post tiene el llamativo nombre de Mazanoke y su composición y funcionamiento son más sencillos que el mecanismo de un chupete, sin embargo sus funciones son de lo más interesantes:


 - Optimiza las imágenes en tu navegador.

- Ajusta la calidad de la imagen.

- Establece el tamaño del archivo de destino.

- Establece el ancho y alto máximos.

- Pega imágenes desde el portapapeles.

- Convierte entre y a JPG, PNG, WebP, ICO.

- Convierte desde HEIC, AVIF, TIFF, GIF, SVG.

- Centrado en la privacidad.

- Funciona sin conexión.

- Procesamiento de imágenes en el dispositivo.

- Elimina los datos EXIF (ubicación, fecha, etc.).

- Sin seguimiento.


El compose para su instalación a través de Container Station o Portainer es el siguiente:


services:
    mazanoke:
         container_name: mazanoke
         image: ghcr.io/civilblur/mazanoke:latest
         restart: unless-stopped
         ports:
             - 3474:80


Como se puede ver en el compose este docker no utiliza carpetas persistentes y no lo hace porque no lo necesita ya que no almacena nada.

Instalado Mazanoke accedemos con el navegador a su interfaz mediante     http://iplocaldelnas:3474



   



En el apartado de opciones nos encontramos las siguientes:



   



Configuradas las tareas que queramos realizar procedemos a subirle la imagen correspondiente con el siguiente resultado:



   



Ya sólo nos queda descargarnos la imagen....... fin.