<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/">
	<channel>
		<title><![CDATA[Foro QNAP en español - VMs & Docker Containers]]></title>
		<link>https://www.qnapclub.es/</link>
		<description><![CDATA[Foro QNAP en español - https://www.qnapclub.es]]></description>
		<pubDate>Fri, 17 Apr 2026 11:07:39 +0000</pubDate>
		<generator>MyBB</generator>
		<item>
			<title><![CDATA[Trasladando docker de Joplin con su bbdd postgresql]]></title>
			<link>https://www.qnapclub.es/showthread.php?tid=5787</link>
			<pubDate>Sun, 05 Apr 2026 13:07:05 +0200</pubDate>
			<dc:creator><![CDATA[<a href="https://www.qnapclub.es/member.php?action=profile&uid=148">Ganekogorta</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.qnapclub.es/showthread.php?tid=5787</guid>
			<description><![CDATA[Hola<br />
<br />
En este post vamos a tratar de describir como hacer una copia o mover un <a href="https://www.qnapclub.es/showthread.php?tid=4551" target="_blank" rel="noopener" class="mycode_url">docker de Joplin que usa como BBDD una postgresql</a> desde una QNAP a otra máquina.<br />
<br />
Para ello nos apoyaremos en el gestor de BBDD <a href="https://www.qnapclub.es/showthread.php?tid=3516" target="_blank" rel="noopener" class="mycode_url">PgAdmin</a>. <br />
<br />
Los pasos a realizar serán los siguientes:<br />
1-detenemos el docker de Joplin<br />
2-instalacion del docker de postgresql en la máquina nueva<br />
3_1-instalación del docker de PgAdmin en la máquina nueva (opcion 1)<br />
3_2-agregar servidor postgresql de máquina original en PgAdmin de máquina nueva (opcion 1)<br />
4-1-agregar servidor postgresql de máquina nueva en PgAdmin de máquina original (opcion 2)<br />
5-copia de seguridad de la BBDD usando PgAdmin<br />
6-restauración de la BBDD en el nuevo postgresql usando PgAdmin<br />
7-instalación del docker de Joplin en la nueva máquina apuntando a la BBDD restaurada<br />
8-modificaciones de redirecciones en el router o proxy  inverso <br />
<hr class="mycode_hr" />
<br />
<span style="font-size: medium;" class="mycode_size">1-detenemos el docker de Joplin<br />
<br />
</span>Este punto es importante ya que podemos tener algún cliente externo haciendo modificaciones a los datos de Joplin y por tanto haciéndolos en la BBDD.<br />
La detención la podemos hacer con algun gestor de dockers tipo <a href="https://www.qnapclub.es/showthread.php?tid=3506" target="_blank" rel="noopener" class="mycode_url">Portainer</a>,  el <a href="https://www.qnapclub.es/showthread.php?tid=5401" target="_blank" rel="noopener" class="mycode_url">bot de Telegram para controlarlos</a> o hacerlo mediante la consola de comandos.<br />
<br />
En el siguiente comando de ejemplo el docker de Joplin se llama "joplin" (muy original  <img src="https://www.qnapclub.es/images/smilies/wink.png" alt="Wink" title="Wink" class="smilie smilie_2" /> )<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>docker stop joplin</code></div></div><br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3838" target="_blank" title="">joplin_mover_1.jpg</a> (Size: 3,52 KB / Downloads: 42)
<!-- end: postbit_attachments_attachment --><br />
<br />
<hr class="mycode_hr" />
<br />
<span style="font-size: medium;" class="mycode_size">2-instalacion del docker de postgresql en la máquina nueva</span><br />
<br />
Aquí no hay mucho misterio, sólo hemos de lanzar el siguiente comando si fuese de QNAP<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>docker run -d --name="postgresql" --restart always -p 5432:5432-e POSTGRES_USER=usuario_admin -e POSTGRES_PASSWORD=clave_usuario -e POSTGRES_DB=postgresql_db -v /share/DockerData/postgresql:/var/lib/postgresql/data postgres:13.8</code></div></div><br />
Como voy a hacerlo en un Terramaster, el código será similar a este otro<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>docker run -d --name="postgresql" --restart always -p 5432:5432-e POSTGRES_USER=usuario_admin -e POSTGRES_PASSWORD=clave_usuario -e POSTGRES_DB=postgresql_db -v /Volume1/DockerData/postgresql:/var/lib/postgresql/data postgres:13.8</code></div></div><br />
También nos puede ser interesante indicar la ip del docker si sabemos el rango que va a tener. Esto se haría añadiendo algo como "--ip 10.10.30.2"<br />
<br />
En el caso del comando anterior, no hemos puesto como versión de postgresql la "latest" y es que hemos obligado la versión del postgresql a 13.8, pero podemos usar otras, pero hemos de asegurarnos que la versión del docker de Joplin es compatible con la versión de postgresql que instalemos.<br />
<br />
También hemos de leer la documentación del docker si usamos otras versiones ya que es posible que nos pida definir otras variables a la hora de crearlo.<br />
<br />
<hr class="mycode_hr" />
<span style="font-size: medium;" class="mycode_size">3_1-instalación del docker de PgAdmin en la máquina nueva (opcion 1)</span><br />
<br />
Este paso es opcional ya que NO tenemos porque instalar otro PgAdmin en la máquina nueva puesto que ya tenemos uno en la vieja. <br />
Podemos usar el PgAdmin de la Qnap para gestionar postgresql de otras máquinas de nuestra red.<br />
<br />
He puesto este paso ya que creo interesante que si estamos moviendo dockers y BBDD de postgresql a una nueva máquina, es que la vieja va a ser retirada en algún modo y con este paso ya tenemos un nuevo PgAdmin operativo para futuros usos.<br />
<br />
Para el despliegue del nuevo docker de PgAdmin usaremos este comando en una Qnap o en una Terramaster (es el mismo  <img src="https://www.qnapclub.es/images/smilies/biggrin.png" alt="Big Grin" title="Big Grin" class="smilie smilie_4" /> )<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>docker run -d  -p 9158:80 -p 9157:443 --restart always --name="pgadmin4" -e PGADMIN_DEFAULT_EMAIL=mi_correo_electronico -e PGADMIN_DEFAULT_PASSWORD=clave  dpage/pgadmin4:9.14.0</code></div></div><br />
Los puertos 9158 y 9157 pueden ser otros de nuestra elección.<br />
<br />
<hr class="mycode_hr" />
<span style="font-size: medium;" class="mycode_size">3_2-agregar servidor postgresql de máquina original en PgAdmin de máquina nueva (opcion 1)</span><br />
<br />
Aquí tras identificarnos en el PgAdmin, hemos de agregar un nuevo servidor de postgresql en su lista.<br />
Para hacerlo podemos hacerlo pulsando sobre cualquiera de las dos opciones de la siguiente imagen<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3844" target="_blank" title="">joplin_mover_19.jpg</a> (Size: 164,69 KB / Downloads: 36)
<!-- end: postbit_attachments_attachment --><br />
<br />
Se nos presenta un asistente que completaremos como en las siguiente imágenes<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3845" target="_blank" title="">joplin_mover_20.jpg</a> (Size: 66,15 KB / Downloads: 42)
<!-- end: postbit_attachments_attachment --><br />
<br />
ahora rellenamos con los datos de identificación (nombre de la base de datos, usuario y clave que usamos en su día cuando creamos el docker de postgresql)<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3846" target="_blank" title="">joplin_mover_22.jpg</a> (Size: 65,78 KB / Downloads: 41)
<!-- end: postbit_attachments_attachment --><br />
<br />
Y tras aceptar, ya tendremos nuestro servidor postgresql de la máquina vieja registrado en el PgAdmin de la máquina nueva.<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3847" target="_blank" title="">joplin_mover_23.jpg</a> (Size: 20,67 KB / Downloads: 40)
<!-- end: postbit_attachments_attachment --><br />
<hr class="mycode_hr" />
<br />
<span style="font-size: medium;" class="mycode_size">4-1-agregar servidor postgresql de máquina nueva en PgAdmin de máquina original (opcion 2)</span><br />
<br />
De la misma forma, si no quisiéramos instalar el docker de PgAdmin en la nueva máquina, podemos usar el PgAdmin de la vieja para agregar el servidor postgresql de la máquina nueva y de esa forma el PgAdmin de la vieja puede gestionar las BBDD de postgreSQL de la nas vieja y las de la nueva máquina.<br />
<br />
El proceso de adicción del nuevo servidor de postgreSQL es casi calcado del del punto anterior.<br />
Nos identificamos en el PgAdmin de la Nas vieja e iniciamos el asistente de añadir un servidor:<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3848" target="_blank" title="">joplin_mover_24.jpg</a> (Size: 100,63 KB / Downloads: 37)
<!-- end: postbit_attachments_attachment --><br />
<br />
Suministramos los datos del nuevo servidor de PostgreSQL para registrarlo<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3849" target="_blank" title="">joplin_mover_25.jpg</a> (Size: 48,42 KB / Downloads: 39)
<!-- end: postbit_attachments_attachment --><br />
<br />
rellenamos con los datos de ip, usuario, clave y nombre de la base de datos<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3850" target="_blank" title="">joplin_mover_26.jpg</a> (Size: 43,58 KB / Downloads: 39)
<!-- end: postbit_attachments_attachment --><br />
<br />
Y con eso, ya tendremos nuestro servidor PostgreSQL de la máquina nueva, registrado en el PgAdmin de la Nas vieja<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3851" target="_blank" title="">joplin_mover_27.jpg</a> (Size: 39,82 KB / Downloads: 36)
<!-- end: postbit_attachments_attachment --><br />
<hr class="mycode_hr" />
<span style="font-size: medium;" class="mycode_size">5-copia de seguridad de la BBDD usando PgAdmin</span><br />
<br />
Es muy importante que los docker de Postgresql y PgAdmin estén en la misma red de dockers o en la misma red local. Si no lo hacemos, el docker de PgAdmin no podrá alcanzar al docker de PostgreSQL.<br />
<br />
Una vez identificados en PgAdmd y ya teniendo la conexión al servidor PostgreSQL podemos hacer la exportación.<br />
<br />
En la siguiente imagen vemos que PgAdmin tiene definidas dos conexiones a dos servidores de PostgreSQL distintos.<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3839" target="_blank" title="">joplin_mover_2.jpg</a> (Size: 98,46 KB / Downloads: 43)
<!-- end: postbit_attachments_attachment --><br />
<br />
El ejemplo, el que nos interesa es el llamado "postgressql" y su bbdd "joplin".<br />
<br />
Para exportar la BBDD, seleccionamos la bbdd "joplin" y pulsamos botón secundario.<br />
Al hacerlo se nos presenta un menú emergente del que seleccionaremos la opción de "respaldar"<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3840" target="_blank" title="">joplin_mover_3.jpg</a> (Size: 81,6 KB / Downloads: 41)
<!-- end: postbit_attachments_attachment --><br />
<br />
Al continuar, empezará el proceso. Si pulsamos a la información durante la acción, podemos en una ventana el comando que se lanza y como va desarrollándose la copia de seguridad. <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3842" target="_blank" title="">joplin_mover_4.jpg</a> (Size: 46,76 KB / Downloads: 40)
<!-- end: postbit_attachments_attachment --><br />
<br />
En esa ventana podemos ver el comando que se lanza en el sistema (pg_dump).<br />
Es conveniente recordar que si lo hacemos las restauraciones a versiones de postgresql distin podemos tener problemas de versión.<br />
Como regla general, la base de datos exportada no dará problemas si lo importamos desde una versión igual o superior.<br />
En el caso de la imagen se ve en la captura el comando "/usr/local/pgsql-16/pg_dump" . Es decir es una versión 16.<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3841" target="_blank" title="">joplin_mover_5.jpg</a> (Size: 98,52 KB / Downloads: 41)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
Nota:<br />
En el caso de que usemos un PgAdmin para exportar y otro PgAdmin para importarlo, tenemos un pequeño inconveniente, y es que la copia ha queda <span style="font-weight: bold;" class="mycode_b">dentro</span> del docker de PgAdmin.<br />
Para poder moverlo al sistema de archivo de la nas, hemos de lanzar un comando que lo copia por ejemplo a la carpeta /Public.<br />
La ruta del archivo dentro del docker es "/var/lib/pgadmin/storage/usuario_pgadmin/" y el archivo será "joplin" (o el nombre que escribimos en las pantallas anteriores).<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3843" target="_blank" title="">joplin_mover_6.jpg</a> (Size: 12,62 KB / Downloads: 43)
<!-- end: postbit_attachments_attachment --><br />
<br />
El comando a ejecutar es similar al siguiente.<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>docker cp nombre_docker_pgadmin:/var/lib/pgadmin/storage/usuario_pgadmin/joplin /share/Public/joplin</code></div></div><br />
He usado como destino la carpeta Public porque existe en todas las nas de QNAP y así no tenemos pérdida a la hora de recuperarla  <img src="https://www.qnapclub.es/images/smilies/biggrin.png" alt="Big Grin" title="Big Grin" class="smilie smilie_4" /><br />
<br />
Una forma para evitar tener que usar el anterio comando sería si definimos en la cadena de creación del docker PgAdmin una ruta persistente del tipo<br />
"-v /share/DockerData/pgadmin:/var/lib/pgadmib/storage".<br />
Así al hacer la exportación, los archivos quedarían en esa carpeta accesible desde el sistema de archivos de la nas y nos evitaríamos lo del comando "docker cp"  <img src="https://www.qnapclub.es/images/smilies/wink.png" alt="Wink" title="Wink" class="smilie smilie_2" />  y podemos copiar a una carpeta de la nas destino para hacer la importación.<br />
<hr class="mycode_hr" />
<br />
<span style="font-size: medium;" class="mycode_size">6-restauración de la BBDD en el nuevo postgresql usando PgAdmin</span><br />
<br />
Teniendo ya accesible la copia desde el PgAdmin, ahora toca restaurarla.<br />
En función de como y desde donde hicimos la exportación procederemos de forma similar en todos los casos<br />
<br />
Vamos al caso fácil, tenemos un PgAdmin con los dos servidores PostgreSQL (nuevo y viejo) conectados y administrados.<br />
<br />
Seleccionamos el viejo servidor y hacemos botón secundario para elegir del menú emergente la opción de crear un usuario primero.<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3852" target="_blank" title="">joplin_mover_8.jpg</a> (Size: 124,74 KB / Downloads: 37)
<!-- end: postbit_attachments_attachment --><br />
<br />
Lo llamaré igual que en la máquina original "joplin"<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3853" target="_blank" title="">joplin_mover_9.jpg</a> (Size: 47,1 KB / Downloads: 34)
<!-- end: postbit_attachments_attachment --><br />
<br />
definimos la contraseña que luego la usaremos en la definición de creación del docker de Joplin.<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3854" target="_blank" title="">joplin_mover_10.jpg</a> (Size: 57,06 KB / Downloads: 37)
<!-- end: postbit_attachments_attachment --><br />
<br />
le damos privilegios a ese usuario para que pueda operar con la bbdd<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3855" target="_blank" title="">joplin_mover_28.jpg</a> (Size: 32,92 KB / Downloads: 35)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
Ahora vamos con la creación de la base de datos vacía a la que asignaremos el usuario "joplin".<br />
Seleccionamos de nuevo bases de datos y hacemos botón secundario, del menu emergente seleccionamos "crear", "base de datos" <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3856" target="_blank" title="">joplin_mover_7.jpg</a> (Size: 86,35 KB / Downloads: 35)
<!-- end: postbit_attachments_attachment --><br />
<br />
Y seguimos un asistente para crearla<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3857" target="_blank" title="">joplin_mover_12.jpg</a> (Size: 46,84 KB / Downloads: 35)
<!-- end: postbit_attachments_attachment --><br />
<br />
Seleccionamos el usuario "joplin" como dueño<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3858" target="_blank" title="">joplin_mover_13.jpg</a> (Size: 48,87 KB / Downloads: 38)
<!-- end: postbit_attachments_attachment --><br />
<br />
En la lengüeta de seguridad le demos los permisos adecuados<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3859" target="_blank" title="">joplin_mover_14.jpg</a> (Size: 60,87 KB / Downloads: 41)
<!-- end: postbit_attachments_attachment --><br />
<br />
y ya tendremos creada la base de datos "joplin_db" vacía con un usuario llamado "joplin"<br />
<br />
Ahora toca la restauración propiamente dicha haciendo botón secundario sobre la base de datos joplin y elegimos la opción de restaurar<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3860" target="_blank" title="">joplin_mover_15.jpg</a> (Size: 154,01 KB / Downloads: 33)
<!-- end: postbit_attachments_attachment --><br />
<br />
Se inicia un asistente donde indicaremos el archivo origen y el tipo de copia<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3861" target="_blank" title="">joplin_mover_16.jpg</a> (Size: 54,86 KB / Downloads: 35)
<!-- end: postbit_attachments_attachment --><br />
<br />
especificamos el nombre del archivo de la copia<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3866" target="_blank" title="">joplin_mover_32.jpg</a> (Size: 68,47 KB / Downloads: 31)
<!-- end: postbit_attachments_attachment --><br />
<br />
Y tras unos segundos, la copia estará restaurada<br />
<br />
<hr class="mycode_hr" />
<br />
<span style="font-size: medium;" class="mycode_size">7-instalación del docker de Joplin en la nueva máquina apuntando a la BBDD restaurada<br />
</span>Ahora hemos de desplegar el docker de Joplin haciendo que apunte a la nueva BBDD.<br />
En el caso de ejemplo hay definido un archivo con unos parámetros de inicio que se encuentra ubicado en la carpeta persistente de Joplin.<br />
Este archivo ha de ser creado antes de lanzar la cadena de creación del docker.<br />
En nuestro caso está en "/share/DockerData/joplin" para una Qnap, y el una Terramaster estaría en "/Volume1/DockerData/joplin".<br />
Ni que decir tiene que esa carpeta hemos de crearla con los permisos adecuados y dejar en su interior ese archivo ".env"<br />
La forma mas fácil es usar un Winscp y hacer la copia entre ambas máquinas  <img src="https://www.qnapclub.es/images/smilies/biggrin.png" alt="Big Grin" title="Big Grin" class="smilie smilie_4" /> <br />
<br />
Con el archivo ".env" ,desde una consola nos situamos en esa carpeta "/Volume1/DockerData/joplin" y lanzamos la cadena de creación del docker<br />
<br />
Para una Qnap sería del tipo:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>docker run -d  -p ip_nueva_nas:22300:22300 --restart always --name="joplin" --env-file .env -v /share/DockerData/joplin:/var/lib/postgresql/data -e DB_CLIENT=pg -e POSTGRES_HOST=ip_nueva_nas -e POSTGRES_PORT=5432 -e POSTGRES_DB=joplin -e POSTGRES_USER=usuario_joplin -e POSTGRES_PASSWORD=clave_usuario_joplin  joplin/server:latest</code></div></div><br />
Y para una Terramaster sería del tipo<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>docker run -d  -p ip_nueva_nas:22300:22300 --restart always --name="joplin" --env-file .env -v /Volume1/DockerData/joplin:/var/lib/postgresql/data -e DB_CLIENT=pg -e POSTGRES_HOST=ip_nueva_nas -e POSTGRES_PORT=5432 -e POSTGRES_DB=joplin -e POSTGRES_USER=usuario_joplin -e POSTGRES_PASSWORD=clave_usuario_joplin  joplin/server:latest</code></div></div><br />
Con esto ya tendríamos levantado en nuestra red un docker de Joplin que estaría accesible sólo desde equipos locales.<br />
<hr class="mycode_hr" />
<br />
<span style="font-size: medium;" class="mycode_size">8-modificaciones de redirecciones en el router o proxy  inverso<br />
<br />
</span>Si queremos que esté accesible desde el exterior de nuestra red deberemos modificar las reglas de redireccionamiento que hicimos en su día en el router.<br />
Este cambio es sencillo ya que sólo debemos editar la regla y cambiar la ip de la máquina vieja y poner la ip de la nueva. Los puertos se mantienen<br />
<br />
Si en nuestra red el acceso a Joplin se hiciese por un proxy inverso tipo Nginx Proxy manager, debemos editar el "proxy host" adecuado y de nuevo con sólo actualizar la ip cambiando la vieja por la nueva tendremos nuestro Joplin accesible desde el exterior para nuestros equipos clientes.<br />
<br />
<hr class="mycode_hr" />
Nota:<br />
Este post se ha hecho en realidad para ver como hemos de proceder para mover un docker y los datos asociados  de su bbdd en postgresql.<br />
Lo podemos aplicar para otros dockers que no sean Joplin  <img src="https://www.qnapclub.es/images/smilies/smile.png" alt="Smile" title="Smile" class="smilie smilie_1" /> <br />
<br />
Para Joplin hay una forma muuucho mas fácil de moverlo ya que el mismo cliente de Joplin pemite hacer una copia de respaldo.<br />
Es decir, que podíamos haber generado un nuevo postgresql y joplin vacíos, luego exportaríamos los datos Joplin con un cliente y desde un cliente  reconfiguramos la conexión al nuevo Joplin y restauraríamos los datos  <img src="https://www.qnapclub.es/images/smilies/tongue.png" alt="Tongue" title="Tongue" class="smilie smilie_5" /><br />
<hr class="mycode_hr" />
como siempre si veis algún error o errata me lo hacéis llegar por privado para corregirlo]]></description>
			<content:encoded><![CDATA[Hola<br />
<br />
En este post vamos a tratar de describir como hacer una copia o mover un <a href="https://www.qnapclub.es/showthread.php?tid=4551" target="_blank" rel="noopener" class="mycode_url">docker de Joplin que usa como BBDD una postgresql</a> desde una QNAP a otra máquina.<br />
<br />
Para ello nos apoyaremos en el gestor de BBDD <a href="https://www.qnapclub.es/showthread.php?tid=3516" target="_blank" rel="noopener" class="mycode_url">PgAdmin</a>. <br />
<br />
Los pasos a realizar serán los siguientes:<br />
1-detenemos el docker de Joplin<br />
2-instalacion del docker de postgresql en la máquina nueva<br />
3_1-instalación del docker de PgAdmin en la máquina nueva (opcion 1)<br />
3_2-agregar servidor postgresql de máquina original en PgAdmin de máquina nueva (opcion 1)<br />
4-1-agregar servidor postgresql de máquina nueva en PgAdmin de máquina original (opcion 2)<br />
5-copia de seguridad de la BBDD usando PgAdmin<br />
6-restauración de la BBDD en el nuevo postgresql usando PgAdmin<br />
7-instalación del docker de Joplin en la nueva máquina apuntando a la BBDD restaurada<br />
8-modificaciones de redirecciones en el router o proxy  inverso <br />
<hr class="mycode_hr" />
<br />
<span style="font-size: medium;" class="mycode_size">1-detenemos el docker de Joplin<br />
<br />
</span>Este punto es importante ya que podemos tener algún cliente externo haciendo modificaciones a los datos de Joplin y por tanto haciéndolos en la BBDD.<br />
La detención la podemos hacer con algun gestor de dockers tipo <a href="https://www.qnapclub.es/showthread.php?tid=3506" target="_blank" rel="noopener" class="mycode_url">Portainer</a>,  el <a href="https://www.qnapclub.es/showthread.php?tid=5401" target="_blank" rel="noopener" class="mycode_url">bot de Telegram para controlarlos</a> o hacerlo mediante la consola de comandos.<br />
<br />
En el siguiente comando de ejemplo el docker de Joplin se llama "joplin" (muy original  <img src="https://www.qnapclub.es/images/smilies/wink.png" alt="Wink" title="Wink" class="smilie smilie_2" /> )<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>docker stop joplin</code></div></div><br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3838" target="_blank" title="">joplin_mover_1.jpg</a> (Size: 3,52 KB / Downloads: 42)
<!-- end: postbit_attachments_attachment --><br />
<br />
<hr class="mycode_hr" />
<br />
<span style="font-size: medium;" class="mycode_size">2-instalacion del docker de postgresql en la máquina nueva</span><br />
<br />
Aquí no hay mucho misterio, sólo hemos de lanzar el siguiente comando si fuese de QNAP<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>docker run -d --name="postgresql" --restart always -p 5432:5432-e POSTGRES_USER=usuario_admin -e POSTGRES_PASSWORD=clave_usuario -e POSTGRES_DB=postgresql_db -v /share/DockerData/postgresql:/var/lib/postgresql/data postgres:13.8</code></div></div><br />
Como voy a hacerlo en un Terramaster, el código será similar a este otro<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>docker run -d --name="postgresql" --restart always -p 5432:5432-e POSTGRES_USER=usuario_admin -e POSTGRES_PASSWORD=clave_usuario -e POSTGRES_DB=postgresql_db -v /Volume1/DockerData/postgresql:/var/lib/postgresql/data postgres:13.8</code></div></div><br />
También nos puede ser interesante indicar la ip del docker si sabemos el rango que va a tener. Esto se haría añadiendo algo como "--ip 10.10.30.2"<br />
<br />
En el caso del comando anterior, no hemos puesto como versión de postgresql la "latest" y es que hemos obligado la versión del postgresql a 13.8, pero podemos usar otras, pero hemos de asegurarnos que la versión del docker de Joplin es compatible con la versión de postgresql que instalemos.<br />
<br />
También hemos de leer la documentación del docker si usamos otras versiones ya que es posible que nos pida definir otras variables a la hora de crearlo.<br />
<br />
<hr class="mycode_hr" />
<span style="font-size: medium;" class="mycode_size">3_1-instalación del docker de PgAdmin en la máquina nueva (opcion 1)</span><br />
<br />
Este paso es opcional ya que NO tenemos porque instalar otro PgAdmin en la máquina nueva puesto que ya tenemos uno en la vieja. <br />
Podemos usar el PgAdmin de la Qnap para gestionar postgresql de otras máquinas de nuestra red.<br />
<br />
He puesto este paso ya que creo interesante que si estamos moviendo dockers y BBDD de postgresql a una nueva máquina, es que la vieja va a ser retirada en algún modo y con este paso ya tenemos un nuevo PgAdmin operativo para futuros usos.<br />
<br />
Para el despliegue del nuevo docker de PgAdmin usaremos este comando en una Qnap o en una Terramaster (es el mismo  <img src="https://www.qnapclub.es/images/smilies/biggrin.png" alt="Big Grin" title="Big Grin" class="smilie smilie_4" /> )<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>docker run -d  -p 9158:80 -p 9157:443 --restart always --name="pgadmin4" -e PGADMIN_DEFAULT_EMAIL=mi_correo_electronico -e PGADMIN_DEFAULT_PASSWORD=clave  dpage/pgadmin4:9.14.0</code></div></div><br />
Los puertos 9158 y 9157 pueden ser otros de nuestra elección.<br />
<br />
<hr class="mycode_hr" />
<span style="font-size: medium;" class="mycode_size">3_2-agregar servidor postgresql de máquina original en PgAdmin de máquina nueva (opcion 1)</span><br />
<br />
Aquí tras identificarnos en el PgAdmin, hemos de agregar un nuevo servidor de postgresql en su lista.<br />
Para hacerlo podemos hacerlo pulsando sobre cualquiera de las dos opciones de la siguiente imagen<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3844" target="_blank" title="">joplin_mover_19.jpg</a> (Size: 164,69 KB / Downloads: 36)
<!-- end: postbit_attachments_attachment --><br />
<br />
Se nos presenta un asistente que completaremos como en las siguiente imágenes<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3845" target="_blank" title="">joplin_mover_20.jpg</a> (Size: 66,15 KB / Downloads: 42)
<!-- end: postbit_attachments_attachment --><br />
<br />
ahora rellenamos con los datos de identificación (nombre de la base de datos, usuario y clave que usamos en su día cuando creamos el docker de postgresql)<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3846" target="_blank" title="">joplin_mover_22.jpg</a> (Size: 65,78 KB / Downloads: 41)
<!-- end: postbit_attachments_attachment --><br />
<br />
Y tras aceptar, ya tendremos nuestro servidor postgresql de la máquina vieja registrado en el PgAdmin de la máquina nueva.<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3847" target="_blank" title="">joplin_mover_23.jpg</a> (Size: 20,67 KB / Downloads: 40)
<!-- end: postbit_attachments_attachment --><br />
<hr class="mycode_hr" />
<br />
<span style="font-size: medium;" class="mycode_size">4-1-agregar servidor postgresql de máquina nueva en PgAdmin de máquina original (opcion 2)</span><br />
<br />
De la misma forma, si no quisiéramos instalar el docker de PgAdmin en la nueva máquina, podemos usar el PgAdmin de la vieja para agregar el servidor postgresql de la máquina nueva y de esa forma el PgAdmin de la vieja puede gestionar las BBDD de postgreSQL de la nas vieja y las de la nueva máquina.<br />
<br />
El proceso de adicción del nuevo servidor de postgreSQL es casi calcado del del punto anterior.<br />
Nos identificamos en el PgAdmin de la Nas vieja e iniciamos el asistente de añadir un servidor:<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3848" target="_blank" title="">joplin_mover_24.jpg</a> (Size: 100,63 KB / Downloads: 37)
<!-- end: postbit_attachments_attachment --><br />
<br />
Suministramos los datos del nuevo servidor de PostgreSQL para registrarlo<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3849" target="_blank" title="">joplin_mover_25.jpg</a> (Size: 48,42 KB / Downloads: 39)
<!-- end: postbit_attachments_attachment --><br />
<br />
rellenamos con los datos de ip, usuario, clave y nombre de la base de datos<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3850" target="_blank" title="">joplin_mover_26.jpg</a> (Size: 43,58 KB / Downloads: 39)
<!-- end: postbit_attachments_attachment --><br />
<br />
Y con eso, ya tendremos nuestro servidor PostgreSQL de la máquina nueva, registrado en el PgAdmin de la Nas vieja<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3851" target="_blank" title="">joplin_mover_27.jpg</a> (Size: 39,82 KB / Downloads: 36)
<!-- end: postbit_attachments_attachment --><br />
<hr class="mycode_hr" />
<span style="font-size: medium;" class="mycode_size">5-copia de seguridad de la BBDD usando PgAdmin</span><br />
<br />
Es muy importante que los docker de Postgresql y PgAdmin estén en la misma red de dockers o en la misma red local. Si no lo hacemos, el docker de PgAdmin no podrá alcanzar al docker de PostgreSQL.<br />
<br />
Una vez identificados en PgAdmd y ya teniendo la conexión al servidor PostgreSQL podemos hacer la exportación.<br />
<br />
En la siguiente imagen vemos que PgAdmin tiene definidas dos conexiones a dos servidores de PostgreSQL distintos.<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3839" target="_blank" title="">joplin_mover_2.jpg</a> (Size: 98,46 KB / Downloads: 43)
<!-- end: postbit_attachments_attachment --><br />
<br />
El ejemplo, el que nos interesa es el llamado "postgressql" y su bbdd "joplin".<br />
<br />
Para exportar la BBDD, seleccionamos la bbdd "joplin" y pulsamos botón secundario.<br />
Al hacerlo se nos presenta un menú emergente del que seleccionaremos la opción de "respaldar"<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3840" target="_blank" title="">joplin_mover_3.jpg</a> (Size: 81,6 KB / Downloads: 41)
<!-- end: postbit_attachments_attachment --><br />
<br />
Al continuar, empezará el proceso. Si pulsamos a la información durante la acción, podemos en una ventana el comando que se lanza y como va desarrollándose la copia de seguridad. <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3842" target="_blank" title="">joplin_mover_4.jpg</a> (Size: 46,76 KB / Downloads: 40)
<!-- end: postbit_attachments_attachment --><br />
<br />
En esa ventana podemos ver el comando que se lanza en el sistema (pg_dump).<br />
Es conveniente recordar que si lo hacemos las restauraciones a versiones de postgresql distin podemos tener problemas de versión.<br />
Como regla general, la base de datos exportada no dará problemas si lo importamos desde una versión igual o superior.<br />
En el caso de la imagen se ve en la captura el comando "/usr/local/pgsql-16/pg_dump" . Es decir es una versión 16.<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3841" target="_blank" title="">joplin_mover_5.jpg</a> (Size: 98,52 KB / Downloads: 41)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
Nota:<br />
En el caso de que usemos un PgAdmin para exportar y otro PgAdmin para importarlo, tenemos un pequeño inconveniente, y es que la copia ha queda <span style="font-weight: bold;" class="mycode_b">dentro</span> del docker de PgAdmin.<br />
Para poder moverlo al sistema de archivo de la nas, hemos de lanzar un comando que lo copia por ejemplo a la carpeta /Public.<br />
La ruta del archivo dentro del docker es "/var/lib/pgadmin/storage/usuario_pgadmin/" y el archivo será "joplin" (o el nombre que escribimos en las pantallas anteriores).<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3843" target="_blank" title="">joplin_mover_6.jpg</a> (Size: 12,62 KB / Downloads: 43)
<!-- end: postbit_attachments_attachment --><br />
<br />
El comando a ejecutar es similar al siguiente.<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>docker cp nombre_docker_pgadmin:/var/lib/pgadmin/storage/usuario_pgadmin/joplin /share/Public/joplin</code></div></div><br />
He usado como destino la carpeta Public porque existe en todas las nas de QNAP y así no tenemos pérdida a la hora de recuperarla  <img src="https://www.qnapclub.es/images/smilies/biggrin.png" alt="Big Grin" title="Big Grin" class="smilie smilie_4" /><br />
<br />
Una forma para evitar tener que usar el anterio comando sería si definimos en la cadena de creación del docker PgAdmin una ruta persistente del tipo<br />
"-v /share/DockerData/pgadmin:/var/lib/pgadmib/storage".<br />
Así al hacer la exportación, los archivos quedarían en esa carpeta accesible desde el sistema de archivos de la nas y nos evitaríamos lo del comando "docker cp"  <img src="https://www.qnapclub.es/images/smilies/wink.png" alt="Wink" title="Wink" class="smilie smilie_2" />  y podemos copiar a una carpeta de la nas destino para hacer la importación.<br />
<hr class="mycode_hr" />
<br />
<span style="font-size: medium;" class="mycode_size">6-restauración de la BBDD en el nuevo postgresql usando PgAdmin</span><br />
<br />
Teniendo ya accesible la copia desde el PgAdmin, ahora toca restaurarla.<br />
En función de como y desde donde hicimos la exportación procederemos de forma similar en todos los casos<br />
<br />
Vamos al caso fácil, tenemos un PgAdmin con los dos servidores PostgreSQL (nuevo y viejo) conectados y administrados.<br />
<br />
Seleccionamos el viejo servidor y hacemos botón secundario para elegir del menú emergente la opción de crear un usuario primero.<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3852" target="_blank" title="">joplin_mover_8.jpg</a> (Size: 124,74 KB / Downloads: 37)
<!-- end: postbit_attachments_attachment --><br />
<br />
Lo llamaré igual que en la máquina original "joplin"<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3853" target="_blank" title="">joplin_mover_9.jpg</a> (Size: 47,1 KB / Downloads: 34)
<!-- end: postbit_attachments_attachment --><br />
<br />
definimos la contraseña que luego la usaremos en la definición de creación del docker de Joplin.<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3854" target="_blank" title="">joplin_mover_10.jpg</a> (Size: 57,06 KB / Downloads: 37)
<!-- end: postbit_attachments_attachment --><br />
<br />
le damos privilegios a ese usuario para que pueda operar con la bbdd<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3855" target="_blank" title="">joplin_mover_28.jpg</a> (Size: 32,92 KB / Downloads: 35)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
Ahora vamos con la creación de la base de datos vacía a la que asignaremos el usuario "joplin".<br />
Seleccionamos de nuevo bases de datos y hacemos botón secundario, del menu emergente seleccionamos "crear", "base de datos" <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3856" target="_blank" title="">joplin_mover_7.jpg</a> (Size: 86,35 KB / Downloads: 35)
<!-- end: postbit_attachments_attachment --><br />
<br />
Y seguimos un asistente para crearla<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3857" target="_blank" title="">joplin_mover_12.jpg</a> (Size: 46,84 KB / Downloads: 35)
<!-- end: postbit_attachments_attachment --><br />
<br />
Seleccionamos el usuario "joplin" como dueño<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3858" target="_blank" title="">joplin_mover_13.jpg</a> (Size: 48,87 KB / Downloads: 38)
<!-- end: postbit_attachments_attachment --><br />
<br />
En la lengüeta de seguridad le demos los permisos adecuados<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3859" target="_blank" title="">joplin_mover_14.jpg</a> (Size: 60,87 KB / Downloads: 41)
<!-- end: postbit_attachments_attachment --><br />
<br />
y ya tendremos creada la base de datos "joplin_db" vacía con un usuario llamado "joplin"<br />
<br />
Ahora toca la restauración propiamente dicha haciendo botón secundario sobre la base de datos joplin y elegimos la opción de restaurar<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3860" target="_blank" title="">joplin_mover_15.jpg</a> (Size: 154,01 KB / Downloads: 33)
<!-- end: postbit_attachments_attachment --><br />
<br />
Se inicia un asistente donde indicaremos el archivo origen y el tipo de copia<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3861" target="_blank" title="">joplin_mover_16.jpg</a> (Size: 54,86 KB / Downloads: 35)
<!-- end: postbit_attachments_attachment --><br />
<br />
especificamos el nombre del archivo de la copia<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3866" target="_blank" title="">joplin_mover_32.jpg</a> (Size: 68,47 KB / Downloads: 31)
<!-- end: postbit_attachments_attachment --><br />
<br />
Y tras unos segundos, la copia estará restaurada<br />
<br />
<hr class="mycode_hr" />
<br />
<span style="font-size: medium;" class="mycode_size">7-instalación del docker de Joplin en la nueva máquina apuntando a la BBDD restaurada<br />
</span>Ahora hemos de desplegar el docker de Joplin haciendo que apunte a la nueva BBDD.<br />
En el caso de ejemplo hay definido un archivo con unos parámetros de inicio que se encuentra ubicado en la carpeta persistente de Joplin.<br />
Este archivo ha de ser creado antes de lanzar la cadena de creación del docker.<br />
En nuestro caso está en "/share/DockerData/joplin" para una Qnap, y el una Terramaster estaría en "/Volume1/DockerData/joplin".<br />
Ni que decir tiene que esa carpeta hemos de crearla con los permisos adecuados y dejar en su interior ese archivo ".env"<br />
La forma mas fácil es usar un Winscp y hacer la copia entre ambas máquinas  <img src="https://www.qnapclub.es/images/smilies/biggrin.png" alt="Big Grin" title="Big Grin" class="smilie smilie_4" /> <br />
<br />
Con el archivo ".env" ,desde una consola nos situamos en esa carpeta "/Volume1/DockerData/joplin" y lanzamos la cadena de creación del docker<br />
<br />
Para una Qnap sería del tipo:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>docker run -d  -p ip_nueva_nas:22300:22300 --restart always --name="joplin" --env-file .env -v /share/DockerData/joplin:/var/lib/postgresql/data -e DB_CLIENT=pg -e POSTGRES_HOST=ip_nueva_nas -e POSTGRES_PORT=5432 -e POSTGRES_DB=joplin -e POSTGRES_USER=usuario_joplin -e POSTGRES_PASSWORD=clave_usuario_joplin  joplin/server:latest</code></div></div><br />
Y para una Terramaster sería del tipo<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>docker run -d  -p ip_nueva_nas:22300:22300 --restart always --name="joplin" --env-file .env -v /Volume1/DockerData/joplin:/var/lib/postgresql/data -e DB_CLIENT=pg -e POSTGRES_HOST=ip_nueva_nas -e POSTGRES_PORT=5432 -e POSTGRES_DB=joplin -e POSTGRES_USER=usuario_joplin -e POSTGRES_PASSWORD=clave_usuario_joplin  joplin/server:latest</code></div></div><br />
Con esto ya tendríamos levantado en nuestra red un docker de Joplin que estaría accesible sólo desde equipos locales.<br />
<hr class="mycode_hr" />
<br />
<span style="font-size: medium;" class="mycode_size">8-modificaciones de redirecciones en el router o proxy  inverso<br />
<br />
</span>Si queremos que esté accesible desde el exterior de nuestra red deberemos modificar las reglas de redireccionamiento que hicimos en su día en el router.<br />
Este cambio es sencillo ya que sólo debemos editar la regla y cambiar la ip de la máquina vieja y poner la ip de la nueva. Los puertos se mantienen<br />
<br />
Si en nuestra red el acceso a Joplin se hiciese por un proxy inverso tipo Nginx Proxy manager, debemos editar el "proxy host" adecuado y de nuevo con sólo actualizar la ip cambiando la vieja por la nueva tendremos nuestro Joplin accesible desde el exterior para nuestros equipos clientes.<br />
<br />
<hr class="mycode_hr" />
Nota:<br />
Este post se ha hecho en realidad para ver como hemos de proceder para mover un docker y los datos asociados  de su bbdd en postgresql.<br />
Lo podemos aplicar para otros dockers que no sean Joplin  <img src="https://www.qnapclub.es/images/smilies/smile.png" alt="Smile" title="Smile" class="smilie smilie_1" /> <br />
<br />
Para Joplin hay una forma muuucho mas fácil de moverlo ya que el mismo cliente de Joplin pemite hacer una copia de respaldo.<br />
Es decir, que podíamos haber generado un nuevo postgresql y joplin vacíos, luego exportaríamos los datos Joplin con un cliente y desde un cliente  reconfiguramos la conexión al nuevo Joplin y restauraríamos los datos  <img src="https://www.qnapclub.es/images/smilies/tongue.png" alt="Tongue" title="Tongue" class="smilie smilie_5" /><br />
<hr class="mycode_hr" />
como siempre si veis algún error o errata me lo hacéis llegar por privado para corregirlo]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Traslado de un docker Nginx Proxy Manager con MariaDB a NAS de Terramaster]]></title>
			<link>https://www.qnapclub.es/showthread.php?tid=5773</link>
			<pubDate>Sun, 29 Mar 2026 22:53:23 +0200</pubDate>
			<dc:creator><![CDATA[<a href="https://www.qnapclub.es/member.php?action=profile&uid=148">Ganekogorta</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.qnapclub.es/showthread.php?tid=5773</guid>
			<description><![CDATA[Hola<br />
<br />
Voy a tratar de describir como trasladar un <a href="https://www.qnapclub.es/showthread.php?tid=4797" target="_blank" rel="noopener" class="mycode_url">docker de Nginx Proxy Manager que usa MariaDB</a> a otra máquina.<br />
A la inversa sería muy similar ya que a fin de cuentas estamos trasladando dockers<br />
<br />
El este caso lo voy a hacer a una NAS que no es de Qnap.<br />
<br />
Lo que quiero que se vea que el traslado de dockers es "casi" independiente del tipo de Nas o máquina empleada.<br />
<br />
Los pasos generales serían los siguientes:<br />
1-backup de la base de datos de MariaDB con PhpMyAdmin desde la máquina QNAP.<br />
2-activacion de MariaDB en la máquina destino si es que no lo tiene instalado.<br />
3-restauracion de la base de datos.<br />
4-despliegue del docker adaptándolo rutas a las de la máquina nueva.<br />
5-cambios en nuestro router para que los puertos 443 y 80 externos a nuestra red, lleguen al nuevo docker de Nginx.<br />
<br />
<br />
<hr class="mycode_hr" />
<span style="font-size: medium;" class="mycode_size">1-backup de la base de datos de MariaDB con PhpMyAdmin</span><br />
<br />
Abrimos la aplicación web PhpMyAdmin.<br />
Dependiendo de nuestra instalación podemos tener instalada en nuestra nas la BBDD en MariaDB 5, MariaDB10 o incluso tener las dos simultáneamente.<br />
<br />
Lanzamos PhPMyAdmin<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3821" target="_blank" title="">nginxl_mover_1.jpg</a> (Size: 5,67 KB / Downloads: 61)
<!-- end: postbit_attachments_attachment --><br />
<br />
Abrimos sesión en la que tenga la BBDD de nuestro Nginx Proxy Manager<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3831" target="_blank" title="">nginxl_mover_11.jpg</a> (Size: 24,81 KB / Downloads: 57)
<!-- end: postbit_attachments_attachment --><br />
<br />
En el caso de la imagen se puede observar que puedo seleccionar otros servidores de MariaDB. <br />
Estos servidores NO tiene porque ser de la máquina que hospeda PhpMyAdmin, pueden ser incluso los de otras máquinas.<br />
<br />
Lo normal es que sólo tengamos uno y nos permita sólo abrir el que tengamos.<br />
Una vez identificados en PhPMyAdmin veremos la lista de bases de datos que tenemos instaladas.<br />
En nuestro caso la que nos interesa es la de nginx (que se definió durante la creación y arranque del docker de Nginx Proxy Manager)<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3833" target="_blank" title="">nginxl_mover_3.jpg</a> (Size: 36,54 KB / Downloads: 54)
<!-- end: postbit_attachments_attachment --><br />
<br />
Seleccionamos la base de datos y vamos a lengüeta de exportar<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3832" target="_blank" title="">nginxl_mover_4.jpg</a> (Size: 61,23 KB / Downloads: 52)
<!-- end: postbit_attachments_attachment --><br />
<br />
dejamos el formato SQL y pulsamos en el botón de "Exportar"<br />
<br />
Nos generará un archivo con extensión .sql que usaremos mas adelante.<br />
<br />
<hr class="mycode_hr" />
<span style="font-size: medium;" class="mycode_size">2-activacion de MariaDB en la máquina destino si es que no lo tiene instalado</span><br />
<br />
En este caso voy a trasladarlo a otra nas pero de marca distinta a Qnap, usaré un Terramaster, pero podia haber sido un PC, una UGreen, Synology,... u otra Qnap.<br />
<br />
En el caso de Terramaster, no se incluye de serie el gestor PhPMyAdmin.<br />
Viene uno llamado simplemente MariaDB<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3826" target="_blank" title="">nginxl_mover_6.jpg</a> (Size: 2,74 KB / Downloads: 61)
<!-- end: postbit_attachments_attachment --><br />
<br />
Que si lo abrimos es Hydra para Adminer. <br />
Este Adminer es un buen gestor web de BBDD similar a PhPMyAdmin que podemos instalar también en nuestra QNAP <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3825" target="_blank" title="">nginxl_mover_5.jpg</a> (Size: 34,41 KB / Downloads: 58)
<!-- end: postbit_attachments_attachment --><br />
<br />
Si alguno lo quiere instalar en su QNAP que lance el siguiente comando en la consola para instalar Adminer como Docker usando el puerto 9080<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>docker run -d --name=adminer -p 9080:8080 -e ADMINER_DESIGN='price' --restart unless-stopped -e ADMINER_DEFAULT_SERVER=mysql adminer</code></div></div><br />
Pero para hacerlo mas "sencilo" y homogéneo usaremos PhPMyAdmin.<br />
<br />
Para ello tenemos dos opciones: <ul class="mycode_list"><li>instalamos PhPMYAdmin en la Terramaster<br />
</li>
<li>hacemos que nuestra PHPMyAdmin instalala en la QNAP pueda gestionar la MariaDB de la Terramaster<br />
</li>
</ul>
<br />
Y en mi caso instalé PhpMyAdmin desde el centro de aplicaciones de la Terramaster<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3827" target="_blank" title="">nginxl_mover_7.jpg</a> (Size: 37,87 KB / Downloads: 61)
<!-- end: postbit_attachments_attachment --><br />
<br />
Si queremos usarlo desde la QNAP, hemos de editar (con cuidado) el archivo de configuración de PhpMyAdmin "config.inc.php"<br />
En <a href="https://www.qnapclub.es/showthread.php?tid=3430" target="_blank" rel="noopener" class="mycode_url">este otro post</a> ya se comentó como hacer este tipo de configuración.<br />
<br />
Por ejemplo deberíamos añadir algo "<span style="font-style: italic;" class="mycode_i">similar</span>"  a esto en el archivo "config.inc.php" si nuestra Terramaster tuviese la ip 192.168.88.88<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>/**<br />
 * servidor externo<br />
 */<br />
&#36;i++;<br />
/* Authentication type */<br />
&#36;cfg['Servers'][&#36;i]['auth_type'] = 'cookie';<br />
&#36;cfg['Servers'][&#36;i]['verbose'] = 'Terramaster';<br />
/* Server parameters */<br />
&#36;cfg['Servers'][&#36;i]['host'] = '192.168.88.88';<br />
&#36;cfg['Servers'][&#36;i]['Connect_type'] = 'tcp';<br />
&#36;cfg['Servers'][&#36;i]['compress'] = false;<br />
&#36;cfg['Servers'][&#36;i]['AllowNoPassword'] = false;<br />
/**<br />
 * End of servers configuration<br />
 */</code></div></div><br />
Una vez que tengamos nuestro PhpMyAdmin con acceso a la Terramaster.<br />
Deberemos crear la BBDD vacía con el mismo nombre y el mismo nombre usuario y privilegios sobre esa BBDD que usamos en nuestra QNAP.<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3828" target="_blank" title="">nginxl_mover_8.jpg</a> (Size: 121,15 KB / Downloads: 58)
<!-- end: postbit_attachments_attachment --><br />
<br />
Ahora creamos al usuario y usamos la misma clave que se usó en QNAP (si los cambiamos lo haremos también en la creación del docker)<br />
Para crear al usuario lo haremos estando dentro de la base de datos Nginx_db y vamos a la lengüeta de <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3834" target="_blank" title="">nginxl_mover_12.jpg</a> (Size: 96,78 KB / Downloads: 54)
<!-- end: postbit_attachments_attachment --><br />
<br />
y tras pulsar al botón de "Go" se crea el usuario con permisos sólo en esa BBDD<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3835" target="_blank" title="">nginxl_mover_13.jpg</a> (Size: 156,27 KB / Downloads: 55)
<!-- end: postbit_attachments_attachment --><br />
<br />
tal como muestra la siguiente pantalla de resumen<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3836" target="_blank" title="">nginxl_mover_14.jpg</a> (Size: 79,04 KB / Downloads: 52)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<hr class="mycode_hr" />
<span style="font-size: medium;" class="mycode_size">3-restauracion de la base de datos.</span><br />
<br />
Ahora teniendo seleccionada la BBDD "nginx_db" abrimos la legüeta de importar<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3829" target="_blank" title="">nginxl_mover_9.jpg</a> (Size: 107,93 KB / Downloads: 57)
<!-- end: postbit_attachments_attachment --><br />
<br />
Seleccionamos el archivo sql que generamos en el punto 1 y pulsamos al botón inferior de importar.<br />
Si todo ha ido bien, veremos la estructura y datos que teníamos en nuestra QNAP.<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3830" target="_blank" title="">nginxl_mover_10.jpg</a> (Size: 42,56 KB / Downloads: 58)
<!-- end: postbit_attachments_attachment --><br />
<br />
En la parte de la derecha podemos ver el número de registros que contiene cada tabla.<br />
<hr class="mycode_hr" />
<span style="font-size: medium;" class="mycode_size">4-despliegue del docker adaptándolo rutas a las de la máquina nueva.</span><br />
<br />
Ahora lanzamos la cadena de creación del docker.<br />
Cuando se hizo en la QNAP se lanzó con este comando<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>docker run -d -p 2080:80 -p 2081:81 -p 2443:443 --restart always --name="nginx" -v /share/DockerData/nginx/data:/data/ -v /share/DockerData/nginx/letsencrypt:/etc/letsencrypt/  -e "DB_MYSQL_HOST=ip_de_nuestra_nas" -e "DB_MYSQL_PORT=3307" -e "DB_MYSQL_USER=usernginx" -e "DB_MYSQL_PASSWORD=claveusernginx" -e "DB_MYSQL_NAME=nginx_db" -e "DISABLE_IPV6=true" jc21/nginx-proxy-manager:latest</code></div></div><br />
Para lanzarlo en Terramaster, debemos adaptar las rutas persistentes al sistema de carpetas de Terramaster<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>docker run -d -p 2080:80 -p 2081:81 -p 2443:443 --restart always --name="nginx" -v /Volume1/DockerData/nginx/data:/data/ -v /Volume1/DockerData/nginx/letsencrypt:/etc/letsencrypt/  -e "DB_MYSQL_HOST=ip_de_nuestra_nas" -e "DB_MYSQL_PORT=3306" -e "DB_MYSQL_USER=usernginx" -e "DB_MYSQL_PASSWORD=claveusernginx" -e "DB_MYSQL_NAME=nginx_db" -e "DISABLE_IPV6=true" jc21/nginx-proxy-manager:latest</code></div></div><br />
En en caso de la Terramaster, su estructura de archivos no es igual en cuanto a rutas de carpetas compartidas y hay que recordar que tenemos alguna usada como persistente en la definición del docker.<br />
En vez de estar en "/share/" como en QNAP, se ubican en "/VolumeXX/"<br />
<br />
También he cambiado el puerto usado por la MariaDB de 3307 en la Qnap al habitual 3306 en la Terramaster. Esto es así ya que en la Qnap teníamos dos MariaDB. La version 5 y la 10, que usaban el 3306 y 3307 respectivamente.<br />
<br />
Si todo ha ido bien, abriremos un navegador web y escribiremos "https://ip_nas_terramaster:2081" y se nos presentará la web de gestión de Nginx Proxy Manager.<br />
Introducimos el mismo usuario y clave que usabamos en nuestra anterior Qnap y veremos el mismo contenido que tenemos en la anterio nas.<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3837" target="_blank" title="">nginxl_mover_15.jpg</a> (Size: 31,83 KB / Downloads: 48)
<!-- end: postbit_attachments_attachment --><br />
<br />
<span style="font-size: medium;" class="mycode_size">5-cambios en nuestro router para que los puertos 443 y 80 externos a nuestra red, lleguen al nuevo docker de Nginx.<br />
<br />
</span>Ahora, para activarlo, sólo debemos editar las reglas de nuestro cortafuegos para que los puertos 80 y 443 externos, en vez de ser redirigidos a la ip de la QNAP, lo sean al de la Terramaster.<br />
<br />
Evidentemente este tipo de traslados tiene sentido cuando hay muchas configuraciones dentro de nuestro nginx que son tediosas de repetir en uno nuevo.<br />
También puede ser útil el hacerlo simplemente para tener una replica de uno por si cayese la máquina que lo aloja y con iniciarlo y reconfigurar las dos reglas del router ya tendríamos de nuevo operativo uno.<br />
<br />
Y con esto hemos finalizado.<br />
<br />
<br />
Si veis alguna errata comentadme por privado para corregirla.]]></description>
			<content:encoded><![CDATA[Hola<br />
<br />
Voy a tratar de describir como trasladar un <a href="https://www.qnapclub.es/showthread.php?tid=4797" target="_blank" rel="noopener" class="mycode_url">docker de Nginx Proxy Manager que usa MariaDB</a> a otra máquina.<br />
A la inversa sería muy similar ya que a fin de cuentas estamos trasladando dockers<br />
<br />
El este caso lo voy a hacer a una NAS que no es de Qnap.<br />
<br />
Lo que quiero que se vea que el traslado de dockers es "casi" independiente del tipo de Nas o máquina empleada.<br />
<br />
Los pasos generales serían los siguientes:<br />
1-backup de la base de datos de MariaDB con PhpMyAdmin desde la máquina QNAP.<br />
2-activacion de MariaDB en la máquina destino si es que no lo tiene instalado.<br />
3-restauracion de la base de datos.<br />
4-despliegue del docker adaptándolo rutas a las de la máquina nueva.<br />
5-cambios en nuestro router para que los puertos 443 y 80 externos a nuestra red, lleguen al nuevo docker de Nginx.<br />
<br />
<br />
<hr class="mycode_hr" />
<span style="font-size: medium;" class="mycode_size">1-backup de la base de datos de MariaDB con PhpMyAdmin</span><br />
<br />
Abrimos la aplicación web PhpMyAdmin.<br />
Dependiendo de nuestra instalación podemos tener instalada en nuestra nas la BBDD en MariaDB 5, MariaDB10 o incluso tener las dos simultáneamente.<br />
<br />
Lanzamos PhPMyAdmin<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3821" target="_blank" title="">nginxl_mover_1.jpg</a> (Size: 5,67 KB / Downloads: 61)
<!-- end: postbit_attachments_attachment --><br />
<br />
Abrimos sesión en la que tenga la BBDD de nuestro Nginx Proxy Manager<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3831" target="_blank" title="">nginxl_mover_11.jpg</a> (Size: 24,81 KB / Downloads: 57)
<!-- end: postbit_attachments_attachment --><br />
<br />
En el caso de la imagen se puede observar que puedo seleccionar otros servidores de MariaDB. <br />
Estos servidores NO tiene porque ser de la máquina que hospeda PhpMyAdmin, pueden ser incluso los de otras máquinas.<br />
<br />
Lo normal es que sólo tengamos uno y nos permita sólo abrir el que tengamos.<br />
Una vez identificados en PhPMyAdmin veremos la lista de bases de datos que tenemos instaladas.<br />
En nuestro caso la que nos interesa es la de nginx (que se definió durante la creación y arranque del docker de Nginx Proxy Manager)<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3833" target="_blank" title="">nginxl_mover_3.jpg</a> (Size: 36,54 KB / Downloads: 54)
<!-- end: postbit_attachments_attachment --><br />
<br />
Seleccionamos la base de datos y vamos a lengüeta de exportar<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3832" target="_blank" title="">nginxl_mover_4.jpg</a> (Size: 61,23 KB / Downloads: 52)
<!-- end: postbit_attachments_attachment --><br />
<br />
dejamos el formato SQL y pulsamos en el botón de "Exportar"<br />
<br />
Nos generará un archivo con extensión .sql que usaremos mas adelante.<br />
<br />
<hr class="mycode_hr" />
<span style="font-size: medium;" class="mycode_size">2-activacion de MariaDB en la máquina destino si es que no lo tiene instalado</span><br />
<br />
En este caso voy a trasladarlo a otra nas pero de marca distinta a Qnap, usaré un Terramaster, pero podia haber sido un PC, una UGreen, Synology,... u otra Qnap.<br />
<br />
En el caso de Terramaster, no se incluye de serie el gestor PhPMyAdmin.<br />
Viene uno llamado simplemente MariaDB<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3826" target="_blank" title="">nginxl_mover_6.jpg</a> (Size: 2,74 KB / Downloads: 61)
<!-- end: postbit_attachments_attachment --><br />
<br />
Que si lo abrimos es Hydra para Adminer. <br />
Este Adminer es un buen gestor web de BBDD similar a PhPMyAdmin que podemos instalar también en nuestra QNAP <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3825" target="_blank" title="">nginxl_mover_5.jpg</a> (Size: 34,41 KB / Downloads: 58)
<!-- end: postbit_attachments_attachment --><br />
<br />
Si alguno lo quiere instalar en su QNAP que lance el siguiente comando en la consola para instalar Adminer como Docker usando el puerto 9080<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>docker run -d --name=adminer -p 9080:8080 -e ADMINER_DESIGN='price' --restart unless-stopped -e ADMINER_DEFAULT_SERVER=mysql adminer</code></div></div><br />
Pero para hacerlo mas "sencilo" y homogéneo usaremos PhPMyAdmin.<br />
<br />
Para ello tenemos dos opciones: <ul class="mycode_list"><li>instalamos PhPMYAdmin en la Terramaster<br />
</li>
<li>hacemos que nuestra PHPMyAdmin instalala en la QNAP pueda gestionar la MariaDB de la Terramaster<br />
</li>
</ul>
<br />
Y en mi caso instalé PhpMyAdmin desde el centro de aplicaciones de la Terramaster<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3827" target="_blank" title="">nginxl_mover_7.jpg</a> (Size: 37,87 KB / Downloads: 61)
<!-- end: postbit_attachments_attachment --><br />
<br />
Si queremos usarlo desde la QNAP, hemos de editar (con cuidado) el archivo de configuración de PhpMyAdmin "config.inc.php"<br />
En <a href="https://www.qnapclub.es/showthread.php?tid=3430" target="_blank" rel="noopener" class="mycode_url">este otro post</a> ya se comentó como hacer este tipo de configuración.<br />
<br />
Por ejemplo deberíamos añadir algo "<span style="font-style: italic;" class="mycode_i">similar</span>"  a esto en el archivo "config.inc.php" si nuestra Terramaster tuviese la ip 192.168.88.88<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>/**<br />
 * servidor externo<br />
 */<br />
&#36;i++;<br />
/* Authentication type */<br />
&#36;cfg['Servers'][&#36;i]['auth_type'] = 'cookie';<br />
&#36;cfg['Servers'][&#36;i]['verbose'] = 'Terramaster';<br />
/* Server parameters */<br />
&#36;cfg['Servers'][&#36;i]['host'] = '192.168.88.88';<br />
&#36;cfg['Servers'][&#36;i]['Connect_type'] = 'tcp';<br />
&#36;cfg['Servers'][&#36;i]['compress'] = false;<br />
&#36;cfg['Servers'][&#36;i]['AllowNoPassword'] = false;<br />
/**<br />
 * End of servers configuration<br />
 */</code></div></div><br />
Una vez que tengamos nuestro PhpMyAdmin con acceso a la Terramaster.<br />
Deberemos crear la BBDD vacía con el mismo nombre y el mismo nombre usuario y privilegios sobre esa BBDD que usamos en nuestra QNAP.<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3828" target="_blank" title="">nginxl_mover_8.jpg</a> (Size: 121,15 KB / Downloads: 58)
<!-- end: postbit_attachments_attachment --><br />
<br />
Ahora creamos al usuario y usamos la misma clave que se usó en QNAP (si los cambiamos lo haremos también en la creación del docker)<br />
Para crear al usuario lo haremos estando dentro de la base de datos Nginx_db y vamos a la lengüeta de <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3834" target="_blank" title="">nginxl_mover_12.jpg</a> (Size: 96,78 KB / Downloads: 54)
<!-- end: postbit_attachments_attachment --><br />
<br />
y tras pulsar al botón de "Go" se crea el usuario con permisos sólo en esa BBDD<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3835" target="_blank" title="">nginxl_mover_13.jpg</a> (Size: 156,27 KB / Downloads: 55)
<!-- end: postbit_attachments_attachment --><br />
<br />
tal como muestra la siguiente pantalla de resumen<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3836" target="_blank" title="">nginxl_mover_14.jpg</a> (Size: 79,04 KB / Downloads: 52)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<hr class="mycode_hr" />
<span style="font-size: medium;" class="mycode_size">3-restauracion de la base de datos.</span><br />
<br />
Ahora teniendo seleccionada la BBDD "nginx_db" abrimos la legüeta de importar<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3829" target="_blank" title="">nginxl_mover_9.jpg</a> (Size: 107,93 KB / Downloads: 57)
<!-- end: postbit_attachments_attachment --><br />
<br />
Seleccionamos el archivo sql que generamos en el punto 1 y pulsamos al botón inferior de importar.<br />
Si todo ha ido bien, veremos la estructura y datos que teníamos en nuestra QNAP.<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3830" target="_blank" title="">nginxl_mover_10.jpg</a> (Size: 42,56 KB / Downloads: 58)
<!-- end: postbit_attachments_attachment --><br />
<br />
En la parte de la derecha podemos ver el número de registros que contiene cada tabla.<br />
<hr class="mycode_hr" />
<span style="font-size: medium;" class="mycode_size">4-despliegue del docker adaptándolo rutas a las de la máquina nueva.</span><br />
<br />
Ahora lanzamos la cadena de creación del docker.<br />
Cuando se hizo en la QNAP se lanzó con este comando<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>docker run -d -p 2080:80 -p 2081:81 -p 2443:443 --restart always --name="nginx" -v /share/DockerData/nginx/data:/data/ -v /share/DockerData/nginx/letsencrypt:/etc/letsencrypt/  -e "DB_MYSQL_HOST=ip_de_nuestra_nas" -e "DB_MYSQL_PORT=3307" -e "DB_MYSQL_USER=usernginx" -e "DB_MYSQL_PASSWORD=claveusernginx" -e "DB_MYSQL_NAME=nginx_db" -e "DISABLE_IPV6=true" jc21/nginx-proxy-manager:latest</code></div></div><br />
Para lanzarlo en Terramaster, debemos adaptar las rutas persistentes al sistema de carpetas de Terramaster<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>docker run -d -p 2080:80 -p 2081:81 -p 2443:443 --restart always --name="nginx" -v /Volume1/DockerData/nginx/data:/data/ -v /Volume1/DockerData/nginx/letsencrypt:/etc/letsencrypt/  -e "DB_MYSQL_HOST=ip_de_nuestra_nas" -e "DB_MYSQL_PORT=3306" -e "DB_MYSQL_USER=usernginx" -e "DB_MYSQL_PASSWORD=claveusernginx" -e "DB_MYSQL_NAME=nginx_db" -e "DISABLE_IPV6=true" jc21/nginx-proxy-manager:latest</code></div></div><br />
En en caso de la Terramaster, su estructura de archivos no es igual en cuanto a rutas de carpetas compartidas y hay que recordar que tenemos alguna usada como persistente en la definición del docker.<br />
En vez de estar en "/share/" como en QNAP, se ubican en "/VolumeXX/"<br />
<br />
También he cambiado el puerto usado por la MariaDB de 3307 en la Qnap al habitual 3306 en la Terramaster. Esto es así ya que en la Qnap teníamos dos MariaDB. La version 5 y la 10, que usaban el 3306 y 3307 respectivamente.<br />
<br />
Si todo ha ido bien, abriremos un navegador web y escribiremos "https://ip_nas_terramaster:2081" y se nos presentará la web de gestión de Nginx Proxy Manager.<br />
Introducimos el mismo usuario y clave que usabamos en nuestra anterior Qnap y veremos el mismo contenido que tenemos en la anterio nas.<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3837" target="_blank" title="">nginxl_mover_15.jpg</a> (Size: 31,83 KB / Downloads: 48)
<!-- end: postbit_attachments_attachment --><br />
<br />
<span style="font-size: medium;" class="mycode_size">5-cambios en nuestro router para que los puertos 443 y 80 externos a nuestra red, lleguen al nuevo docker de Nginx.<br />
<br />
</span>Ahora, para activarlo, sólo debemos editar las reglas de nuestro cortafuegos para que los puertos 80 y 443 externos, en vez de ser redirigidos a la ip de la QNAP, lo sean al de la Terramaster.<br />
<br />
Evidentemente este tipo de traslados tiene sentido cuando hay muchas configuraciones dentro de nuestro nginx que son tediosas de repetir en uno nuevo.<br />
También puede ser útil el hacerlo simplemente para tener una replica de uno por si cayese la máquina que lo aloja y con iniciarlo y reconfigurar las dos reglas del router ya tendríamos de nuevo operativo uno.<br />
<br />
Y con esto hemos finalizado.<br />
<br />
<br />
Si veis alguna errata comentadme por privado para corregirla.]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Problema con Container Station]]></title>
			<link>https://www.qnapclub.es/showthread.php?tid=5751</link>
			<pubDate>Thu, 19 Feb 2026 19:23:50 +0100</pubDate>
			<dc:creator><![CDATA[<a href="https://www.qnapclub.es/member.php?action=profile&uid=7923">vuckaner</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.qnapclub.es/showthread.php?tid=5751</guid>
			<description><![CDATA[Hola compañeros, a ver si alguno de vosotros puede poner luz en el problema que tengo con Container Station y es que básicamente no me deja crear contenedores excepto con las imagenes que vienen por defecto. pero si me voy a containers --&gt; Create y escribo por ejemplo pihole:latest o el nombre de cualquier otro docker acaba tirandome un error indicando timeout (adjunto pantallazo)<br />
<br />
<div style="text-align: center;" class="mycode_align"><!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3820" target="_blank" title="">Captura de pantalla 2026-02-19 a las 19.20.02.png</a> (Size: 788,94 KB / Downloads: 78)
<!-- end: postbit_attachments_attachment --></div>
<br />
He tratado de solventarlo con el soporte de Qnap, pero llevan mareandome dos semanas y no me dan solucion. El caso es que si me conecto por consola y los levanto desde ahí, no tengo problema ninguno.<br />
<br />
¿Alguna idea / solución?<br />
<br />
Gracias!!]]></description>
			<content:encoded><![CDATA[Hola compañeros, a ver si alguno de vosotros puede poner luz en el problema que tengo con Container Station y es que básicamente no me deja crear contenedores excepto con las imagenes que vienen por defecto. pero si me voy a containers --&gt; Create y escribo por ejemplo pihole:latest o el nombre de cualquier otro docker acaba tirandome un error indicando timeout (adjunto pantallazo)<br />
<br />
<div style="text-align: center;" class="mycode_align"><!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3820" target="_blank" title="">Captura de pantalla 2026-02-19 a las 19.20.02.png</a> (Size: 788,94 KB / Downloads: 78)
<!-- end: postbit_attachments_attachment --></div>
<br />
He tratado de solventarlo con el soporte de Qnap, pero llevan mareandome dos semanas y no me dan solucion. El caso es que si me conecto por consola y los levanto desde ahí, no tengo problema ninguno.<br />
<br />
¿Alguna idea / solución?<br />
<br />
Gracias!!]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Gestor de contraseñas AliasVault]]></title>
			<link>https://www.qnapclub.es/showthread.php?tid=5661</link>
			<pubDate>Sat, 20 Sep 2025 19:14:08 +0200</pubDate>
			<dc:creator><![CDATA[<a href="https://www.qnapclub.es/member.php?action=profile&uid=3592">yeraycito</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.qnapclub.es/showthread.php?tid=5661</guid>
			<description><![CDATA[AliasVault es un gestor de contraseñas que llevo siguiendo desde hace ya bastante tiempo y si no lo he utilizado hasta ahora ha sido porque su instalación en docker era treméndamente compleja en la que se incluian demasiados elementos que no eran necesarios para todo el mundo, afortunádamente el desarrollador ha reducido esos requerimientos y a dia de hoy se instala muy fácilmente aunque ya explicaré que tiene alguna cosilla que otra.<br />
<br />
AliasVault tiene todo lo que se le puede pedir a un buen gestor de contraseñas, funciona en local, admite 2FA, yubikey, generador de contraseñas, extensiones para los navegadores y aplicaciones tanto para IOS como para Android y junto a todo esto una interfaz de lo más cuidada.<br />
<br />
Adicionálmente AliasVault tiene dos funciones extra que la competencia no tiene:<br />
<br />
 - AliasVault te permite generar alias (identidades) únicos que puedes utilizar para registrarte en diferentes servicios, manteniendo oculta tu identidad real.<br />
<br />
 - AliasVault tiene su propio servidor de correo electrónico integrado que le permite crear direcciones de correo electrónico únicas y recibir correos electrónicos directamente en AliasVault. No se requiere ningún servicio de correo electrónico de terceros.<br />
<br />
<br />
Como una imagen es mejor que mil palabras os dejo un video en el que se ve esto último:   <a href="https://www.youtube.com/watch?v=T35VHmS8a-A&amp;t=51s" target="_blank" rel="noopener" class="mycode_url">https://www.youtube.com/watch?v=T35VHmS8a-A&amp;t=51s</a><br />
<br />
Una de las cosas fundamentales en un gestor de contraseñas es la seguridad, en el caso de AliasVault su funcionamiento es el siguiente:<br />
<br />
<a href="https://docs.aliasvault.net/architecture/" target="_blank" rel="noopener" class="mycode_url">https://docs.aliasvault.net/architecture/</a><br />
<br />
<br />
Lo siguiente en este tutorial debería de ser poner el compose para su instalación a través de Container Station o Portainer pero antes de hacerlo explico algo. En mi exclusivo caso personal no voy a hacer uso de las funciones extra de AliasVault, es decir, ni generar alias ni utilizar el servidor de correo integrado así que no necesito que vayan integradas en el compose de instalación. El resumen de esto consiste en que voy a poner dos compose, uno con la versión completa y otro con la versión mini.<br />
<br />
ATENCION: Tanto si se escoge uno u otro compose para instalar AliasVault recomiendo encarecídamente hacerlo a través de Portainer.<br />
<br />
<br />
Compose versión completa:<br />
<br />
<br />
services:<br />
   aliasvault:<br />
      image: ghcr.io/aliasvault/aliasvault:latest<br />
      container_name: aliasvault<br />
      restart: always<br />
<br />
      ports:<br />
          - 94:80<br />
          - 8449:443<br />
          - 25:25<br />
          - 587:587<br />
<br />
      volumes:<br />
          - /share/DockerData/aliasvault/database:/database<br />
          - /share/DockerData/aliasvault/logs:/logs<br />
          - /share/DockerData/aliasvault/secrets:/secrets<br />
<br />
      environment:<br />
          PUBLIC_REGISTRATION_ENABLED: true<br />
          IP_LOGGING_ENABLED: true<br />
          FORCE_HTTPS_REDIRECT: false<br />
          SUPPORT_EMAIL: ""<br />
          PRIVATE_EMAIL_DOMAINS: ""<br />
<br />
<br />
A tener en cuenta:<br />
<br />
 - El puerto 94 es el puerto de acceso http a AliasVault, el puerto 8449 es el puerto de acceso https y los puertos 25 y 587 son los referidos al servidor de correo.<br />
<br />
 - Se utiliza la carpeta DockerData común a otros contenedores de este apartado del foro para las carpetas persistentes de AliasVault.<br />
<br />
 - Los apartados SUPPORT EMAIL y PRIVATE EMAIL DOMAINS están sin rellenar. Una vez instalado AliasVault entrando en su configuración he visto apartados en los que se pueden configurar diréctamente esos parámetros pero como estamos instalando AliasVault a través de docker desconozco si funcionarán, en cualquier caso os dejo un enlace en el que se explica como configurarlos en el compose de instalación:<br />
<br />
<a href="https://docs.aliasvault.net/installation/docker-compose/" target="_blank" rel="noopener" class="mycode_url">https://docs.aliasvault.net/installation...r-compose/</a><br />
<br />
<br />
<br />
Compose versión mini:<br />
<br />
<br />
services:<br />
    aliasvault:<br />
       image: ghcr.io/aliasvault/aliasvault:latest<br />
       container_name: aliasvault<br />
       restart: always<br />
<br />
       ports:<br />
           - 8449:443<br />
<br />
       volumes:<br />
           - /share/DockerData/aliasvault/database:/database<br />
           - /share/DockerData/aliasvault/logs:/logs<br />
           - /share/DockerData/aliasvault/secrets:/secrets<br />
<br />
       environment:<br />
           PUBLIC_REGISTRATION_ENABLED: true<br />
           IP_LOGGING_ENABLED: true<br />
           FORCE_HTTPS_REDIRECT: false<br />
<br />
<br />
Si se compara este compose versión mini con la versión completa anterior se podrá ver que se ha dejado únicamente el puerto 8449 https para acceder a la interfaz de AliasVault y se han eliminado todos los parámetros y puertos relativos al servidor de correo electrónico.<br />
<br />
Lógicamente si después de haber instalado AliasVault nos arrepentimos del compose escogido lo podemos editar desde Portainer añadiendo o quitando los parámetros necesarios.<br />
<br />
Sabiendo todo esto instalamos el compose escogido de AliasVault y al hacerlo si nos vamos al log de AliasVault en Portainer nos encontramos con esto:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3766" target="_blank" title="">1.png</a> (Size: 94,75 KB / Downloads: 278)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
De todo lo que aparece nos interesa ver que se nos informa que el usuario Admin y sobretodo su contraseña no está configurado por defecto y se nos propone unos comandos para solucionarlo. El siguiente paso consiste en acceder a la consola del contenedor AliasVault desde Portainer y ejecutar el siguiente comando:<br />
<br />
aliasvault reset-admin-password<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3779" target="_blank" title="">14.png</a> (Size: 351,1 KB / Downloads: 272)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Aunque lógicamente lo he tachado se puede ver que se ha generado una contraseña para el usuario admin que deberemos copiar y guardar, a continuación se nos pide que REINICIEMOS el contenedor AliasVault para que los cambios hagan efecto.<br />
<br />
Lo siguiente es acceder a la interfaz de AliasVault pero antes de hacerlo explico algo, se podría decir que AliasVault tiene dos interfaces de acceso, el primero consiste en acceder a su configuración y el segundo es donde vamos a crear el baul o baules donde se van a guardar las contraseñas.<br />
<br />
Vamos a empezar accediendo a la configuración de AliasVault, en mi caso he escogido la versión mini del compose de instalación así que para acceder a su interfaz lo hago a través de     <a href="https://iplocaldelnas:8449/admin" target="_blank" rel="noopener" class="mycode_url">https://iplocaldelnas:8449/admin</a><br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3768" target="_blank" title="">3.png</a> (Size: 47,05 KB / Downloads: 277)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Usuario: admin<br />
<br />
Contraseña: La que generamos y apuntamos anteriórmente.<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3769" target="_blank" title="">4.png</a> (Size: 116,26 KB / Downloads: 277)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
No me voy a explayar sobre lo que se puede hacer aquí, gestión de usuarios, correo electrónico y configuraciones del servidor.<br />
<br />
Como he comentado antes AliasVault tiene dos interfaces, para acceder al segundo que es el que permite el acceso al baul de las contraseñas en mi caso personal lo hago a través de   <a href="https://iplocaldelnas:8449" target="_blank" rel="noopener" class="mycode_url">https://iplocaldelnas:8449</a><br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3770" target="_blank" title="">5.png</a> (Size: 61,01 KB / Downloads: 290)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Como no tengo ningún baul ( vault ) creado procedo a su creación, lo primero que se me pide es crear un usuario:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3771" target="_blank" title="">6.png</a> (Size: 69,85 KB / Downloads: 278)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Lo siguiente es ponerle una contraseña maestra:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3772" target="_blank" title="">7.png</a> (Size: 115,14 KB / Downloads: 297)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Y con esto ya tenemos nuestro primer baul de contraseñas.<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3773" target="_blank" title="">8.png</a> (Size: 100,94 KB / Downloads: 295)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Si entramos en la configuración del baul de contraseñas podemos, si queremos, configurar una llave Yubikey para desbloquear el baúl en lugar de usar la contraseña maestra.<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3774" target="_blank" title="">9.png</a> (Size: 278,88 KB / Downloads: 284)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Podemos importar las contraseñas administradas por otros gestores de contraseñas que tengamos y también tenemos la posibilidad de exportar posteriórmente las contraseñas que tengamos en AliasVault.<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3775" target="_blank" title="">10.png</a> (Size: 321,8 KB / Downloads: 280)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
También se nos propone instalar extensiones de AliasVault disponibles para todos los navegadores principales, asimismo también podemos instalar AliasVault en dispositivos móviles tanto en IOS como en Android.<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3776" target="_blank" title="">11.png</a> (Size: 198,13 KB / Downloads: 276)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Almacenar una contraseña en AliasVault es muy sencillo y visuálmente muy conseguido, el 2FA es admitido.<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3777" target="_blank" title="">12.png</a> (Size: 171,13 KB / Downloads: 285)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
En mi modesta opinión todo se muestra muy cláramente y como digo reálmente bonito.<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3778" target="_blank" title="">13.png</a> (Size: 98,71 KB / Downloads: 276)
<!-- end: postbit_attachments_attachment -->]]></description>
			<content:encoded><![CDATA[AliasVault es un gestor de contraseñas que llevo siguiendo desde hace ya bastante tiempo y si no lo he utilizado hasta ahora ha sido porque su instalación en docker era treméndamente compleja en la que se incluian demasiados elementos que no eran necesarios para todo el mundo, afortunádamente el desarrollador ha reducido esos requerimientos y a dia de hoy se instala muy fácilmente aunque ya explicaré que tiene alguna cosilla que otra.<br />
<br />
AliasVault tiene todo lo que se le puede pedir a un buen gestor de contraseñas, funciona en local, admite 2FA, yubikey, generador de contraseñas, extensiones para los navegadores y aplicaciones tanto para IOS como para Android y junto a todo esto una interfaz de lo más cuidada.<br />
<br />
Adicionálmente AliasVault tiene dos funciones extra que la competencia no tiene:<br />
<br />
 - AliasVault te permite generar alias (identidades) únicos que puedes utilizar para registrarte en diferentes servicios, manteniendo oculta tu identidad real.<br />
<br />
 - AliasVault tiene su propio servidor de correo electrónico integrado que le permite crear direcciones de correo electrónico únicas y recibir correos electrónicos directamente en AliasVault. No se requiere ningún servicio de correo electrónico de terceros.<br />
<br />
<br />
Como una imagen es mejor que mil palabras os dejo un video en el que se ve esto último:   <a href="https://www.youtube.com/watch?v=T35VHmS8a-A&amp;t=51s" target="_blank" rel="noopener" class="mycode_url">https://www.youtube.com/watch?v=T35VHmS8a-A&amp;t=51s</a><br />
<br />
Una de las cosas fundamentales en un gestor de contraseñas es la seguridad, en el caso de AliasVault su funcionamiento es el siguiente:<br />
<br />
<a href="https://docs.aliasvault.net/architecture/" target="_blank" rel="noopener" class="mycode_url">https://docs.aliasvault.net/architecture/</a><br />
<br />
<br />
Lo siguiente en este tutorial debería de ser poner el compose para su instalación a través de Container Station o Portainer pero antes de hacerlo explico algo. En mi exclusivo caso personal no voy a hacer uso de las funciones extra de AliasVault, es decir, ni generar alias ni utilizar el servidor de correo integrado así que no necesito que vayan integradas en el compose de instalación. El resumen de esto consiste en que voy a poner dos compose, uno con la versión completa y otro con la versión mini.<br />
<br />
ATENCION: Tanto si se escoge uno u otro compose para instalar AliasVault recomiendo encarecídamente hacerlo a través de Portainer.<br />
<br />
<br />
Compose versión completa:<br />
<br />
<br />
services:<br />
   aliasvault:<br />
      image: ghcr.io/aliasvault/aliasvault:latest<br />
      container_name: aliasvault<br />
      restart: always<br />
<br />
      ports:<br />
          - 94:80<br />
          - 8449:443<br />
          - 25:25<br />
          - 587:587<br />
<br />
      volumes:<br />
          - /share/DockerData/aliasvault/database:/database<br />
          - /share/DockerData/aliasvault/logs:/logs<br />
          - /share/DockerData/aliasvault/secrets:/secrets<br />
<br />
      environment:<br />
          PUBLIC_REGISTRATION_ENABLED: true<br />
          IP_LOGGING_ENABLED: true<br />
          FORCE_HTTPS_REDIRECT: false<br />
          SUPPORT_EMAIL: ""<br />
          PRIVATE_EMAIL_DOMAINS: ""<br />
<br />
<br />
A tener en cuenta:<br />
<br />
 - El puerto 94 es el puerto de acceso http a AliasVault, el puerto 8449 es el puerto de acceso https y los puertos 25 y 587 son los referidos al servidor de correo.<br />
<br />
 - Se utiliza la carpeta DockerData común a otros contenedores de este apartado del foro para las carpetas persistentes de AliasVault.<br />
<br />
 - Los apartados SUPPORT EMAIL y PRIVATE EMAIL DOMAINS están sin rellenar. Una vez instalado AliasVault entrando en su configuración he visto apartados en los que se pueden configurar diréctamente esos parámetros pero como estamos instalando AliasVault a través de docker desconozco si funcionarán, en cualquier caso os dejo un enlace en el que se explica como configurarlos en el compose de instalación:<br />
<br />
<a href="https://docs.aliasvault.net/installation/docker-compose/" target="_blank" rel="noopener" class="mycode_url">https://docs.aliasvault.net/installation...r-compose/</a><br />
<br />
<br />
<br />
Compose versión mini:<br />
<br />
<br />
services:<br />
    aliasvault:<br />
       image: ghcr.io/aliasvault/aliasvault:latest<br />
       container_name: aliasvault<br />
       restart: always<br />
<br />
       ports:<br />
           - 8449:443<br />
<br />
       volumes:<br />
           - /share/DockerData/aliasvault/database:/database<br />
           - /share/DockerData/aliasvault/logs:/logs<br />
           - /share/DockerData/aliasvault/secrets:/secrets<br />
<br />
       environment:<br />
           PUBLIC_REGISTRATION_ENABLED: true<br />
           IP_LOGGING_ENABLED: true<br />
           FORCE_HTTPS_REDIRECT: false<br />
<br />
<br />
Si se compara este compose versión mini con la versión completa anterior se podrá ver que se ha dejado únicamente el puerto 8449 https para acceder a la interfaz de AliasVault y se han eliminado todos los parámetros y puertos relativos al servidor de correo electrónico.<br />
<br />
Lógicamente si después de haber instalado AliasVault nos arrepentimos del compose escogido lo podemos editar desde Portainer añadiendo o quitando los parámetros necesarios.<br />
<br />
Sabiendo todo esto instalamos el compose escogido de AliasVault y al hacerlo si nos vamos al log de AliasVault en Portainer nos encontramos con esto:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3766" target="_blank" title="">1.png</a> (Size: 94,75 KB / Downloads: 278)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
De todo lo que aparece nos interesa ver que se nos informa que el usuario Admin y sobretodo su contraseña no está configurado por defecto y se nos propone unos comandos para solucionarlo. El siguiente paso consiste en acceder a la consola del contenedor AliasVault desde Portainer y ejecutar el siguiente comando:<br />
<br />
aliasvault reset-admin-password<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3779" target="_blank" title="">14.png</a> (Size: 351,1 KB / Downloads: 272)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Aunque lógicamente lo he tachado se puede ver que se ha generado una contraseña para el usuario admin que deberemos copiar y guardar, a continuación se nos pide que REINICIEMOS el contenedor AliasVault para que los cambios hagan efecto.<br />
<br />
Lo siguiente es acceder a la interfaz de AliasVault pero antes de hacerlo explico algo, se podría decir que AliasVault tiene dos interfaces de acceso, el primero consiste en acceder a su configuración y el segundo es donde vamos a crear el baul o baules donde se van a guardar las contraseñas.<br />
<br />
Vamos a empezar accediendo a la configuración de AliasVault, en mi caso he escogido la versión mini del compose de instalación así que para acceder a su interfaz lo hago a través de     <a href="https://iplocaldelnas:8449/admin" target="_blank" rel="noopener" class="mycode_url">https://iplocaldelnas:8449/admin</a><br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3768" target="_blank" title="">3.png</a> (Size: 47,05 KB / Downloads: 277)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Usuario: admin<br />
<br />
Contraseña: La que generamos y apuntamos anteriórmente.<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3769" target="_blank" title="">4.png</a> (Size: 116,26 KB / Downloads: 277)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
No me voy a explayar sobre lo que se puede hacer aquí, gestión de usuarios, correo electrónico y configuraciones del servidor.<br />
<br />
Como he comentado antes AliasVault tiene dos interfaces, para acceder al segundo que es el que permite el acceso al baul de las contraseñas en mi caso personal lo hago a través de   <a href="https://iplocaldelnas:8449" target="_blank" rel="noopener" class="mycode_url">https://iplocaldelnas:8449</a><br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3770" target="_blank" title="">5.png</a> (Size: 61,01 KB / Downloads: 290)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Como no tengo ningún baul ( vault ) creado procedo a su creación, lo primero que se me pide es crear un usuario:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3771" target="_blank" title="">6.png</a> (Size: 69,85 KB / Downloads: 278)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Lo siguiente es ponerle una contraseña maestra:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3772" target="_blank" title="">7.png</a> (Size: 115,14 KB / Downloads: 297)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Y con esto ya tenemos nuestro primer baul de contraseñas.<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3773" target="_blank" title="">8.png</a> (Size: 100,94 KB / Downloads: 295)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Si entramos en la configuración del baul de contraseñas podemos, si queremos, configurar una llave Yubikey para desbloquear el baúl en lugar de usar la contraseña maestra.<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3774" target="_blank" title="">9.png</a> (Size: 278,88 KB / Downloads: 284)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Podemos importar las contraseñas administradas por otros gestores de contraseñas que tengamos y también tenemos la posibilidad de exportar posteriórmente las contraseñas que tengamos en AliasVault.<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3775" target="_blank" title="">10.png</a> (Size: 321,8 KB / Downloads: 280)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
También se nos propone instalar extensiones de AliasVault disponibles para todos los navegadores principales, asimismo también podemos instalar AliasVault en dispositivos móviles tanto en IOS como en Android.<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3776" target="_blank" title="">11.png</a> (Size: 198,13 KB / Downloads: 276)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Almacenar una contraseña en AliasVault es muy sencillo y visuálmente muy conseguido, el 2FA es admitido.<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3777" target="_blank" title="">12.png</a> (Size: 171,13 KB / Downloads: 285)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
En mi modesta opinión todo se muestra muy cláramente y como digo reálmente bonito.<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3778" target="_blank" title="">13.png</a> (Size: 98,71 KB / Downloads: 276)
<!-- end: postbit_attachments_attachment -->]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Arcane gestión dockers]]></title>
			<link>https://www.qnapclub.es/showthread.php?tid=5659</link>
			<pubDate>Sun, 14 Sep 2025 14:23:25 +0200</pubDate>
			<dc:creator><![CDATA[<a href="https://www.qnapclub.es/member.php?action=profile&uid=3592">yeraycito</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.qnapclub.es/showthread.php?tid=5659</guid>
			<description><![CDATA[A la hora de gestionar Dockers el rey indiscutible es Portainer pero eso no significa que no existan alternativas interesantes y una de ellas es la que va a protagonizar este tutorial. Arcane tiene básicamente las mismas funciones que Portainer con añadidos importantes sumando también una interfaz visuálmente muy bonita.<br />
<br />
Lo instalaremos a través del siguiente compose:<br />
<br />
<br />
services:<br />
   arcane:<br />
      image: ghcr.io/ofkm/arcane:latest<br />
      container_name: arcane<br />
      ports:<br />
          - 3552:3552<br />
      volumes:<br />
          - /var/run/docker.sock:/var/run/docker.sock<br />
          - /share/DockerData/arcane/arcane-data:/app/data<br />
          - /share/DockerData/arcane/projects:/app/data/projects<br />
      environment:<br />
          - PUID=1000<br />
          - PGID=100<br />
          - ENCRYPTION_KEY=XXXXXXXXXXXXXXX<br />
          - JWT_SECRET=YYYYYYYYYYYY<br />
      restart: always<br />
<br />
<br />
A tener en cuenta:<br />
<br />
 - Tenemos que comprobar que los valores PUID - PGID se correspondan a nuestro usuario en el nas.<br />
<br />
 - A la hora de montar los volúmenes del docker se ha utilizado la carpeta DockerData común en otros dockers de este apartado del foro.<br />
<br />
 - JWT SECRET es una clave que tendremos que generar, podemos hacerlo aquí:  <a href="https://jwtsecrets.com/" target="_blank" rel="noopener" class="mycode_url">https://jwtsecrets.com/</a><br />
<br />
 - ENCRYPTION KEY es otra clave distinta que tendremos que generar desde un terminal en windows - linux con el siguiente comando:<br />
<br />
   openssl rand -base64 32<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3755" target="_blank" title="">0.png</a> (Size: 41,22 KB / Downloads: 284)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Creado el contenedor Arcane accedemos a su interfaz mediante    <a href="http://iplocaldelnas:3552" target="_blank" rel="noopener" class="mycode_url">http://iplocaldelnas:3552</a><br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3756" target="_blank" title="">1.png</a> (Size: 146,68 KB / Downloads: 278)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Usuario:  arcane<br />
<br />
Contraseña:  arcane-admin<br />
<br />
<br />
<br />
Una vez accedido con esas credenciales se nos pide cambiar la contraseña:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3757" target="_blank" title="">2.png</a> (Size: 80,91 KB / Downloads: 281)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Si posteriórmente quisiéramos cambiar el nombre de usuario lo podremos hacer desde la interfaz creando un nuevo usuario con el nombre que nos apetezca, le ponemos una contraseña y le damos permisos de Administrador, por último eliminamos el usuario admin existente.<br />
<br />
En el siguiente paso se nos pregunta si queremos activar las actualizaciones automáticas de los dockers que tengamos ( por limitaciones de este foro sobre el tamaño de las imágenes a subir procedo a su división).<br />
<br />
Parte izquierda de la interfaz:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3758" target="_blank" title="">3.png</a> (Size: 133,06 KB / Downloads: 286)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
En la parte derecha de la interfaz en que nos encontramos podemos configurar como Arcane purga las imágenes descargadas de los dockers después de actualizarlos:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3759" target="_blank" title="">4.png</a> (Size: 158,65 KB / Downloads: 288)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Estos ajustes podemos configurarlos ahora o saltarlos para cuando nos apetezca configurarlos después a través de la interfaz de Arcane.<br />
<br />
El siguiente paso tiene que ver con la autentificación a la hora de acceder a Arcane:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3760" target="_blank" title="">5.png</a> (Size: 94,89 KB / Downloads: 286)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Continuando con la primera configuración en el siguiente paso nos encontramos con esto:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3761" target="_blank" title="">6.png</a> (Size: 184,84 KB / Downloads: 277)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Dejando ese ajuste tal como está al intentar continuar con la configuración inicial me ha dado error impidiéndome continuar, se solventa poniendo la ip local del nas:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3762" target="_blank" title="">7.png</a> (Size: 156,66 KB / Downloads: 280)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Con este paso se termina la configuración y accedemos a su interfaz:<br />
<br />
Parte izquierda:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3763" target="_blank" title="">8.png</a> (Size: 411,2 KB / Downloads: 295)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Parte derecha:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3764" target="_blank" title="">9.png</a> (Size: 336,61 KB / Downloads: 297)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Visualización de un contenedor en concreto:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3765" target="_blank" title="">10.png</a> (Size: 239,97 KB / Downloads: 300)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Podemos ver más datos aparte de los que se ven en la imagen anterior.<br />
<br />
<br />
Si tenemos más equipos aparte del nas con dockers instalados los podemos gestionar desde Arcane en el nas configurando en esos equipos lo que se conoce como un Agente, para poder hacerlo tenéis que seguir este tutorial:<br />
<br />
<a href="https://arcane.ofkm.dev/docs/features/environments" target="_blank" rel="noopener" class="mycode_url">https://arcane.ofkm.dev/docs/features/environments</a>]]></description>
			<content:encoded><![CDATA[A la hora de gestionar Dockers el rey indiscutible es Portainer pero eso no significa que no existan alternativas interesantes y una de ellas es la que va a protagonizar este tutorial. Arcane tiene básicamente las mismas funciones que Portainer con añadidos importantes sumando también una interfaz visuálmente muy bonita.<br />
<br />
Lo instalaremos a través del siguiente compose:<br />
<br />
<br />
services:<br />
   arcane:<br />
      image: ghcr.io/ofkm/arcane:latest<br />
      container_name: arcane<br />
      ports:<br />
          - 3552:3552<br />
      volumes:<br />
          - /var/run/docker.sock:/var/run/docker.sock<br />
          - /share/DockerData/arcane/arcane-data:/app/data<br />
          - /share/DockerData/arcane/projects:/app/data/projects<br />
      environment:<br />
          - PUID=1000<br />
          - PGID=100<br />
          - ENCRYPTION_KEY=XXXXXXXXXXXXXXX<br />
          - JWT_SECRET=YYYYYYYYYYYY<br />
      restart: always<br />
<br />
<br />
A tener en cuenta:<br />
<br />
 - Tenemos que comprobar que los valores PUID - PGID se correspondan a nuestro usuario en el nas.<br />
<br />
 - A la hora de montar los volúmenes del docker se ha utilizado la carpeta DockerData común en otros dockers de este apartado del foro.<br />
<br />
 - JWT SECRET es una clave que tendremos que generar, podemos hacerlo aquí:  <a href="https://jwtsecrets.com/" target="_blank" rel="noopener" class="mycode_url">https://jwtsecrets.com/</a><br />
<br />
 - ENCRYPTION KEY es otra clave distinta que tendremos que generar desde un terminal en windows - linux con el siguiente comando:<br />
<br />
   openssl rand -base64 32<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3755" target="_blank" title="">0.png</a> (Size: 41,22 KB / Downloads: 284)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Creado el contenedor Arcane accedemos a su interfaz mediante    <a href="http://iplocaldelnas:3552" target="_blank" rel="noopener" class="mycode_url">http://iplocaldelnas:3552</a><br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3756" target="_blank" title="">1.png</a> (Size: 146,68 KB / Downloads: 278)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Usuario:  arcane<br />
<br />
Contraseña:  arcane-admin<br />
<br />
<br />
<br />
Una vez accedido con esas credenciales se nos pide cambiar la contraseña:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3757" target="_blank" title="">2.png</a> (Size: 80,91 KB / Downloads: 281)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Si posteriórmente quisiéramos cambiar el nombre de usuario lo podremos hacer desde la interfaz creando un nuevo usuario con el nombre que nos apetezca, le ponemos una contraseña y le damos permisos de Administrador, por último eliminamos el usuario admin existente.<br />
<br />
En el siguiente paso se nos pregunta si queremos activar las actualizaciones automáticas de los dockers que tengamos ( por limitaciones de este foro sobre el tamaño de las imágenes a subir procedo a su división).<br />
<br />
Parte izquierda de la interfaz:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3758" target="_blank" title="">3.png</a> (Size: 133,06 KB / Downloads: 286)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
En la parte derecha de la interfaz en que nos encontramos podemos configurar como Arcane purga las imágenes descargadas de los dockers después de actualizarlos:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3759" target="_blank" title="">4.png</a> (Size: 158,65 KB / Downloads: 288)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Estos ajustes podemos configurarlos ahora o saltarlos para cuando nos apetezca configurarlos después a través de la interfaz de Arcane.<br />
<br />
El siguiente paso tiene que ver con la autentificación a la hora de acceder a Arcane:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3760" target="_blank" title="">5.png</a> (Size: 94,89 KB / Downloads: 286)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Continuando con la primera configuración en el siguiente paso nos encontramos con esto:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3761" target="_blank" title="">6.png</a> (Size: 184,84 KB / Downloads: 277)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Dejando ese ajuste tal como está al intentar continuar con la configuración inicial me ha dado error impidiéndome continuar, se solventa poniendo la ip local del nas:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3762" target="_blank" title="">7.png</a> (Size: 156,66 KB / Downloads: 280)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Con este paso se termina la configuración y accedemos a su interfaz:<br />
<br />
Parte izquierda:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3763" target="_blank" title="">8.png</a> (Size: 411,2 KB / Downloads: 295)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Parte derecha:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3764" target="_blank" title="">9.png</a> (Size: 336,61 KB / Downloads: 297)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Visualización de un contenedor en concreto:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3765" target="_blank" title="">10.png</a> (Size: 239,97 KB / Downloads: 300)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Podemos ver más datos aparte de los que se ven en la imagen anterior.<br />
<br />
<br />
Si tenemos más equipos aparte del nas con dockers instalados los podemos gestionar desde Arcane en el nas configurando en esos equipos lo que se conoce como un Agente, para poder hacerlo tenéis que seguir este tutorial:<br />
<br />
<a href="https://arcane.ofkm.dev/docs/features/environments" target="_blank" rel="noopener" class="mycode_url">https://arcane.ofkm.dev/docs/features/environments</a>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Servidor Baikal de calendarios y contactos]]></title>
			<link>https://www.qnapclub.es/showthread.php?tid=5654</link>
			<pubDate>Sat, 23 Aug 2025 00:09:26 +0200</pubDate>
			<dc:creator><![CDATA[<a href="https://www.qnapclub.es/member.php?action=profile&uid=148">Ganekogorta</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.qnapclub.es/showthread.php?tid=5654</guid>
			<description><![CDATA[Hola<br />
<br />
En este post vamos a ver como desplegar un docker de <a href="https://sabre.io/baikal" target="_blank" rel="noopener" class="mycode_url">Baikal</a>.<br />
Baikal es una aplicación web que permite a varios usuarios alojar sus citas e calendarios y sus contactos no dependiendo de servidores de terceros.<br />
<br />
No es una aplicación pesada ya que en realidad en ella sólo se gestionan los datos que envíen los equipos clientes y hay una pequeña gestión web para crear usuarios.<br />
<br />
Se que hay un qpkg para la aplicación en <a href="https://www.myqnap.org/product/baikal-apache84" target="_blank" rel="noopener" class="mycode_url">MyQnap.org</a> , pero pide tiene una dependencia de Apache84. Y ese Apache84 es un paquete de pago de 16€. <br />
<br />
En nuestro caso no tenemos esa dependencia y el costo es 0€  <img src="https://www.qnapclub.es/images/smilies/wink.png" alt="Wink" title="Wink" class="smilie smilie_2" /> <br />
<br />
Requisitos:<br />
1-tener instalado Container Station para poder lanzar dockers<br />
2-tener instalada y activa una BBDD MariaDB o MySQL.<br />
3-tener una carpeta compartida o subcarpeta dentro de una compartida para dejar datos de forma persistente<br />
3-tener acceso a la consola de comandos de la NAS.<br />
<br />
Requisitos recomendables:<br />
1-tener una dns publica para acceder a la nas desde el exterior.<br />
2-tener un dominio para gestionar nuestros dns. Los hay baratos sobre los 12€ al año (si vas a adquirir revisa las renovaciones)<br />
3-usar un proxy inverso tipo <a href="https://www.qnapclub.es/showthread.php?tid=4781" target="_blank" rel="noopener" class="mycode_url">nginx</a> para aportar un certificado http y un extra de seguridad<br />
4-tener <a href="https://www.qnapclub.es/showthread.php?tid=3881" target="_blank" rel="noopener" class="mycode_url">Cloudflare web</a> como gestor de nuestros dns, para ocultar nuestra ip pública real<br />
<br />
Para el punto 1, es importante no estar bajo CGNAT, ya que no podríamos acceder desde el exterior haca nuestra nas.<br />
Para el punto 2, he preferido usar nginx proxy manager, pero podemos usar traefik o bien el integrado en la nas.<br />
<br />
Los datos que generemos van a estar repartidos en dos ubicaciones:<br />
-la base de datos de MariaDB<br />
-la carpeta persistente<br />
<br />
Lo indico ya que deberemos hacer copia de seguridad de ambos contenidos.<br />
Siempre debemos tener copias de seguridad de nuestros datos, que luego vienen los sustos  <img src="https://www.qnapclub.es/images/smilies/wink.png" alt="Wink" title="Wink" class="smilie smilie_2" /> <br />
<br />
<hr class="mycode_hr" />
Indice<br />
<br />
1-Creación de la base de datos y un usuario en MariaDB<br />
2-Creación y despliegue del docker<br />
3-Accesos web y creación de usuarios en Baikal<br />
4-Accesos desde el exterior<br />
5-Configuración de clientes en móvil IOs<br />
6-Configuración de clientes en móvil Android<br />
7-Configuración de clientes en Thunderbird<br />
<br />
<br />
<hr class="mycode_hr" />
<br />
<span style="text-decoration: underline;" class="mycode_u">1-Creación de la base de datos y el usuario en MariaDB</span><br />
<br />
Estoy dando por supuesto que ya tenemos instalada y activa la aplicación MariaDB en nuestra nas. Pero podríamos tenerla en otra máquina distinta.<br />
<br />
Para este ejemplo usaré MariaDB10<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3702" target="_blank" title="">baikal_1.jpg</a> (Size: 44,65 KB / Downloads: 290)
<!-- end: postbit_attachments_attachment --><br />
<br />
En este caso el puerto que se usa es el 3307, pero puede ser otro.<br />
<br />
Se puede hacer la gestión de MariaDB enteramente por consola ssh, pero es mas gráfico y comprensible si lo hacemos por entorno gráfico.<br />
Para ello usaremos la aplicación PhpMyAdmin instalabre desde nuestro App Center.<br />
<br />
En su momento ya se describió en este otro post de <a href="https://www.qnapclub.es/showthread.php?tid=5354" target="_blank" rel="noopener" class="mycode_url">creación de una BBDD en MariaDB usando PhpMyAdmin</a><br />
<br />
<br />
Para este caso vamos a crear una base de datos bacía de nombre "baikal_db" y un usuario "baikal" con permisos en esa base de datos desde cualquier host (%). <br />
La clave será una de nuestra elección. Apuntad estos tres datos ya que posteriormente hemos de usarlos.<br />
<br />
Pongo unas capturas del proceso<br />
<br />
Nos logueamos en <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3703" target="_blank" title="">baikal_2.jpg</a> (Size: 25,13 KB / Downloads: 262)
<!-- end: postbit_attachments_attachment --><br />
<br />
En la pantalla principal, pulso sobre el botón de agregar una nueva base de datos<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3704" target="_blank" title="">baikal_3.jpg</a> (Size: 62,14 KB / Downloads: 273)
<!-- end: postbit_attachments_attachment --><br />
<br />
Le doy nombre y la creo. En este caso "baikal_db"<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3705" target="_blank" title="">baikal_4.jpg</a> (Size: 48,08 KB / Downloads: 287)
<!-- end: postbit_attachments_attachment --><br />
<br />
Me aparecerá en la lista de la izquierda<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3706" target="_blank" title="">baikal_5.jpg</a> (Size: 29,17 KB / Downloads: 282)
<!-- end: postbit_attachments_attachment --><br />
<br />
Ahora crearemos un usuario para esa base de datos de nombre "baikal" y contraseña "clave_de_baikal"<br />
Para ello selecciono la base de datos de "baikal_db" de la izquierda y después selecciono la lengüeta de privilegios.<br />
En la parte inferior de la pantalla está la opción de "Agregar cuenta de usuario"<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3707" target="_blank" title="">baikal_6.jpg</a> (Size: 114,9 KB / Downloads: 307)
<!-- end: postbit_attachments_attachment --><br />
<br />
Asignamos nombre, clave y permisos<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3708" target="_blank" title="">baikal_7.jpg</a> (Size: 83,56 KB / Downloads: 273)
<!-- end: postbit_attachments_attachment --><br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3709" target="_blank" title="">baikal_8.jpg</a> (Size: 90,01 KB / Downloads: 285)
<!-- end: postbit_attachments_attachment --><br />
<br />
Pulsamos luego sobre continuar y ya tenemos nuestro usuario con los permisos adecuados.<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3710" target="_blank" title="">baikal_9.jpg</a> (Size: 20,16 KB / Downloads: 278)
<!-- end: postbit_attachments_attachment --><br />
<br />
Ya podemos cerrar PhpMyAdmin.<br />
<hr class="mycode_hr" />
<br />
<span style="text-decoration: underline;" class="mycode_u">2-Creación y despliegue del docker</span><br />
<br />
Aquí usaremos la consola de ssh para lanzar el siguiente comando de creación del docker<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>docker run -d --name baikal --restart unless-stopped -p 18080:80 -v /share/DockerData/baikal/data:/var/www/baikal/Specific -v /share/DockerData/baikal/config:/var/www/baikal/config ckulka/baikal:nginx</code></div></div><br />
El comando usa dos carpetas persistentes que están apuntando a un carpeta compartida de nuestra nas. En el ejemplo la carpeta compartida es "DockerData".<br />
En su interior de forma automática se creará la carpeta "baikal" y dentro de ellas las de "data" y "config"<br />
<br />
He puesto como puerto de publicación el 18080, pero puede ser cualquiera de nuestra elección que no esté por otros servicios.<br />
<br />
En la consola veremos la descarga, descompresión e instalación del docker<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3711" target="_blank" title="">baikal_10.jpg</a> (Size: 41,48 KB / Downloads: 274)
<!-- end: postbit_attachments_attachment --><br />
<br />
Tras este proceso veremos una pantalla similar a la siguiente<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3712" target="_blank" title="">baikal_11.jpg</a> (Size: 46,1 KB / Downloads: 269)
<!-- end: postbit_attachments_attachment --><br />
<br />
Y con esto hemos acabado de instalar el contenedor.<br />
<hr class="mycode_hr" />
<span style="text-decoration: underline;" class="mycode_u">3-Accesos web y creación de usuarios en Baikal</span><br />
<br />
Si lo hemos hecho bien, abrimos un navegador y si vamos a <a href="http://ip_nas:18080" target="_blank" rel="noopener" class="mycode_url">http://ip_nas:18080</a> veremos el asistente de la primera configuración:<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3713" target="_blank" title="">baikal_12.jpg</a> (Size: 48,14 KB / Downloads: 297)
<!-- end: postbit_attachments_attachment --><br />
<br />
Vamos rellenando los datos y los adaptamos a nuestra instalación.<br />
Pondremos una clave de usuario administrador que debemos apuntar ya que la usaremos para crear mas usuarios de Baikal en un futuro.<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3714" target="_blank" title="">baikal_13.jpg</a> (Size: 31,14 KB / Downloads: 289)
<!-- end: postbit_attachments_attachment --><br />
<br />
Ahora pasamos a la base de datos, que por defecto usa sqlite.<br />
La cambiamos a Mysql y rellenamos con los datos que pusimos en MariaDB.<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3716" target="_blank" title="">baikal_15.jpg</a> (Size: 43,07 KB / Downloads: 281)
<!-- end: postbit_attachments_attachment --><br />
<br />
El motivo de usar MariaDB frente a sqlite, es que su motor es mas ágil si tenemos volúmenes importantes de datos y permite una mejro gestión de copias de seguridad.<br />
<br />
Una vez acabado el asistente, este no vuelve a estar disponible.<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3715" target="_blank" title="">baikal_14.jpg</a> (Size: 41,38 KB / Downloads: 285)
<!-- end: postbit_attachments_attachment --><br />
<br />
Una vez salgamos del asistente y nos identifiquemos en la web, veremos siguiente dashboard:<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3717" target="_blank" title="">baikal_16.jpg</a> (Size: 78,6 KB / Downloads: 275)
<!-- end: postbit_attachments_attachment --><br />
<br />
En el menú superior elegimos usuarios y recursos para agregar una nuevo<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3718" target="_blank" title="">baikal_17.jpg</a> (Size: 40,28 KB / Downloads: 270)
<!-- end: postbit_attachments_attachment --><br />
<br />
Para el ejemplo creo al usuario "usuario" con su clave.<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3719" target="_blank" title="">baikal_18.jpg</a> (Size: 32,3 KB / Downloads: 284)
<!-- end: postbit_attachments_attachment --><br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3720" target="_blank" title="">baikal_19.jpg</a> (Size: 25,09 KB / Downloads: 261)
<!-- end: postbit_attachments_attachment --><br />
<br />
Por defecto se han creado un calendario pro defecto y una agenda de direcciones por defecto.<br />
<br />
Podremos crear nuevas desde los equipos clientes o bien crearlas desde la web<br />
<br />
Para crear un calendario de "viajes" lo haríamos de la siguiente forma:<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3721" target="_blank" title="">baikal_21.jpg</a> (Size: 35,58 KB / Downloads: 270)
<!-- end: postbit_attachments_attachment --><br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3722" target="_blank" title="">baikal_22.jpg</a> (Size: 40,18 KB / Downloads: 274)
<!-- end: postbit_attachments_attachment --><br />
<br />
En el campo tokenID puedo poner cualquier cadena única en minúsculas. <br />
Para no complicarlo uso el nombre del calendario en minúsculas. Una vez creado NO puede ser modificado<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3723" target="_blank" title="">baikal_23.jpg</a> (Size: 32,16 KB / Downloads: 264)
<!-- end: postbit_attachments_attachment --><br />
<br />
He activado el uso de notas en las citas.<br />
<br />
Y una vez creado, lo veremos en la lista<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3724" target="_blank" title="">baikal_24.jpg</a> (Size: 37,53 KB / Downloads: 261)
<!-- end: postbit_attachments_attachment --><br />
<br />
Podemos operar de forma similar con la agenda de contactos.<br />
Lo normal para todos es tener una única agenda de contactos, pero puede haber usuarios que quieran tener mas de una.<br />
Por ejemplo para tener una personal y una laboral.<br />
<br />
Con esto ya hemos acabado con la gestión de usuarios y ya tenemos operativo nuestro servidor caldav y cardav.<br />
<br />
<hr class="mycode_hr" />
4-<span style="text-decoration: underline;" class="mycode_u">Accesos desde el exterior</span><br />
<br />
Ahora mismo nuestro servidor sólo es accesible si estamos en la misma red que la nas.<br />
<br />
Si no tenemos un dominio propio podemos acceder a Baikal mediante una VPN (<a href="https://www.qnapclub.es/showthread.php?tid=4295" target="_blank" rel="noopener" class="mycode_url">Wireguard</a> u <a href="https://www.qnapclub.es/showthread.php?tid=2095" target="_blank" rel="noopener" class="mycode_url">OpenVPN</a>)<br />
Es decir podríamos acceder al servidor Baikal como si estuviésemos en la red de la nas.<br />
<br />
Si tenemos un dominio personal y tenemos nuestra gestión de dns. Podemos definir una nueva que apunte a nuestra ip publica.<br />
Y para agregar una capa de seguridad debemos usar un proxy inverso (<a href="https://www.qnapclub.es/showthread.php?tid=4781" target="_blank" rel="noopener" class="mycode_url">Nginx</a>, <a href="https://www.qnapclub.es/showthread.php?tid=3601" target="_blank" rel="noopener" class="mycode_url">Traefik</a>, <a href="https://www.qnap.com/es-es/how-to/tutorial/article/cómo-usar-proxy-inverso-para-mejorar-las-conexiones-remotas-seguras" target="_blank" rel="noopener" class="mycode_url">el de QTS</a>)  que nos aporta el certificado<br />
<br />
En función de que usemos o no los accesos desde el exterior, tendremos las siguientes direcciones para acceder a los calendarios y agendas.<br />
<br />
Aquí tenemos las del primer calendario que es el de defecto.<br />
<a href="http://ip_nuestra_nas:18080/dav.php/calendars/usuario/default/" target="_blank" rel="noopener" class="mycode_url">http://ip_nuestra_nas:18080/dav.php/cale...o/default/</a><br />
<a href="https://baikal.mi_dominio.eus/dav.php/calendars/usuario/default/" target="_blank" rel="noopener" class="mycode_url">https://baikal.mi_dominio.eus/dav.php/ca...o/default/</a><br />
<br />
Las direcciones del calendario de viajes son:<br />
<a href="http://ip_nuestra_nas:18080/dav.php/calendars/usuario/viajes/" target="_blank" rel="noopener" class="mycode_url">http://ip_nuestra_nas:18080/dav.php/cale...io/viajes/</a><br />
<a href="https://baikal.mi_dominio.eus/dav.php/calendars/usuario/viajes/" target="_blank" rel="noopener" class="mycode_url">https://baikal.mi_dominio.eus/dav.php/ca...io/viajes/</a><br />
<br />
Las direcciones de la agenda de defecto son:<br />
<a href="http://ip_nuestra_nas:18080/dav.php/addressbooks/usuario/default/" target="_blank" rel="noopener" class="mycode_url">http://ip_nuestra_nas:18080/dav.php/addr...o/default/</a><br />
<a href="http://baikal.mi_dominio.eus/dav.php/addressbooks/usuario/default/" target="_blank" rel="noopener" class="mycode_url">http://baikal.mi_dominio.eus/dav.php/add...o/default/</a><br />
<br />
y como credenciales usaremos "usuario" y la clave que definimos anteriormente.<br />
<br />
Cuando lo configuremos en clientes de correo podemos usar las genéricas:<br />
<a href="http://ip_nuestra_nas:18080/dav.php/addressbookst" target="_blank" rel="noopener" class="mycode_url">http://ip_nuestra_nas:18080/dav.php/addressbookst</a><br />
<a href="http://baikal.mi_dominio.eus/dav.php/addressbooks" target="_blank" rel="noopener" class="mycode_url">http://baikal.mi_dominio.eus/dav.php/addressbooks</a><br />
<br />
<a href="http://ip_nuestra_nas:18080/dav.php/calendars" target="_blank" rel="noopener" class="mycode_url">http://ip_nuestra_nas:18080/dav.php/calendars</a><br />
<a href="https://baikal.mi_dominio.eus/dav.php/calendars" target="_blank" rel="noopener" class="mycode_url">https://baikal.mi_dominio.eus/dav.php/calendars</a><br />
<br />
En esto últimos casos, la aplicación cliente nos mostrará y permitirá seleccionar que calendarios o agendas queremos agregar.<br />
<br />
<br />
<hr class="mycode_hr" />
<br />
5-<span style="text-decoration: underline;" class="mycode_u">Configuración de clientes en móvil IOs</span><br />
<br />
Para agregar los calendarios o agendas en iOS iremos a Ajustes y buscaremos "cuentas" o "cuentas de Mail" en función de la versión de iOS.<br />
<br />
Pulsamos añadir cuentas y seleccionamos de la lista la inferior "otras".<br />
<br />
De ahí seleccionamos "Añadir cuenta CardDav"<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3726" target="_blank" title="">baikal_26.jpg</a> (Size: 111,24 KB / Downloads: 267)
<!-- end: postbit_attachments_attachment --><br />
<br />
Rellenamos los datos del usuario y su clave. En la dirección del servidor pondremos<br />
"ip_nas:18080/dav.php" donde ip_nas es la ip privada de la nas<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3727" target="_blank" title="">baikal_27.jpg</a> (Size: 35,95 KB / Downloads: 289)
<!-- end: postbit_attachments_attachment --><br />
<br />
Como estamos sin https, nos dará un aviso de ssl ya que internamente no está activado.<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3728" target="_blank" title="">baikal_28.jpg</a> (Size: 48,46 KB / Downloads: 266)
<!-- end: postbit_attachments_attachment --><br />
<br />
la cuenta será verificada<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3729" target="_blank" title="">baikal_29.jpg</a> (Size: 36,55 KB / Downloads: 282)
<!-- end: postbit_attachments_attachment --><br />
<br />
Y luego ya estará agregada<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3730" target="_blank" title="">baikal_30.jpg</a> (Size: 29,01 KB / Downloads: 277)
<!-- end: postbit_attachments_attachment --><br />
<br />
Para hacer una comprobación rápida compruebo desde el gestor web que el "usuario" NO tiene contactos<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3731" target="_blank" title="">baikal_31.jpg</a> (Size: 29,02 KB / Downloads: 268)
<!-- end: postbit_attachments_attachment --><br />
<br />
Ahora desde el móvil agregamos uno<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3732" target="_blank" title="">baikal_32.jpg</a> (Size: 20,96 KB / Downloads: 263)
<!-- end: postbit_attachments_attachment --><br />
<br />
Y si vamos de nuevo al entorno web veremos que ha aumentado el número de contactos del usuario "usuario".<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3733" target="_blank" title="">baikal_33.jpg</a> (Size: 36,65 KB / Downloads: 276)
<!-- end: postbit_attachments_attachment --><br />
<br />
Para los calendarios es muy simular ya que hemos de ir al mismo menú de cuentas pero hay que agregar "Añadir cuenta CalDAV"<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3734" target="_blank" title="">baikal_34.jpg</a> (Size: 71,51 KB / Downloads: 270)
<!-- end: postbit_attachments_attachment --><br />
<br />
Introducimos los datos de dirección ("ip_nas:18080/dav.php" donde ip_nas es la ip privada de la nas) , usuario y clave<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3735" target="_blank" title="">baikal_36.jpg</a> (Size: 35,23 KB / Downloads: 283)
<!-- end: postbit_attachments_attachment --><br />
<br />
Nos da el aviso para que lo intente sin ssl.<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3736" target="_blank" title="">baikal_37.jpg</a> (Size: 49,6 KB / Downloads: 285)
<!-- end: postbit_attachments_attachment --><br />
<br />
Se hace la comprobación<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3737" target="_blank" title="">baikal_38.jpg</a> (Size: 34,02 KB / Downloads: 270)
<!-- end: postbit_attachments_attachment --><br />
<br />
Nos ha activado citas y recordatorios<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3738" target="_blank" title="">baikal_39.jpg</a> (Size: 22,17 KB / Downloads: 276)
<!-- end: postbit_attachments_attachment --><br />
<br />
Ahora ya vemos que ha sido agregada y podemos agregar citas desde iOS<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3739" target="_blank" title="">baikal_40.jpg</a> (Size: 34,6 KB / Downloads: 281)
<!-- end: postbit_attachments_attachment --><br />
<hr class="mycode_hr" />
6-<span style="text-decoration: underline;" class="mycode_u">Configuración de clientes en móvil Android</span><br />
<br />
Sorprendentemente Android NO integra de forma nativa los calendarios CalDAV y la libretas de direcciones CardDAV.<br />
<br />
Pero hay programas que si lo hacen como <a href="https://www.davx5.com" target="_blank" rel="noopener" class="mycode_url">DAVx5</a> (gracias pepebetis por recomendarlo <img src="https://www.qnapclub.es/images/smilies/wink.png" alt="Wink" title="Wink" class="smilie smilie_2" /> )  que permite sincronizar con cuentas de Google, Apple y otros CalDAV como Baikal.<br />
<br />
Tras instalarlo comienza su asistente, donde introduciremos la dirección, el nombre de usuario, la clave.<br />
<br />
Tendremos que dar permisos a la aplicación para que pueda acceder a calendarios y contactos.<br />
Un resumen de capturas se ve en la siguiente secuencia de imágenes<br />
<br />
 <!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3753" target="_blank" title="">davx5_.jpg</a> (Size: 213,71 KB / Downloads: 280)
<!-- end: postbit_attachments_attachment --><br />
<br />
(No he podido ponerlas por separado ya que el post tiene un límite de 50 imágenes)<br />
<br />
En la captura 12 se ve que nos aparece en la aplicación de contactos el de "pruebas" que es el que teníamos previamente en Baikal<br />
<hr class="mycode_hr" />
7-<span style="text-decoration: underline;" class="mycode_u">Configuración de clientes en Thunderbird</span><br />
<br />
<a href="https://www.thunderbird.net/es-ES/desktop" target="_blank" rel="noopener" class="mycode_url">Thunderbird </a>es un programa cliente de correo gratuito y en mi opinión uno de los mejores.<br />
Soporta muchos tipos de servidores de correo, calendarios y contactos. <br />
Además hay una infinidad de complementos que lo potencian.<br />
En las últimas versiones ya se incorpora de forma nativa la gestión de los estándares CalDAV y CardDAV.<br />
<br />
7.1-<span style="text-decoration: underline;" class="mycode_u">Agregando calendarios</span><br />
La pantalla principal donde podemos ver los calendarios es la siguiente:<br />
En el ejemplo vemos uno local llamado Casa<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3740" target="_blank" title="">baikal_41.jpg</a> (Size: 66,56 KB / Downloads: 275)
<!-- end: postbit_attachments_attachment --><br />
<br />
Para agregar uno nuevo pulsamos en la parte inferior izquierda en "Nuevo calendario"<br />
<br />
Se nos abre un asistente donde primero elegimos un calendario "En la red"<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3741" target="_blank" title="">baikal_42.jpg</a> (Size: 17,36 KB / Downloads: 275)
<!-- end: postbit_attachments_attachment --><br />
<br />
Después rellenamos con los datos del nombre del usuario y la dirección de calendario ( en este caso interna de nuestra red)<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3742" target="_blank" title="">baikal_43.jpg</a> (Size: 26,86 KB / Downloads: 279)
<!-- end: postbit_attachments_attachment --><br />
<br />
Después nos pedirá la contraseña de las anteriores credenciales<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3743" target="_blank" title="">baikal_44.jpg</a> (Size: 22,89 KB / Downloads: 284)
<!-- end: postbit_attachments_attachment --><br />
<br />
Tras aceptar nos presentará todos los calendarios del usuario "usuario".<br />
Lo normal es incorporar todos, pero podemos elegir los que nos interesen.<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3744" target="_blank" title="">baikal_45.jpg</a> (Size: 25,46 KB / Downloads: 262)
<!-- end: postbit_attachments_attachment --><br />
<br />
Después ya podemos ver que en la lista de calendarios ya tenemos disponibles los que hemos agregados<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3745" target="_blank" title="">baikal_46.jpg</a> (Size: 77,5 KB / Downloads: 275)
<!-- end: postbit_attachments_attachment --><br />
<br />
7.2 <span style="text-decoration: underline;" class="mycode_u">Agregando la agenda de contactos</span><br />
<br />
El proceso es similar al de los calendarios.<br />
La pantalla de gestión de contactos y agendas es la siguiente:<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3746" target="_blank" title="">baikal_47.jpg</a> (Size: 44,8 KB / Downloads: 274)
<!-- end: postbit_attachments_attachment --><br />
<br />
Pulsamos en el botón de agregar agenda y se no presenta un desplegable de tipo. <br />
Elegimos "Añadir libreta de direcciones CardDAV"<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3747" target="_blank" title="">baikal_48.jpg</a> (Size: 31,61 KB / Downloads: 257)
<!-- end: postbit_attachments_attachment --><br />
<br />
Después empieza el asistente con la siguiente ventana, donde escribimos el nombre del usuario de la cuenta y la dirección de servidor Baikal<br />
En este caso al ser local es <a href="http://ip_nas:18080/dav.php" target="_blank" rel="noopener" class="mycode_url">http://ip_nas:18080/dav.php</a><br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3748" target="_blank" title="">baikal_49.jpg</a> (Size: 19,43 KB / Downloads: 277)
<!-- end: postbit_attachments_attachment --><br />
<br />
Luego nos pide la clave del usuario "usuario"<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3749" target="_blank" title="">baikal_50.jpg</a> (Size: 26,03 KB / Downloads: 270)
<!-- end: postbit_attachments_attachment --><br />
<br />
A continuación se nos presenta una ventana para que seleccionemos las libretas disponibles en esa cuenta.<br />
En nuestro caso sólo hay una.<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3750" target="_blank" title="">baikal_51.jpg</a> (Size: 21,04 KB / Downloads: 275)
<!-- end: postbit_attachments_attachment --><br />
<br />
Tras pulsar el botón de continuar ya veremos que hay una nueva libreta de direcciones llamada "Default Address Book".<br />
Evidentemente podemos darle otro nombre, haciendo clic con el botón secundario, propiedades y escribir el nuevo nombre.<br />
<br />
Tras la adicción ya vemos la nueva agenda y el único contacto de pruebas que creamos anteriormente.<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3752" target="_blank" title="">baikal_52.jpg</a> (Size: 29,96 KB / Downloads: 269)
<!-- end: postbit_attachments_attachment --><br />
<br />
<hr class="mycode_hr" />
En este post he detallado algo mas lo de los programa clientes de iOS, Android y Thunderbird.<br />
<br />
Thunderbird al ser un programa de los mas estándar, nos permite hacer de conversor/intermediario de otros calendarios ya que con un copia pega podemos hacerlo entre calendarios/contactos.<br />
<br />
Mi recomendación si tenéis un historial importante en otros servidores es que:<br />
-exportéis en formato ICS desde el servidor origen<br />
-importéis en un nuevo calendario local temporal de Thunderbird<br />
-copiéis de ese calendario local al calendario de red (Baikal CalDAV en nuestro caso)]]></description>
			<content:encoded><![CDATA[Hola<br />
<br />
En este post vamos a ver como desplegar un docker de <a href="https://sabre.io/baikal" target="_blank" rel="noopener" class="mycode_url">Baikal</a>.<br />
Baikal es una aplicación web que permite a varios usuarios alojar sus citas e calendarios y sus contactos no dependiendo de servidores de terceros.<br />
<br />
No es una aplicación pesada ya que en realidad en ella sólo se gestionan los datos que envíen los equipos clientes y hay una pequeña gestión web para crear usuarios.<br />
<br />
Se que hay un qpkg para la aplicación en <a href="https://www.myqnap.org/product/baikal-apache84" target="_blank" rel="noopener" class="mycode_url">MyQnap.org</a> , pero pide tiene una dependencia de Apache84. Y ese Apache84 es un paquete de pago de 16€. <br />
<br />
En nuestro caso no tenemos esa dependencia y el costo es 0€  <img src="https://www.qnapclub.es/images/smilies/wink.png" alt="Wink" title="Wink" class="smilie smilie_2" /> <br />
<br />
Requisitos:<br />
1-tener instalado Container Station para poder lanzar dockers<br />
2-tener instalada y activa una BBDD MariaDB o MySQL.<br />
3-tener una carpeta compartida o subcarpeta dentro de una compartida para dejar datos de forma persistente<br />
3-tener acceso a la consola de comandos de la NAS.<br />
<br />
Requisitos recomendables:<br />
1-tener una dns publica para acceder a la nas desde el exterior.<br />
2-tener un dominio para gestionar nuestros dns. Los hay baratos sobre los 12€ al año (si vas a adquirir revisa las renovaciones)<br />
3-usar un proxy inverso tipo <a href="https://www.qnapclub.es/showthread.php?tid=4781" target="_blank" rel="noopener" class="mycode_url">nginx</a> para aportar un certificado http y un extra de seguridad<br />
4-tener <a href="https://www.qnapclub.es/showthread.php?tid=3881" target="_blank" rel="noopener" class="mycode_url">Cloudflare web</a> como gestor de nuestros dns, para ocultar nuestra ip pública real<br />
<br />
Para el punto 1, es importante no estar bajo CGNAT, ya que no podríamos acceder desde el exterior haca nuestra nas.<br />
Para el punto 2, he preferido usar nginx proxy manager, pero podemos usar traefik o bien el integrado en la nas.<br />
<br />
Los datos que generemos van a estar repartidos en dos ubicaciones:<br />
-la base de datos de MariaDB<br />
-la carpeta persistente<br />
<br />
Lo indico ya que deberemos hacer copia de seguridad de ambos contenidos.<br />
Siempre debemos tener copias de seguridad de nuestros datos, que luego vienen los sustos  <img src="https://www.qnapclub.es/images/smilies/wink.png" alt="Wink" title="Wink" class="smilie smilie_2" /> <br />
<br />
<hr class="mycode_hr" />
Indice<br />
<br />
1-Creación de la base de datos y un usuario en MariaDB<br />
2-Creación y despliegue del docker<br />
3-Accesos web y creación de usuarios en Baikal<br />
4-Accesos desde el exterior<br />
5-Configuración de clientes en móvil IOs<br />
6-Configuración de clientes en móvil Android<br />
7-Configuración de clientes en Thunderbird<br />
<br />
<br />
<hr class="mycode_hr" />
<br />
<span style="text-decoration: underline;" class="mycode_u">1-Creación de la base de datos y el usuario en MariaDB</span><br />
<br />
Estoy dando por supuesto que ya tenemos instalada y activa la aplicación MariaDB en nuestra nas. Pero podríamos tenerla en otra máquina distinta.<br />
<br />
Para este ejemplo usaré MariaDB10<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3702" target="_blank" title="">baikal_1.jpg</a> (Size: 44,65 KB / Downloads: 290)
<!-- end: postbit_attachments_attachment --><br />
<br />
En este caso el puerto que se usa es el 3307, pero puede ser otro.<br />
<br />
Se puede hacer la gestión de MariaDB enteramente por consola ssh, pero es mas gráfico y comprensible si lo hacemos por entorno gráfico.<br />
Para ello usaremos la aplicación PhpMyAdmin instalabre desde nuestro App Center.<br />
<br />
En su momento ya se describió en este otro post de <a href="https://www.qnapclub.es/showthread.php?tid=5354" target="_blank" rel="noopener" class="mycode_url">creación de una BBDD en MariaDB usando PhpMyAdmin</a><br />
<br />
<br />
Para este caso vamos a crear una base de datos bacía de nombre "baikal_db" y un usuario "baikal" con permisos en esa base de datos desde cualquier host (%). <br />
La clave será una de nuestra elección. Apuntad estos tres datos ya que posteriormente hemos de usarlos.<br />
<br />
Pongo unas capturas del proceso<br />
<br />
Nos logueamos en <br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3703" target="_blank" title="">baikal_2.jpg</a> (Size: 25,13 KB / Downloads: 262)
<!-- end: postbit_attachments_attachment --><br />
<br />
En la pantalla principal, pulso sobre el botón de agregar una nueva base de datos<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3704" target="_blank" title="">baikal_3.jpg</a> (Size: 62,14 KB / Downloads: 273)
<!-- end: postbit_attachments_attachment --><br />
<br />
Le doy nombre y la creo. En este caso "baikal_db"<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3705" target="_blank" title="">baikal_4.jpg</a> (Size: 48,08 KB / Downloads: 287)
<!-- end: postbit_attachments_attachment --><br />
<br />
Me aparecerá en la lista de la izquierda<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3706" target="_blank" title="">baikal_5.jpg</a> (Size: 29,17 KB / Downloads: 282)
<!-- end: postbit_attachments_attachment --><br />
<br />
Ahora crearemos un usuario para esa base de datos de nombre "baikal" y contraseña "clave_de_baikal"<br />
Para ello selecciono la base de datos de "baikal_db" de la izquierda y después selecciono la lengüeta de privilegios.<br />
En la parte inferior de la pantalla está la opción de "Agregar cuenta de usuario"<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3707" target="_blank" title="">baikal_6.jpg</a> (Size: 114,9 KB / Downloads: 307)
<!-- end: postbit_attachments_attachment --><br />
<br />
Asignamos nombre, clave y permisos<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3708" target="_blank" title="">baikal_7.jpg</a> (Size: 83,56 KB / Downloads: 273)
<!-- end: postbit_attachments_attachment --><br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3709" target="_blank" title="">baikal_8.jpg</a> (Size: 90,01 KB / Downloads: 285)
<!-- end: postbit_attachments_attachment --><br />
<br />
Pulsamos luego sobre continuar y ya tenemos nuestro usuario con los permisos adecuados.<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3710" target="_blank" title="">baikal_9.jpg</a> (Size: 20,16 KB / Downloads: 278)
<!-- end: postbit_attachments_attachment --><br />
<br />
Ya podemos cerrar PhpMyAdmin.<br />
<hr class="mycode_hr" />
<br />
<span style="text-decoration: underline;" class="mycode_u">2-Creación y despliegue del docker</span><br />
<br />
Aquí usaremos la consola de ssh para lanzar el siguiente comando de creación del docker<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>docker run -d --name baikal --restart unless-stopped -p 18080:80 -v /share/DockerData/baikal/data:/var/www/baikal/Specific -v /share/DockerData/baikal/config:/var/www/baikal/config ckulka/baikal:nginx</code></div></div><br />
El comando usa dos carpetas persistentes que están apuntando a un carpeta compartida de nuestra nas. En el ejemplo la carpeta compartida es "DockerData".<br />
En su interior de forma automática se creará la carpeta "baikal" y dentro de ellas las de "data" y "config"<br />
<br />
He puesto como puerto de publicación el 18080, pero puede ser cualquiera de nuestra elección que no esté por otros servicios.<br />
<br />
En la consola veremos la descarga, descompresión e instalación del docker<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3711" target="_blank" title="">baikal_10.jpg</a> (Size: 41,48 KB / Downloads: 274)
<!-- end: postbit_attachments_attachment --><br />
<br />
Tras este proceso veremos una pantalla similar a la siguiente<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3712" target="_blank" title="">baikal_11.jpg</a> (Size: 46,1 KB / Downloads: 269)
<!-- end: postbit_attachments_attachment --><br />
<br />
Y con esto hemos acabado de instalar el contenedor.<br />
<hr class="mycode_hr" />
<span style="text-decoration: underline;" class="mycode_u">3-Accesos web y creación de usuarios en Baikal</span><br />
<br />
Si lo hemos hecho bien, abrimos un navegador y si vamos a <a href="http://ip_nas:18080" target="_blank" rel="noopener" class="mycode_url">http://ip_nas:18080</a> veremos el asistente de la primera configuración:<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3713" target="_blank" title="">baikal_12.jpg</a> (Size: 48,14 KB / Downloads: 297)
<!-- end: postbit_attachments_attachment --><br />
<br />
Vamos rellenando los datos y los adaptamos a nuestra instalación.<br />
Pondremos una clave de usuario administrador que debemos apuntar ya que la usaremos para crear mas usuarios de Baikal en un futuro.<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3714" target="_blank" title="">baikal_13.jpg</a> (Size: 31,14 KB / Downloads: 289)
<!-- end: postbit_attachments_attachment --><br />
<br />
Ahora pasamos a la base de datos, que por defecto usa sqlite.<br />
La cambiamos a Mysql y rellenamos con los datos que pusimos en MariaDB.<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3716" target="_blank" title="">baikal_15.jpg</a> (Size: 43,07 KB / Downloads: 281)
<!-- end: postbit_attachments_attachment --><br />
<br />
El motivo de usar MariaDB frente a sqlite, es que su motor es mas ágil si tenemos volúmenes importantes de datos y permite una mejro gestión de copias de seguridad.<br />
<br />
Una vez acabado el asistente, este no vuelve a estar disponible.<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3715" target="_blank" title="">baikal_14.jpg</a> (Size: 41,38 KB / Downloads: 285)
<!-- end: postbit_attachments_attachment --><br />
<br />
Una vez salgamos del asistente y nos identifiquemos en la web, veremos siguiente dashboard:<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3717" target="_blank" title="">baikal_16.jpg</a> (Size: 78,6 KB / Downloads: 275)
<!-- end: postbit_attachments_attachment --><br />
<br />
En el menú superior elegimos usuarios y recursos para agregar una nuevo<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3718" target="_blank" title="">baikal_17.jpg</a> (Size: 40,28 KB / Downloads: 270)
<!-- end: postbit_attachments_attachment --><br />
<br />
Para el ejemplo creo al usuario "usuario" con su clave.<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3719" target="_blank" title="">baikal_18.jpg</a> (Size: 32,3 KB / Downloads: 284)
<!-- end: postbit_attachments_attachment --><br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3720" target="_blank" title="">baikal_19.jpg</a> (Size: 25,09 KB / Downloads: 261)
<!-- end: postbit_attachments_attachment --><br />
<br />
Por defecto se han creado un calendario pro defecto y una agenda de direcciones por defecto.<br />
<br />
Podremos crear nuevas desde los equipos clientes o bien crearlas desde la web<br />
<br />
Para crear un calendario de "viajes" lo haríamos de la siguiente forma:<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3721" target="_blank" title="">baikal_21.jpg</a> (Size: 35,58 KB / Downloads: 270)
<!-- end: postbit_attachments_attachment --><br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3722" target="_blank" title="">baikal_22.jpg</a> (Size: 40,18 KB / Downloads: 274)
<!-- end: postbit_attachments_attachment --><br />
<br />
En el campo tokenID puedo poner cualquier cadena única en minúsculas. <br />
Para no complicarlo uso el nombre del calendario en minúsculas. Una vez creado NO puede ser modificado<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3723" target="_blank" title="">baikal_23.jpg</a> (Size: 32,16 KB / Downloads: 264)
<!-- end: postbit_attachments_attachment --><br />
<br />
He activado el uso de notas en las citas.<br />
<br />
Y una vez creado, lo veremos en la lista<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3724" target="_blank" title="">baikal_24.jpg</a> (Size: 37,53 KB / Downloads: 261)
<!-- end: postbit_attachments_attachment --><br />
<br />
Podemos operar de forma similar con la agenda de contactos.<br />
Lo normal para todos es tener una única agenda de contactos, pero puede haber usuarios que quieran tener mas de una.<br />
Por ejemplo para tener una personal y una laboral.<br />
<br />
Con esto ya hemos acabado con la gestión de usuarios y ya tenemos operativo nuestro servidor caldav y cardav.<br />
<br />
<hr class="mycode_hr" />
4-<span style="text-decoration: underline;" class="mycode_u">Accesos desde el exterior</span><br />
<br />
Ahora mismo nuestro servidor sólo es accesible si estamos en la misma red que la nas.<br />
<br />
Si no tenemos un dominio propio podemos acceder a Baikal mediante una VPN (<a href="https://www.qnapclub.es/showthread.php?tid=4295" target="_blank" rel="noopener" class="mycode_url">Wireguard</a> u <a href="https://www.qnapclub.es/showthread.php?tid=2095" target="_blank" rel="noopener" class="mycode_url">OpenVPN</a>)<br />
Es decir podríamos acceder al servidor Baikal como si estuviésemos en la red de la nas.<br />
<br />
Si tenemos un dominio personal y tenemos nuestra gestión de dns. Podemos definir una nueva que apunte a nuestra ip publica.<br />
Y para agregar una capa de seguridad debemos usar un proxy inverso (<a href="https://www.qnapclub.es/showthread.php?tid=4781" target="_blank" rel="noopener" class="mycode_url">Nginx</a>, <a href="https://www.qnapclub.es/showthread.php?tid=3601" target="_blank" rel="noopener" class="mycode_url">Traefik</a>, <a href="https://www.qnap.com/es-es/how-to/tutorial/article/cómo-usar-proxy-inverso-para-mejorar-las-conexiones-remotas-seguras" target="_blank" rel="noopener" class="mycode_url">el de QTS</a>)  que nos aporta el certificado<br />
<br />
En función de que usemos o no los accesos desde el exterior, tendremos las siguientes direcciones para acceder a los calendarios y agendas.<br />
<br />
Aquí tenemos las del primer calendario que es el de defecto.<br />
<a href="http://ip_nuestra_nas:18080/dav.php/calendars/usuario/default/" target="_blank" rel="noopener" class="mycode_url">http://ip_nuestra_nas:18080/dav.php/cale...o/default/</a><br />
<a href="https://baikal.mi_dominio.eus/dav.php/calendars/usuario/default/" target="_blank" rel="noopener" class="mycode_url">https://baikal.mi_dominio.eus/dav.php/ca...o/default/</a><br />
<br />
Las direcciones del calendario de viajes son:<br />
<a href="http://ip_nuestra_nas:18080/dav.php/calendars/usuario/viajes/" target="_blank" rel="noopener" class="mycode_url">http://ip_nuestra_nas:18080/dav.php/cale...io/viajes/</a><br />
<a href="https://baikal.mi_dominio.eus/dav.php/calendars/usuario/viajes/" target="_blank" rel="noopener" class="mycode_url">https://baikal.mi_dominio.eus/dav.php/ca...io/viajes/</a><br />
<br />
Las direcciones de la agenda de defecto son:<br />
<a href="http://ip_nuestra_nas:18080/dav.php/addressbooks/usuario/default/" target="_blank" rel="noopener" class="mycode_url">http://ip_nuestra_nas:18080/dav.php/addr...o/default/</a><br />
<a href="http://baikal.mi_dominio.eus/dav.php/addressbooks/usuario/default/" target="_blank" rel="noopener" class="mycode_url">http://baikal.mi_dominio.eus/dav.php/add...o/default/</a><br />
<br />
y como credenciales usaremos "usuario" y la clave que definimos anteriormente.<br />
<br />
Cuando lo configuremos en clientes de correo podemos usar las genéricas:<br />
<a href="http://ip_nuestra_nas:18080/dav.php/addressbookst" target="_blank" rel="noopener" class="mycode_url">http://ip_nuestra_nas:18080/dav.php/addressbookst</a><br />
<a href="http://baikal.mi_dominio.eus/dav.php/addressbooks" target="_blank" rel="noopener" class="mycode_url">http://baikal.mi_dominio.eus/dav.php/addressbooks</a><br />
<br />
<a href="http://ip_nuestra_nas:18080/dav.php/calendars" target="_blank" rel="noopener" class="mycode_url">http://ip_nuestra_nas:18080/dav.php/calendars</a><br />
<a href="https://baikal.mi_dominio.eus/dav.php/calendars" target="_blank" rel="noopener" class="mycode_url">https://baikal.mi_dominio.eus/dav.php/calendars</a><br />
<br />
En esto últimos casos, la aplicación cliente nos mostrará y permitirá seleccionar que calendarios o agendas queremos agregar.<br />
<br />
<br />
<hr class="mycode_hr" />
<br />
5-<span style="text-decoration: underline;" class="mycode_u">Configuración de clientes en móvil IOs</span><br />
<br />
Para agregar los calendarios o agendas en iOS iremos a Ajustes y buscaremos "cuentas" o "cuentas de Mail" en función de la versión de iOS.<br />
<br />
Pulsamos añadir cuentas y seleccionamos de la lista la inferior "otras".<br />
<br />
De ahí seleccionamos "Añadir cuenta CardDav"<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3726" target="_blank" title="">baikal_26.jpg</a> (Size: 111,24 KB / Downloads: 267)
<!-- end: postbit_attachments_attachment --><br />
<br />
Rellenamos los datos del usuario y su clave. En la dirección del servidor pondremos<br />
"ip_nas:18080/dav.php" donde ip_nas es la ip privada de la nas<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3727" target="_blank" title="">baikal_27.jpg</a> (Size: 35,95 KB / Downloads: 289)
<!-- end: postbit_attachments_attachment --><br />
<br />
Como estamos sin https, nos dará un aviso de ssl ya que internamente no está activado.<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3728" target="_blank" title="">baikal_28.jpg</a> (Size: 48,46 KB / Downloads: 266)
<!-- end: postbit_attachments_attachment --><br />
<br />
la cuenta será verificada<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3729" target="_blank" title="">baikal_29.jpg</a> (Size: 36,55 KB / Downloads: 282)
<!-- end: postbit_attachments_attachment --><br />
<br />
Y luego ya estará agregada<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3730" target="_blank" title="">baikal_30.jpg</a> (Size: 29,01 KB / Downloads: 277)
<!-- end: postbit_attachments_attachment --><br />
<br />
Para hacer una comprobación rápida compruebo desde el gestor web que el "usuario" NO tiene contactos<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3731" target="_blank" title="">baikal_31.jpg</a> (Size: 29,02 KB / Downloads: 268)
<!-- end: postbit_attachments_attachment --><br />
<br />
Ahora desde el móvil agregamos uno<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3732" target="_blank" title="">baikal_32.jpg</a> (Size: 20,96 KB / Downloads: 263)
<!-- end: postbit_attachments_attachment --><br />
<br />
Y si vamos de nuevo al entorno web veremos que ha aumentado el número de contactos del usuario "usuario".<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3733" target="_blank" title="">baikal_33.jpg</a> (Size: 36,65 KB / Downloads: 276)
<!-- end: postbit_attachments_attachment --><br />
<br />
Para los calendarios es muy simular ya que hemos de ir al mismo menú de cuentas pero hay que agregar "Añadir cuenta CalDAV"<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3734" target="_blank" title="">baikal_34.jpg</a> (Size: 71,51 KB / Downloads: 270)
<!-- end: postbit_attachments_attachment --><br />
<br />
Introducimos los datos de dirección ("ip_nas:18080/dav.php" donde ip_nas es la ip privada de la nas) , usuario y clave<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3735" target="_blank" title="">baikal_36.jpg</a> (Size: 35,23 KB / Downloads: 283)
<!-- end: postbit_attachments_attachment --><br />
<br />
Nos da el aviso para que lo intente sin ssl.<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3736" target="_blank" title="">baikal_37.jpg</a> (Size: 49,6 KB / Downloads: 285)
<!-- end: postbit_attachments_attachment --><br />
<br />
Se hace la comprobación<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3737" target="_blank" title="">baikal_38.jpg</a> (Size: 34,02 KB / Downloads: 270)
<!-- end: postbit_attachments_attachment --><br />
<br />
Nos ha activado citas y recordatorios<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3738" target="_blank" title="">baikal_39.jpg</a> (Size: 22,17 KB / Downloads: 276)
<!-- end: postbit_attachments_attachment --><br />
<br />
Ahora ya vemos que ha sido agregada y podemos agregar citas desde iOS<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3739" target="_blank" title="">baikal_40.jpg</a> (Size: 34,6 KB / Downloads: 281)
<!-- end: postbit_attachments_attachment --><br />
<hr class="mycode_hr" />
6-<span style="text-decoration: underline;" class="mycode_u">Configuración de clientes en móvil Android</span><br />
<br />
Sorprendentemente Android NO integra de forma nativa los calendarios CalDAV y la libretas de direcciones CardDAV.<br />
<br />
Pero hay programas que si lo hacen como <a href="https://www.davx5.com" target="_blank" rel="noopener" class="mycode_url">DAVx5</a> (gracias pepebetis por recomendarlo <img src="https://www.qnapclub.es/images/smilies/wink.png" alt="Wink" title="Wink" class="smilie smilie_2" /> )  que permite sincronizar con cuentas de Google, Apple y otros CalDAV como Baikal.<br />
<br />
Tras instalarlo comienza su asistente, donde introduciremos la dirección, el nombre de usuario, la clave.<br />
<br />
Tendremos que dar permisos a la aplicación para que pueda acceder a calendarios y contactos.<br />
Un resumen de capturas se ve en la siguiente secuencia de imágenes<br />
<br />
 <!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3753" target="_blank" title="">davx5_.jpg</a> (Size: 213,71 KB / Downloads: 280)
<!-- end: postbit_attachments_attachment --><br />
<br />
(No he podido ponerlas por separado ya que el post tiene un límite de 50 imágenes)<br />
<br />
En la captura 12 se ve que nos aparece en la aplicación de contactos el de "pruebas" que es el que teníamos previamente en Baikal<br />
<hr class="mycode_hr" />
7-<span style="text-decoration: underline;" class="mycode_u">Configuración de clientes en Thunderbird</span><br />
<br />
<a href="https://www.thunderbird.net/es-ES/desktop" target="_blank" rel="noopener" class="mycode_url">Thunderbird </a>es un programa cliente de correo gratuito y en mi opinión uno de los mejores.<br />
Soporta muchos tipos de servidores de correo, calendarios y contactos. <br />
Además hay una infinidad de complementos que lo potencian.<br />
En las últimas versiones ya se incorpora de forma nativa la gestión de los estándares CalDAV y CardDAV.<br />
<br />
7.1-<span style="text-decoration: underline;" class="mycode_u">Agregando calendarios</span><br />
La pantalla principal donde podemos ver los calendarios es la siguiente:<br />
En el ejemplo vemos uno local llamado Casa<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3740" target="_blank" title="">baikal_41.jpg</a> (Size: 66,56 KB / Downloads: 275)
<!-- end: postbit_attachments_attachment --><br />
<br />
Para agregar uno nuevo pulsamos en la parte inferior izquierda en "Nuevo calendario"<br />
<br />
Se nos abre un asistente donde primero elegimos un calendario "En la red"<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3741" target="_blank" title="">baikal_42.jpg</a> (Size: 17,36 KB / Downloads: 275)
<!-- end: postbit_attachments_attachment --><br />
<br />
Después rellenamos con los datos del nombre del usuario y la dirección de calendario ( en este caso interna de nuestra red)<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3742" target="_blank" title="">baikal_43.jpg</a> (Size: 26,86 KB / Downloads: 279)
<!-- end: postbit_attachments_attachment --><br />
<br />
Después nos pedirá la contraseña de las anteriores credenciales<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3743" target="_blank" title="">baikal_44.jpg</a> (Size: 22,89 KB / Downloads: 284)
<!-- end: postbit_attachments_attachment --><br />
<br />
Tras aceptar nos presentará todos los calendarios del usuario "usuario".<br />
Lo normal es incorporar todos, pero podemos elegir los que nos interesen.<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3744" target="_blank" title="">baikal_45.jpg</a> (Size: 25,46 KB / Downloads: 262)
<!-- end: postbit_attachments_attachment --><br />
<br />
Después ya podemos ver que en la lista de calendarios ya tenemos disponibles los que hemos agregados<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3745" target="_blank" title="">baikal_46.jpg</a> (Size: 77,5 KB / Downloads: 275)
<!-- end: postbit_attachments_attachment --><br />
<br />
7.2 <span style="text-decoration: underline;" class="mycode_u">Agregando la agenda de contactos</span><br />
<br />
El proceso es similar al de los calendarios.<br />
La pantalla de gestión de contactos y agendas es la siguiente:<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3746" target="_blank" title="">baikal_47.jpg</a> (Size: 44,8 KB / Downloads: 274)
<!-- end: postbit_attachments_attachment --><br />
<br />
Pulsamos en el botón de agregar agenda y se no presenta un desplegable de tipo. <br />
Elegimos "Añadir libreta de direcciones CardDAV"<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3747" target="_blank" title="">baikal_48.jpg</a> (Size: 31,61 KB / Downloads: 257)
<!-- end: postbit_attachments_attachment --><br />
<br />
Después empieza el asistente con la siguiente ventana, donde escribimos el nombre del usuario de la cuenta y la dirección de servidor Baikal<br />
En este caso al ser local es <a href="http://ip_nas:18080/dav.php" target="_blank" rel="noopener" class="mycode_url">http://ip_nas:18080/dav.php</a><br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3748" target="_blank" title="">baikal_49.jpg</a> (Size: 19,43 KB / Downloads: 277)
<!-- end: postbit_attachments_attachment --><br />
<br />
Luego nos pide la clave del usuario "usuario"<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3749" target="_blank" title="">baikal_50.jpg</a> (Size: 26,03 KB / Downloads: 270)
<!-- end: postbit_attachments_attachment --><br />
<br />
A continuación se nos presenta una ventana para que seleccionemos las libretas disponibles en esa cuenta.<br />
En nuestro caso sólo hay una.<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3750" target="_blank" title="">baikal_51.jpg</a> (Size: 21,04 KB / Downloads: 275)
<!-- end: postbit_attachments_attachment --><br />
<br />
Tras pulsar el botón de continuar ya veremos que hay una nueva libreta de direcciones llamada "Default Address Book".<br />
Evidentemente podemos darle otro nombre, haciendo clic con el botón secundario, propiedades y escribir el nuevo nombre.<br />
<br />
Tras la adicción ya vemos la nueva agenda y el único contacto de pruebas que creamos anteriormente.<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3752" target="_blank" title="">baikal_52.jpg</a> (Size: 29,96 KB / Downloads: 269)
<!-- end: postbit_attachments_attachment --><br />
<br />
<hr class="mycode_hr" />
En este post he detallado algo mas lo de los programa clientes de iOS, Android y Thunderbird.<br />
<br />
Thunderbird al ser un programa de los mas estándar, nos permite hacer de conversor/intermediario de otros calendarios ya que con un copia pega podemos hacerlo entre calendarios/contactos.<br />
<br />
Mi recomendación si tenéis un historial importante en otros servidores es que:<br />
-exportéis en formato ICS desde el servidor origen<br />
-importéis en un nuevo calendario local temporal de Thunderbird<br />
-copiéis de ese calendario local al calendario de red (Baikal CalDAV en nuestro caso)]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Backrest copia seguridad dockers]]></title>
			<link>https://www.qnapclub.es/showthread.php?tid=5653</link>
			<pubDate>Sun, 10 Aug 2025 22:06:32 +0200</pubDate>
			<dc:creator><![CDATA[<a href="https://www.qnapclub.es/member.php?action=profile&uid=3592">yeraycito</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.qnapclub.es/showthread.php?tid=5653</guid>
			<description><![CDATA[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.<br />
<br />
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.<br />
<br />
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.<br />
<br />
El compose para su instalación a través de Container Station o Portainer es el siguiente:<br />
<br />
<br />
services:<br />
    backrest:<br />
        image: garethgeorge/backrest:latest<br />
        container_name: backrest<br />
        volumes:<br />
           - /path/to/backrest/data:/data<br />
           - /path/to/backrest/config:/config<br />
           - /path/to/backrest/cache:/cache<br />
           - /path/to/backrest/tmp:/tmp<br />
           - /path/to/backup/data:/userdata<br />
           - /path/to/local/repos:/repos<br />
           - /var/run/docker.sock:/var/run/docker.sock:ro<br />
       environment:<br />
           - BACKREST_DATA=/data<br />
           - BACKREST_CONFIG=/config/config.json<br />
           - XDG_CACHE_HOME=/cache<br />
           - TMPDIR=/tmp<br />
           - TZ=Europe/Madrid<br />
       ports:<br />
           - 9898:9898<br />
       restart: always<br />
<br />
<br />
A tener en cuenta:<br />
<br />
 - 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.<br />
<br />
 - 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 <br />
   esas configuraciones están por separado en otros directorios podemos mapear la carpeta compartida superior.<br />
<br />
 - 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 <br />
   carpeta puede ser del propio nas o de otro dispositivo de la red local que tengamos mapeado.<br />
<br />
Adicionálmente a través de la interfaz de Backrest podemos configurar distintos servicios en la nube como destinos de esas copias de seguridad:<br />
<br />
 - Backblaze B2: b2:bucket or b2:bucket/prefix<br />
<br />
- AWS S3: s3:bucket or s3:bucket/prefix<br />
<br />
- Google Cloud: gs:bucket:/ or gs:bucket:/prefix<br />
<br />
- SFTP: sftp:user@host:/path/to/repo<br />
<br />
- Rclone: rclone:remote:path (requires rclone installation)<br />
<br />
<br />
Instalado el compose de Backrest en el nas accedemos a su interfaz mediante el navegador a través de    <a href="http://iplocaldelnas:9898" target="_blank" rel="noopener" class="mycode_url">http://iplocaldelnas:9898</a><br />
<br />
Por defecto Backrest no requiere de usuario - contraseña para acceder a su interfaz así que al hacerlo nos propone su creación voluntaria:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3661" target="_blank" title="">1.png</a> (Size: 88,65 KB / Downloads: 372)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
El funcionamiento principal de Backrest se basa en dos premisas:<br />
<br />
 - 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<br />
<br />
 - Creación de Planes de copia de seguridad.<br />
<br />
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.<br />
<br />
Lo primero que tenemos que hacer a través de la interfaz de Backrest es añadir un nuevo Repo<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3675" target="_blank" title="">30.png</a> (Size: 213,7 KB / Downloads: 330)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
 - Le ponemos el nombre que nos apetezca<br />
<br />
 - 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<br />
<br />
 - Las copias de seguridad que se generen están encriptadas de ahí que se nos pida una contraseña.<br />
<br />
 - Los apartados con flechas verdes Prune Policy - Check Policy se pueden dejar tal cual sabiendo que han referencia a esto:<br />
<br />
          Política de limpieza: Programación para la limpieza de datos sin referencias<br />
<br />
          Política de comprobación: Programación para la verificación de la integridad de las copias de seguridad<br />
<br />
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.<br />
<br />
Configurado todo guardamos los cambios.<br />
<br />
<br />
Puesto en funcionamiento nuestro primer Repo pasamos a la segunda parte consistente en añadir un Plan asociado a ese Repo creado:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3676" target="_blank" title="">31.png</a> (Size: 172,31 KB / Downloads: 337)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
 - Le ponemos el nombre que nos apetezca.<br />
<br />
 - Seleccionamos el Repo creado anteriórmente.<br />
<br />
 - Similar al caso anterior, en el compose pusimos la ruta donde tenemos guardadas las configuraciones de los dockers que tengamos con el parámetro<br />
    /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 <br />
    este caso, la carpeta de configuración de Homarr.<br />
<br />
 - 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.<br />
<br />
<br />
 El apartado marcado con flecha azul ( Hooks ) merece una atención especial:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3664" target="_blank" title="">5.png</a> (Size: 104,47 KB / Downloads: 363)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Como se puede ver tenemos varias opciones para elegir, de todas ellas escogemos Command<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3665" target="_blank" title="">6.png</a> (Size: 118,64 KB / Downloads: 353)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
 - CONDITION_SNAPSHOT_START nos aparece si clickamos en un desplegable y hace referencia al inicio de la copia de seguridad<br />
<br />
 - docker stop homarr lo escribimos a mano y da la orden de detener el contenedor Homarr ANTES de hacer la copia de seguridad<br />
<br />
 - ON_ERROR_FATAL también aparece en un desplegable y obliga a detener la copia si ocurre un error grave.<br />
<br />
<br />
En el sitio donde estamos añadimos un segundo Hook junto al anterior:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3666" target="_blank" title="">7.png</a> (Size: 115,1 KB / Downloads: 352)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
 - CONDITION_SNAPSHOT_END hacer referencia a la finalización de la copia de seguridad por parte de Backrest de ese contenedor Homarr<br />
<br />
 - docker start homarr arranca el contenedor después de finalizada la copia<br />
<br />
 - ON_ERROR_FATAL impide lo anterior si hay un error grave<br />
<br />
<br />
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.<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3667" target="_blank" title="">8.png</a> (Size: 152,79 KB / Downloads: 343)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
 - Las dos condiciones que se ven son las mismas de antes y hacen referencia al inicio - finalización de la copia de seguridad<br />
<br />
 - Las notificaciones anteriores mediante un bot de Telegram a través de Shoutrrr tienen que estar configuradas en el siguiente formato:<br />
<br />
telegram://XXXXX@telegram?chats=YYYYYYYYYY<br />
<br />
Las XXXX se corresponden al token del bot<br />
<br />
Las YYYYYYY se corresponden al Chat ID<br />
<br />
<br />
<br />
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.<br />
<br />
En este punto primigenio la interfaz de Backrest queda así:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3668" target="_blank" title="">9.png</a> (Size: 104,1 KB / Downloads: 354)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Os pongo una imagen que no es mia para que veais como queda un sistema completo ya configurado:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3669" target="_blank" title="">backrest-dashboard-example.jpg</a> (Size: 149,36 KB / Downloads: 350)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
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 ):<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3670" target="_blank" title="">restore.png</a> (Size: 338,15 KB / Downloads: 340)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Proceso de restauración:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3671" target="_blank" title="">restore-progress.png</a> (Size: 319,43 KB / Downloads: 339)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
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:<br />
<br />
<br />
<a href="https://garethgeorge.github.io/backrest/introduction/getting-started" target="_blank" rel="noopener" class="mycode_url">https://garethgeorge.github.io/backrest/...ng-started</a>]]></description>
			<content:encoded><![CDATA[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.<br />
<br />
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.<br />
<br />
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.<br />
<br />
El compose para su instalación a través de Container Station o Portainer es el siguiente:<br />
<br />
<br />
services:<br />
    backrest:<br />
        image: garethgeorge/backrest:latest<br />
        container_name: backrest<br />
        volumes:<br />
           - /path/to/backrest/data:/data<br />
           - /path/to/backrest/config:/config<br />
           - /path/to/backrest/cache:/cache<br />
           - /path/to/backrest/tmp:/tmp<br />
           - /path/to/backup/data:/userdata<br />
           - /path/to/local/repos:/repos<br />
           - /var/run/docker.sock:/var/run/docker.sock:ro<br />
       environment:<br />
           - BACKREST_DATA=/data<br />
           - BACKREST_CONFIG=/config/config.json<br />
           - XDG_CACHE_HOME=/cache<br />
           - TMPDIR=/tmp<br />
           - TZ=Europe/Madrid<br />
       ports:<br />
           - 9898:9898<br />
       restart: always<br />
<br />
<br />
A tener en cuenta:<br />
<br />
 - 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.<br />
<br />
 - 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 <br />
   esas configuraciones están por separado en otros directorios podemos mapear la carpeta compartida superior.<br />
<br />
 - 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 <br />
   carpeta puede ser del propio nas o de otro dispositivo de la red local que tengamos mapeado.<br />
<br />
Adicionálmente a través de la interfaz de Backrest podemos configurar distintos servicios en la nube como destinos de esas copias de seguridad:<br />
<br />
 - Backblaze B2: b2:bucket or b2:bucket/prefix<br />
<br />
- AWS S3: s3:bucket or s3:bucket/prefix<br />
<br />
- Google Cloud: gs:bucket:/ or gs:bucket:/prefix<br />
<br />
- SFTP: sftp:user@host:/path/to/repo<br />
<br />
- Rclone: rclone:remote:path (requires rclone installation)<br />
<br />
<br />
Instalado el compose de Backrest en el nas accedemos a su interfaz mediante el navegador a través de    <a href="http://iplocaldelnas:9898" target="_blank" rel="noopener" class="mycode_url">http://iplocaldelnas:9898</a><br />
<br />
Por defecto Backrest no requiere de usuario - contraseña para acceder a su interfaz así que al hacerlo nos propone su creación voluntaria:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3661" target="_blank" title="">1.png</a> (Size: 88,65 KB / Downloads: 372)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
El funcionamiento principal de Backrest se basa en dos premisas:<br />
<br />
 - 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<br />
<br />
 - Creación de Planes de copia de seguridad.<br />
<br />
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.<br />
<br />
Lo primero que tenemos que hacer a través de la interfaz de Backrest es añadir un nuevo Repo<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3675" target="_blank" title="">30.png</a> (Size: 213,7 KB / Downloads: 330)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
 - Le ponemos el nombre que nos apetezca<br />
<br />
 - 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<br />
<br />
 - Las copias de seguridad que se generen están encriptadas de ahí que se nos pida una contraseña.<br />
<br />
 - Los apartados con flechas verdes Prune Policy - Check Policy se pueden dejar tal cual sabiendo que han referencia a esto:<br />
<br />
          Política de limpieza: Programación para la limpieza de datos sin referencias<br />
<br />
          Política de comprobación: Programación para la verificación de la integridad de las copias de seguridad<br />
<br />
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.<br />
<br />
Configurado todo guardamos los cambios.<br />
<br />
<br />
Puesto en funcionamiento nuestro primer Repo pasamos a la segunda parte consistente en añadir un Plan asociado a ese Repo creado:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3676" target="_blank" title="">31.png</a> (Size: 172,31 KB / Downloads: 337)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
 - Le ponemos el nombre que nos apetezca.<br />
<br />
 - Seleccionamos el Repo creado anteriórmente.<br />
<br />
 - Similar al caso anterior, en el compose pusimos la ruta donde tenemos guardadas las configuraciones de los dockers que tengamos con el parámetro<br />
    /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 <br />
    este caso, la carpeta de configuración de Homarr.<br />
<br />
 - 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.<br />
<br />
<br />
 El apartado marcado con flecha azul ( Hooks ) merece una atención especial:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3664" target="_blank" title="">5.png</a> (Size: 104,47 KB / Downloads: 363)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Como se puede ver tenemos varias opciones para elegir, de todas ellas escogemos Command<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3665" target="_blank" title="">6.png</a> (Size: 118,64 KB / Downloads: 353)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
 - CONDITION_SNAPSHOT_START nos aparece si clickamos en un desplegable y hace referencia al inicio de la copia de seguridad<br />
<br />
 - docker stop homarr lo escribimos a mano y da la orden de detener el contenedor Homarr ANTES de hacer la copia de seguridad<br />
<br />
 - ON_ERROR_FATAL también aparece en un desplegable y obliga a detener la copia si ocurre un error grave.<br />
<br />
<br />
En el sitio donde estamos añadimos un segundo Hook junto al anterior:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3666" target="_blank" title="">7.png</a> (Size: 115,1 KB / Downloads: 352)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
 - CONDITION_SNAPSHOT_END hacer referencia a la finalización de la copia de seguridad por parte de Backrest de ese contenedor Homarr<br />
<br />
 - docker start homarr arranca el contenedor después de finalizada la copia<br />
<br />
 - ON_ERROR_FATAL impide lo anterior si hay un error grave<br />
<br />
<br />
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.<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3667" target="_blank" title="">8.png</a> (Size: 152,79 KB / Downloads: 343)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
 - Las dos condiciones que se ven son las mismas de antes y hacen referencia al inicio - finalización de la copia de seguridad<br />
<br />
 - Las notificaciones anteriores mediante un bot de Telegram a través de Shoutrrr tienen que estar configuradas en el siguiente formato:<br />
<br />
telegram://XXXXX@telegram?chats=YYYYYYYYYY<br />
<br />
Las XXXX se corresponden al token del bot<br />
<br />
Las YYYYYYY se corresponden al Chat ID<br />
<br />
<br />
<br />
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.<br />
<br />
En este punto primigenio la interfaz de Backrest queda así:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3668" target="_blank" title="">9.png</a> (Size: 104,1 KB / Downloads: 354)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Os pongo una imagen que no es mia para que veais como queda un sistema completo ya configurado:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3669" target="_blank" title="">backrest-dashboard-example.jpg</a> (Size: 149,36 KB / Downloads: 350)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
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 ):<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3670" target="_blank" title="">restore.png</a> (Size: 338,15 KB / Downloads: 340)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Proceso de restauración:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3671" target="_blank" title="">restore-progress.png</a> (Size: 319,43 KB / Downloads: 339)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
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:<br />
<br />
<br />
<a href="https://garethgeorge.github.io/backrest/introduction/getting-started" target="_blank" rel="noopener" class="mycode_url">https://garethgeorge.github.io/backrest/...ng-started</a>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Virtualizacion station]]></title>
			<link>https://www.qnapclub.es/showthread.php?tid=5652</link>
			<pubDate>Sun, 10 Aug 2025 01:18:21 +0200</pubDate>
			<dc:creator><![CDATA[<a href="https://www.qnapclub.es/member.php?action=profile&uid=6006">Ruben Rojas</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.qnapclub.es/showthread.php?tid=5652</guid>
			<description><![CDATA[Hola amigos<br />
Tengo un TS-264 e instalé virtualizacion station y , se instala pero cuando intento acceder, queda en CARGANDO todo el tiempo y no arranca<br />
Ayuda por favor<br />
Gracias]]></description>
			<content:encoded><![CDATA[Hola amigos<br />
Tengo un TS-264 e instalé virtualizacion station y , se instala pero cuando intento acceder, queda en CARGANDO todo el tiempo y no arranca<br />
Ayuda por favor<br />
Gracias]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Docker de Tautulli y su QPKG]]></title>
			<link>https://www.qnapclub.es/showthread.php?tid=5650</link>
			<pubDate>Sat, 02 Aug 2025 23:29:35 +0200</pubDate>
			<dc:creator><![CDATA[<a href="https://www.qnapclub.es/member.php?action=profile&uid=148">Ganekogorta</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.qnapclub.es/showthread.php?tid=5650</guid>
			<description><![CDATA[Hola<br />
<br />
El otro día un usuario de Qnap consultaba si existía una aplicación en QPKG de <a href="https://tautulli.com/" target="_blank" rel="noopener" class="mycode_url">Tautulli</a>.<br />
<br />
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. <br />
<br />
Se que hay aplicaciones en la web de <a href="http://www.myqnap.org" target="_blank" rel="noopener" class="mycode_url">www.myqnap.org</a> como <a href="https://www.myqnap.org/product/tautulli-apache84/" target="_blank" rel="noopener" class="mycode_url">https://www.myqnap.org/product/tautulli-apache84/</a> pero aunque parezca gratuita, en realidad se necesita el qpkg requerido por ella <a href="https://www.myqnap.org/product/apache84/" target="_blank" rel="noopener" class="mycode_url">https://www.myqnap.org/product/apache84/</a> que si tiene un coste. <br />
<br />
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.<br />
<hr class="mycode_hr" />
1-Requisitos<br />
2-Despliegue del docker<br />
3-Instalacion del pqkg<br />
<hr class="mycode_hr" />
<br />
1- <span style="text-decoration: underline;" class="mycode_u">Requisitos</span><br />
Para instalar el docker, los requisitos son sencillos:<br />
-disponer de una cuenta Plex.<br />
-tener instalado y activo Container Station.<br />
-poder acceder por ssh a la nas (Panel de control, red y servicios, telnet/ssh y activar y permitir usuarios recordando el puerto)<br />
<br />
2-<span style="text-decoration: underline;" class="mycode_u">Despliegue del docker</span><br />
Abrimos nuestra consola de comandos por ssh.<br />
Un programa que siempre recomiendo es <a href="https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html" target="_blank" rel="noopener" class="mycode_url">Putty</a> , pero también tenemos qpkg instalables en nuestra Qnap como "<a href="https://www.myqnap.org/product/putty-hd/" target="_blank" rel="noopener" class="mycode_url">Putty HD</a>". Hay muchos mas y la lista sería interminable ya que algunos SO los integran de serie.<br />
<br />
Y lanzamos el siguiente comando:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><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</code></div></div><br />
Resumen de parámetros:<br />
- 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"<br />
- 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"<br />
- con "-e TZ=Europe/Madrid" indicamos nuestra zona horaria<br />
- con "-p 8181:8181" indicamos el puerto http por el que accederemos. Si queremos otro como el 7777, entonces pondremos "-p 7777:8181"<br />
<br />
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.<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3656" target="_blank" title="">tautulli_9.jpg</a> (Size: 60,01 KB / Downloads: 281)
<!-- end: postbit_attachments_attachment --><br />
<hr class="mycode_hr" />
3- Instalación del QPKG<br />
Digamos que parece ser lo mas cómodo pero sigue siendo obligado tener instalado y funcionando a Container Station.<br />
<br />
El enlace de descarga del QPKG es el siguiente ubicado en Mega <a href="https://mega.nz/file/1x5mibJL#rQ_NV11YvD7P-vd3IqdX3Nv840N6CaRRXG9Uxt3DG7c" target="_blank" rel="noopener" class="mycode_url">tautulli.qpkg</a><br />
<br />
La instalación es sencilla, como en cualquier qpkg. <br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3648" target="_blank" title="">tautulli_1.jpg</a> (Size: 18,68 KB / Downloads: 273)
<!-- end: postbit_attachments_attachment --><br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3649" target="_blank" title="">tautulli_2.jpg</a> (Size: 105,29 KB / Downloads: 290)
<!-- end: postbit_attachments_attachment --><br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3650" target="_blank" title="">tautulli_3.jpg</a> (Size: 17,82 KB / Downloads: 274)
<!-- end: postbit_attachments_attachment --><br />
<br />
Con la salvedad de que al no ser un paquete firmado os lanza un aviso de ello y debéis aceptarlo.<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3651" target="_blank" title="">tautulli_4.jpg</a> (Size: 44,95 KB / Downloads: 270)
<!-- end: postbit_attachments_attachment --><br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3652" target="_blank" title="">tautulli_5.jpg</a> (Size: 79,38 KB / Downloads: 271)
<!-- end: postbit_attachments_attachment --><br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3653" target="_blank" title="">tautulli_6.jpg</a> (Size: 82,04 KB / Downloads: 285)
<!-- end: postbit_attachments_attachment --><br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3654" target="_blank" title="">tautulli_7.jpg</a> (Size: 17,24 KB / Downloads: 280)
<!-- end: postbit_attachments_attachment --><br />
<br />
Y ya tendremos el icono de la aplicación en el appCenter<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3655" target="_blank" title="">tautulli_8.jpg</a> (Size: 7,55 KB / Downloads: 284)
<!-- end: postbit_attachments_attachment --><br />
<br />
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.<br />
<br />
En su primer inicio se instala en la carpeta "tautulli" dentro de la carpeta compartida "Public".<br />
Si quisiésemos hacer algún cambio de parámetros, debemos:<br />
 -detener la app desde el "app Center"<br />
 -editar el archivo oculto ".env_tautulli" ubicado en "Public/tautulli"<br />
 - guardar los cambios<br />
 - iniciar el qpkg desde el appCenter<br />
<br />
Es muy importante respetar el orden de las líneas, sus saltos y no alterar su orden.<br />
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.<br />
El archivo .env_tautulli contiene el siguiente contenido por defecto:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>PUERTO=8181<br />
CONFIG=/share/Public/tuatulli<br />
PUID=1000<br />
PGID=100<br />
TZ=Europe/Madrid<br />
LOG=TRUE</code></div></div><br />
<br />
Si alteramos la ruta del parámetro CONFIG, el docker será movido de ubicación.<br />
Así que antes de hacerlo es conveniente asegurarse que lo hacemos correctamente.<br />
Por ejemplo podríamos enviarlo /share/CarpetaCompartida/tautulli<br />
<br />
<br />
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.<br />
<hr class="mycode_hr" />
<br />
Sobre el uso poco voy a contar ya que es sencillo de configurar y usar.<br />
Podéis echar una ojeada aquí <a href="https://tautulli.com/#features" target="_blank" rel="noopener" class="mycode_url">https://tautulli.com/#features</a>]]></description>
			<content:encoded><![CDATA[Hola<br />
<br />
El otro día un usuario de Qnap consultaba si existía una aplicación en QPKG de <a href="https://tautulli.com/" target="_blank" rel="noopener" class="mycode_url">Tautulli</a>.<br />
<br />
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. <br />
<br />
Se que hay aplicaciones en la web de <a href="http://www.myqnap.org" target="_blank" rel="noopener" class="mycode_url">www.myqnap.org</a> como <a href="https://www.myqnap.org/product/tautulli-apache84/" target="_blank" rel="noopener" class="mycode_url">https://www.myqnap.org/product/tautulli-apache84/</a> pero aunque parezca gratuita, en realidad se necesita el qpkg requerido por ella <a href="https://www.myqnap.org/product/apache84/" target="_blank" rel="noopener" class="mycode_url">https://www.myqnap.org/product/apache84/</a> que si tiene un coste. <br />
<br />
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.<br />
<hr class="mycode_hr" />
1-Requisitos<br />
2-Despliegue del docker<br />
3-Instalacion del pqkg<br />
<hr class="mycode_hr" />
<br />
1- <span style="text-decoration: underline;" class="mycode_u">Requisitos</span><br />
Para instalar el docker, los requisitos son sencillos:<br />
-disponer de una cuenta Plex.<br />
-tener instalado y activo Container Station.<br />
-poder acceder por ssh a la nas (Panel de control, red y servicios, telnet/ssh y activar y permitir usuarios recordando el puerto)<br />
<br />
2-<span style="text-decoration: underline;" class="mycode_u">Despliegue del docker</span><br />
Abrimos nuestra consola de comandos por ssh.<br />
Un programa que siempre recomiendo es <a href="https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html" target="_blank" rel="noopener" class="mycode_url">Putty</a> , pero también tenemos qpkg instalables en nuestra Qnap como "<a href="https://www.myqnap.org/product/putty-hd/" target="_blank" rel="noopener" class="mycode_url">Putty HD</a>". Hay muchos mas y la lista sería interminable ya que algunos SO los integran de serie.<br />
<br />
Y lanzamos el siguiente comando:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><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</code></div></div><br />
Resumen de parámetros:<br />
- 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"<br />
- 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"<br />
- con "-e TZ=Europe/Madrid" indicamos nuestra zona horaria<br />
- con "-p 8181:8181" indicamos el puerto http por el que accederemos. Si queremos otro como el 7777, entonces pondremos "-p 7777:8181"<br />
<br />
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.<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3656" target="_blank" title="">tautulli_9.jpg</a> (Size: 60,01 KB / Downloads: 281)
<!-- end: postbit_attachments_attachment --><br />
<hr class="mycode_hr" />
3- Instalación del QPKG<br />
Digamos que parece ser lo mas cómodo pero sigue siendo obligado tener instalado y funcionando a Container Station.<br />
<br />
El enlace de descarga del QPKG es el siguiente ubicado en Mega <a href="https://mega.nz/file/1x5mibJL#rQ_NV11YvD7P-vd3IqdX3Nv840N6CaRRXG9Uxt3DG7c" target="_blank" rel="noopener" class="mycode_url">tautulli.qpkg</a><br />
<br />
La instalación es sencilla, como en cualquier qpkg. <br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3648" target="_blank" title="">tautulli_1.jpg</a> (Size: 18,68 KB / Downloads: 273)
<!-- end: postbit_attachments_attachment --><br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3649" target="_blank" title="">tautulli_2.jpg</a> (Size: 105,29 KB / Downloads: 290)
<!-- end: postbit_attachments_attachment --><br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3650" target="_blank" title="">tautulli_3.jpg</a> (Size: 17,82 KB / Downloads: 274)
<!-- end: postbit_attachments_attachment --><br />
<br />
Con la salvedad de que al no ser un paquete firmado os lanza un aviso de ello y debéis aceptarlo.<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3651" target="_blank" title="">tautulli_4.jpg</a> (Size: 44,95 KB / Downloads: 270)
<!-- end: postbit_attachments_attachment --><br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3652" target="_blank" title="">tautulli_5.jpg</a> (Size: 79,38 KB / Downloads: 271)
<!-- end: postbit_attachments_attachment --><br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3653" target="_blank" title="">tautulli_6.jpg</a> (Size: 82,04 KB / Downloads: 285)
<!-- end: postbit_attachments_attachment --><br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3654" target="_blank" title="">tautulli_7.jpg</a> (Size: 17,24 KB / Downloads: 280)
<!-- end: postbit_attachments_attachment --><br />
<br />
Y ya tendremos el icono de la aplicación en el appCenter<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3655" target="_blank" title="">tautulli_8.jpg</a> (Size: 7,55 KB / Downloads: 284)
<!-- end: postbit_attachments_attachment --><br />
<br />
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.<br />
<br />
En su primer inicio se instala en la carpeta "tautulli" dentro de la carpeta compartida "Public".<br />
Si quisiésemos hacer algún cambio de parámetros, debemos:<br />
 -detener la app desde el "app Center"<br />
 -editar el archivo oculto ".env_tautulli" ubicado en "Public/tautulli"<br />
 - guardar los cambios<br />
 - iniciar el qpkg desde el appCenter<br />
<br />
Es muy importante respetar el orden de las líneas, sus saltos y no alterar su orden.<br />
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.<br />
El archivo .env_tautulli contiene el siguiente contenido por defecto:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>PUERTO=8181<br />
CONFIG=/share/Public/tuatulli<br />
PUID=1000<br />
PGID=100<br />
TZ=Europe/Madrid<br />
LOG=TRUE</code></div></div><br />
<br />
Si alteramos la ruta del parámetro CONFIG, el docker será movido de ubicación.<br />
Así que antes de hacerlo es conveniente asegurarse que lo hacemos correctamente.<br />
Por ejemplo podríamos enviarlo /share/CarpetaCompartida/tautulli<br />
<br />
<br />
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.<br />
<hr class="mycode_hr" />
<br />
Sobre el uso poco voy a contar ya que es sencillo de configurar y usar.<br />
Podéis echar una ojeada aquí <a href="https://tautulli.com/#features" target="_blank" rel="noopener" class="mycode_url">https://tautulli.com/#features</a>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Docker ConvertX para convertir archivos]]></title>
			<link>https://www.qnapclub.es/showthread.php?tid=5647</link>
			<pubDate>Sat, 26 Jul 2025 21:30:08 +0200</pubDate>
			<dc:creator><![CDATA[<a href="https://www.qnapclub.es/member.php?action=profile&uid=3592">yeraycito</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.qnapclub.es/showthread.php?tid=5647</guid>
			<description><![CDATA[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:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3647" target="_blank" title="">converters.png</a> (Size: 104,81 KB / Downloads: 229)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
El compose para su instalación a través de Container Station o Portainer es el siguiente:<br />
<br />
<br />
services:<br />
    convertx:<br />
        image: ghcr.io/c4illin/convertx:latest<br />
        container_name: convertx<br />
        restart: unless-stopped<br />
        ports:<br />
            - 3522:3000<br />
        environment:<br />
             - JWT_SECRET=WpDPBLWrsdRyhQBRDzyDbcsTsVVhmWRviBQFwBRZipSyzXcfoxAxEPUUsliyLzfz<br />
             - ACCOUNT_REGISTRATION=false<br />
             - ALLOW_UNAUTHENTICATED=true<br />
             - HTTP_ALLOWED=true<br />
             - AUTO_DELETE_EVERY_N_HOURS=1<br />
        volumes:<br />
            - /your/local/path/to/data:/app/data<br />
<br />
<br />
A tener en cuenta:<br />
<br />
 - 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 <br />
    dos siguientes valores dejándolos así:<br />
<br />
               - ACCOUNT_REGISTRATION=true<br />
<br />
               - ALLOW_UNAUTHENTICATED=false<br />
<br />
 - 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 <br />
    ajuste.<br />
<br />
 - 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 <br />
   docker.<br />
<br />
<br />
Instalado ConvertX accederemos a su interfaz mediante un navegador en     <a href="http://iplocaldelnas:3522" target="_blank" rel="noopener" class="mycode_url">http://iplocaldelnas:3522</a><br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3643" target="_blank" title="">20.png</a> (Size: 34,17 KB / Downloads: 246)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Lo siguiente es subir un archivo y clickar en Search for conversions<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3644" target="_blank" title="">21.png</a> (Size: 167,44 KB / Downloads: 229)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
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.<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3645" target="_blank" title="">22.png</a> (Size: 48,17 KB / Downloads: 246)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Hecha la conversión muy rápidamente se nos ofrece el nuevo archivo convertido para poder descargarlo.<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3646" target="_blank" title="">23.png</a> (Size: 39,38 KB / Downloads: 234)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
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.]]></description>
			<content:encoded><![CDATA[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:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3647" target="_blank" title="">converters.png</a> (Size: 104,81 KB / Downloads: 229)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
El compose para su instalación a través de Container Station o Portainer es el siguiente:<br />
<br />
<br />
services:<br />
    convertx:<br />
        image: ghcr.io/c4illin/convertx:latest<br />
        container_name: convertx<br />
        restart: unless-stopped<br />
        ports:<br />
            - 3522:3000<br />
        environment:<br />
             - JWT_SECRET=WpDPBLWrsdRyhQBRDzyDbcsTsVVhmWRviBQFwBRZipSyzXcfoxAxEPUUsliyLzfz<br />
             - ACCOUNT_REGISTRATION=false<br />
             - ALLOW_UNAUTHENTICATED=true<br />
             - HTTP_ALLOWED=true<br />
             - AUTO_DELETE_EVERY_N_HOURS=1<br />
        volumes:<br />
            - /your/local/path/to/data:/app/data<br />
<br />
<br />
A tener en cuenta:<br />
<br />
 - 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 <br />
    dos siguientes valores dejándolos así:<br />
<br />
               - ACCOUNT_REGISTRATION=true<br />
<br />
               - ALLOW_UNAUTHENTICATED=false<br />
<br />
 - 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 <br />
    ajuste.<br />
<br />
 - 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 <br />
   docker.<br />
<br />
<br />
Instalado ConvertX accederemos a su interfaz mediante un navegador en     <a href="http://iplocaldelnas:3522" target="_blank" rel="noopener" class="mycode_url">http://iplocaldelnas:3522</a><br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3643" target="_blank" title="">20.png</a> (Size: 34,17 KB / Downloads: 246)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Lo siguiente es subir un archivo y clickar en Search for conversions<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3644" target="_blank" title="">21.png</a> (Size: 167,44 KB / Downloads: 229)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
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.<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3645" target="_blank" title="">22.png</a> (Size: 48,17 KB / Downloads: 246)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Hecha la conversión muy rápidamente se nos ofrece el nuevo archivo convertido para poder descargarlo.<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3646" target="_blank" title="">23.png</a> (Size: 39,38 KB / Downloads: 234)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
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.]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Docker optimizador de imágenes]]></title>
			<link>https://www.qnapclub.es/showthread.php?tid=5646</link>
			<pubDate>Sat, 26 Jul 2025 20:19:43 +0200</pubDate>
			<dc:creator><![CDATA[<a href="https://www.qnapclub.es/member.php?action=profile&uid=3592">yeraycito</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.qnapclub.es/showthread.php?tid=5646</guid>
			<description><![CDATA[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.<br />
<br />
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:<br />
<br />
<br />
 - Optimiza las imágenes en tu navegador.<br />
<br />
- Ajusta la calidad de la imagen.<br />
<br />
- Establece el tamaño del archivo de destino.<br />
<br />
- Establece el ancho y alto máximos.<br />
<br />
- Pega imágenes desde el portapapeles.<br />
<br />
- Convierte entre y a JPG, PNG, WebP, ICO.<br />
<br />
- Convierte desde HEIC, AVIF, TIFF, GIF, SVG.<br />
<br />
- Centrado en la privacidad.<br />
<br />
- Funciona sin conexión.<br />
<br />
- Procesamiento de imágenes en el dispositivo.<br />
<br />
- Elimina los datos EXIF (ubicación, fecha, etc.).<br />
<br />
- Sin seguimiento.<br />
<br />
<br />
El compose para su instalación a través de Container Station o Portainer es el siguiente:<br />
<br />
<br />
services:<br />
    mazanoke:<br />
         container_name: mazanoke<br />
         image: ghcr.io/civilblur/mazanoke:latest<br />
         restart: unless-stopped<br />
         ports:<br />
             - 3474:80<br />
<br />
<br />
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.<br />
<br />
Instalado Mazanoke accedemos con el navegador a su interfaz mediante     <a href="http://iplocaldelnas:3474" target="_blank" rel="noopener" class="mycode_url">http://iplocaldelnas:3474</a><br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3640" target="_blank" title="">1.png</a> (Size: 60,75 KB / Downloads: 218)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
En el apartado de opciones nos encontramos las siguientes:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3641" target="_blank" title="">2.png</a> (Size: 196,97 KB / Downloads: 205)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Configuradas las tareas que queramos realizar procedemos a subirle la imagen correspondiente con el siguiente resultado:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3642" target="_blank" title="">3.png</a> (Size: 127,31 KB / Downloads: 212)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Ya sólo nos queda descargarnos la imagen....... fin.]]></description>
			<content:encoded><![CDATA[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.<br />
<br />
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:<br />
<br />
<br />
 - Optimiza las imágenes en tu navegador.<br />
<br />
- Ajusta la calidad de la imagen.<br />
<br />
- Establece el tamaño del archivo de destino.<br />
<br />
- Establece el ancho y alto máximos.<br />
<br />
- Pega imágenes desde el portapapeles.<br />
<br />
- Convierte entre y a JPG, PNG, WebP, ICO.<br />
<br />
- Convierte desde HEIC, AVIF, TIFF, GIF, SVG.<br />
<br />
- Centrado en la privacidad.<br />
<br />
- Funciona sin conexión.<br />
<br />
- Procesamiento de imágenes en el dispositivo.<br />
<br />
- Elimina los datos EXIF (ubicación, fecha, etc.).<br />
<br />
- Sin seguimiento.<br />
<br />
<br />
El compose para su instalación a través de Container Station o Portainer es el siguiente:<br />
<br />
<br />
services:<br />
    mazanoke:<br />
         container_name: mazanoke<br />
         image: ghcr.io/civilblur/mazanoke:latest<br />
         restart: unless-stopped<br />
         ports:<br />
             - 3474:80<br />
<br />
<br />
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.<br />
<br />
Instalado Mazanoke accedemos con el navegador a su interfaz mediante     <a href="http://iplocaldelnas:3474" target="_blank" rel="noopener" class="mycode_url">http://iplocaldelnas:3474</a><br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3640" target="_blank" title="">1.png</a> (Size: 60,75 KB / Downloads: 218)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
En el apartado de opciones nos encontramos las siguientes:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3641" target="_blank" title="">2.png</a> (Size: 196,97 KB / Downloads: 205)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Configuradas las tareas que queramos realizar procedemos a subirle la imagen correspondiente con el siguiente resultado:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3642" target="_blank" title="">3.png</a> (Size: 127,31 KB / Downloads: 212)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Ya sólo nos queda descargarnos la imagen....... fin.]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Servidor de libros con Booklore]]></title>
			<link>https://www.qnapclub.es/showthread.php?tid=5645</link>
			<pubDate>Thu, 24 Jul 2025 18:53:27 +0200</pubDate>
			<dc:creator><![CDATA[<a href="https://www.qnapclub.es/member.php?action=profile&uid=3592">yeraycito</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.qnapclub.es/showthread.php?tid=5645</guid>
			<description><![CDATA[A la hora de gestionar libros electrónicos en un ordenador el referente indiscutible es el programa Calibre, si queremos compartir nuestra biblioteca de libros a través del nas podemos hacer uso, por ejemplo, de Calibre-web que está basado en el anterior. Calibre es un programa que funciona muy bien pero en mi opinión tiene un par de defectos y esto me lleva desde hace ya un tiempo a intentar encontrarle una alternativa válida que si no consiga eliminar su uso al menos que lo reduzca consideráblemente.<br />
<br />
Booklore es un software con el mismo funcionamiento que Calibre-web, es decir, podemos crear usuarios para que accedan a nuestra biblioteca de libros y se los descarguen, podemos leerlos en línea, enviarlos mediante correo electrónico, etc, etc. Sin embargo tiene también diversas diferencias a constatar:<br />
<br />
<br />
 - No utiliza la base de datos de Calibre, es decir, funciona simplemente escaneando la carpeta de libros que se le indique.<br />
<br />
 - Permite tener todas las bibliotecas de libros que nos parezcan.<br />
<br />
 - Permite añadir libros nuevos automáticamente.<br />
<br />
 - Permite la descarga de metadatos y datos de los libros de diversas fuentes tanto de forma automática y desatendida o de forma manual.<br />
<br />
 - Permite llevar un control de los libros leidos.<br />
<br />
 - Incorpora un servidor OPDS<br />
<br />
<br />
Como acabo de comentar Calibre para ordenador es un software muy completo y que funciona muy bien sin embargo tiene cosas que personálmente no me gustan, una consiste en la cantidad enorme de carpetas y archivos que genera cuando se crea una biblioteca y se añaden libros:<br />
<br />
<br />
 - Genera una carpeta por cada libro de un autor en concreto.<br />
<br />
 - Genera 3 archivos por cada libro electrónico ( portada - opf - epub )<br />
<br />
<br />
Antes de explicar como se instala Booklore y como funciona voy a comentar algo que es lógicamente opcional y que únicamente es válido si tenemos en nuestro ordenador o en el nas una biblioteca de libros gestionada con Calibre para ordenador, de lo que se trata es de arreglar las cosas que no me gustan que acabo de comentar.<br />
<br />
<br />
Abrimos Calibre y nos dirigimos a sus opciones concrétamente a la función Guardar libros en disco y la configuramos de la siguiente forma:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3625" target="_blank" title="">1.png</a> (Size: 265,51 KB / Downloads: 607)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Todas las casillas desmarcadas y configurando la plantilla con estos parámetros: {author_sort}/{title} - {authors}<br />
<br />
Guardados los cambios vamos a exportar nuestra biblioteca a una carpeta en el ordenador, lo haremos de la siguiente forma:<br />
<br />
<br />
 - Seleccionamos con el ratón el primer libro de nuestra biblioteca<br />
<br />
 - Pulsamos y mantenemos pulsada la tecla Mayúsculas del teclado<br />
<br />
 - Seleccionamos con el ratón el último libro de la biblioteca<br />
<br />
Con este sistema todos los libros quedarán marcados, hecho esto le damos al bóton de Calibre Guardar en disco y empezará la exportación de los libros de la biblioteca. Terminada la exportación los libros quedan con la siguiente extructura:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3626" target="_blank" title="">2.png</a> (Size: 71,34 KB / Downloads: 623)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
La instalación de Booklore la haremos a través de un compose mediante Container Station o Portainer:<br />
<br />
<br />
<br />
services:<br />
    booklore:<br />
         image: ghcr.io/adityachandelgit/booklore-app:latest<br />
         container_name: booklore<br />
         environment:<br />
              - PUID=1000<br />
              - PGID=100<br />
              - TZ=Europe/Madrid<br />
              - DATABASE_URL=jdbc:mariadb://mariadb:3306/booklore<br />
              - DATABASE_USERNAME=booklore<br />
              - DATABASE_PASSWORD=XXXX<br />
              - SWAGGER_ENABLED=false<br />
         depends_on:<br />
             mariadb:<br />
                  condition: service_healthy<br />
         ports:<br />
             - "6060:6060"<br />
         volumes:<br />
             - /your/local/path/to/booklore/data:/app/data<br />
             - /your/local/path/to/booklore/books:/books<br />
             - /your/local/path/to/booklore/bookdrop:/bookdrop<br />
         restart: always<br />
<br />
     mariadb:<br />
          image: lscr.io/linuxserver/mariadb:11.4.5<br />
          container_name: mariadb<br />
          environment:<br />
              - PUID=1000<br />
              - PGID=100<br />
              - TZ=Europe/Madrid<br />
              - MYSQL_ROOT_PASSWORD=YYYYYYYYYYY<br />
              - MYSQL_DATABASE=booklore<br />
              - MYSQL_USER=booklore<br />
              - MYSQL_PASSWORD=XXXX<br />
          volumes:<br />
              - /your/local/path/to/mariadb/config:/config<br />
          restart: always<br />
          healthcheck:<br />
               test: ["CMD", "mariadb-admin", "ping", "-h", "localhost"]<br />
               interval: 5s<br />
               timeout: 5s<br />
               retries: 10<br />
<br />
<br />
<br />
Este compose instala dos contenedores que funcionan en sincronía, una base de datos mariadb y el propio Booklore.<br />
<br />
A tener en cuenta:<br />
<br />
 - Los apartados DATABASE_PASSWORD y MYSQL_PASSWORD tienen que tener la misma contraseña que le pongamos.<br />
<br />
 - En el apartado MYSQL_ROOT_PASSWORD tenemos que poner una contraseña distinta a las anteriores.<br />
<br />
 - Los apartados del compose /your/local/path/to los tendremos que configurar poniendo las rutas de nuestro nas correspondientes. Sobre esto dos cosas:<br />
<br />
         - La carpeta bookdrop va a servir, si se quiere, para añadir automáticamente libros nuevos a la biblioteca de Booklore<br />
<br />
         - La carpeta books hace referencia a la carpeta compartida del nas en la que tengamos nuestros libros, si queremos tener más de una biblioteca en Booklore <br />
           podemos hacerlo así, vamos a suponer que tengamos en el nas una carpeta compartida llamada Libros y dentro de ella dos carpetas más una, por ejemplo, <br />
           con libros de economía y otra con libros de historia. Siendo así en el compose mapeamos la carpeta Libros y una vez instalado Booklore podremos añadir<br />
           por separado esas dos colecciones de libros.<br />
<br />
En el caso de tener colecciones de libros en el nas en carpetas compartidas distintas podemos configurar el apartado Volumes de Booklore del compose anterior dejándolo de la siguiente forma:<br />
<br />
<br />
volumes:<br />
      - /your/local/path/to/booklore/data:/app/data<br />
      - /your/local/path/to/booklore/books1:/books1<br />
      - /your/local/path/to/booklore/books2:/books2<br />
      - /your/local/path/to/booklore/bookdrop:/bookdrop<br />
<br />
<br />
Instalado Booklore accedermos a el con el navegador que utilicemos en      <a href="http://iplocaldelnas:6060" target="_blank" rel="noopener" class="mycode_url">http://iplocaldelnas:6060</a><br />
<br />
Al hacerlo lo primero que se nos pide es configurar un usuario Administrador con su correspondiente contraseña:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3627" target="_blank" title="">3.png</a> (Size: 121,29 KB / Downloads: 618)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Yo ya lo tengo configurado así que a vosotros os aparecerá vacío de contenido lógicamente. Debido a limitaciones de este foro a la hora del tamaño de imágenes a subir he tenido que recortar exagerádamente la siguiente imagen:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3628" target="_blank" title="">4.png</a> (Size: 462,17 KB / Downloads: 614)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
La siguiente imagen no se corresponde a mi Booklore sino que está extraida de su web, la pongo para que veais como es más o menos:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3639" target="_blank" title="">0.png</a> (Size: 753,18 KB / Downloads: 614)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Booklore tiene un desarrollo descomunal en los últimos meses añadiendo nuevas funciones y sus desarrolladores tienen unos videos sobre el programa que son algo antiguos pero que sirven para hacerse uno una idea, se pueden ver aquí:<br />
<br />
<a href="https://www.youtube.com/watch?v=UMrn_fIe...dz&amp;index=1" target="_blank" rel="noopener" class="mycode_url">https://www.youtube.com/watch?v=UMrn_fIe...dz&amp;index=1</a><br />
<br />
<br />
Añadir a Booklore bibliotecas o carpetas con libros es muy sencillo:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3629" target="_blank" title="">6.png</a> (Size: 115,04 KB / Downloads: 621)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Le ponemos un nombre, escogemos un icono y decidimos si activar o no que Booklore monitorice los cambios en la carpeta de libros que se le indique. Hecho esto le indicamos la carpeta del nas en la que tengamos libros:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3630" target="_blank" title="">7.png</a> (Size: 113,84 KB / Downloads: 624)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
Podemos repetir este mismo proceso con todas las carpetas de libros que nos apetezca y se creará una biblioteca para cada una de ellas.<br />
<br />
Un apartado interesante de Booklore es la gestión de metadatos de los libros:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3631" target="_blank" title="">8.png</a> (Size: 391,23 KB / Downloads: 615)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Podemos configurar varios proveedores y su prioridad tante en conjunto como por separado. Accediendo a un libro en concreto tenemos varias posibilidades:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3632" target="_blank" title="">9.png</a> (Size: 404,75 KB / Downloads: 610)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Podemos leerlo diréctamente, descargarlo, enviarlo por correo electrónico, marcarlo como leido o hacer que busque y añada metadatos automáticamente. Tenemos también la posibilidad de editar los metadatos manuálmente:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3633" target="_blank" title="">10.png</a> (Size: 456,33 KB / Downloads: 611)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
O hacer que Booklore los busque:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3634" target="_blank" title="">11.png</a> (Size: 546,28 KB / Downloads: 606)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Hecha la búsqueda podemos comparar los datos del libro existentes con los nuevos:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3635" target="_blank" title="">12.png</a> (Size: 645,63 KB / Downloads: 613)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Podemos añadir todos los datos nuevos en conjunto o individuálmente, podemos cerrando los candados de la izquierda evitar modificaciones y en el caso de que falte o sea mejor los datos de otro proveedor sea totálmente o sólo alguna parte podemos usarlos también sin problemas.<br />
<br />
<br />
Al principio he comentado que en el compose configuramos una carpeta bookdrop que sirve para añadir libros nuevos a la biblioteca que queramos pero este sistema tiene una añadiduría consistente en que a la misma vez que añadimos un libro busca y añade automáticamente los metadatos correspondientes. El funcionamiento es el siguiente, metemos uno o varios libros en la carpeta del nas bookdrop:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3636" target="_blank" title="">15.png</a> (Size: 71,69 KB / Downloads: 608)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Al instante nos aparece en Booklore lo siguiente:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3637" target="_blank" title="">16.png</a> (Size: 748,5 KB / Downloads: 616)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Booklore nos informa que ha reconocido el nuevo libro, lo ha procesado y lo deja pendiente para que lo revisemos:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3638" target="_blank" title="">17.png</a> (Size: 514,47 KB / Downloads: 615)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
No digo que este sistema sea malo pero personálmente prefiero otro consistente en crear en Booklore una biblioteca vacía configurándola para que monitorice los cambios, de esta forma cualquier libro o libros que añadamos a la correspondiente carpeta del nas Booklore los añade automáticamente. Hecho esto ya podríamos editarlos.<br />
<br />
<br />
En relación a la adicción automática de libros a Booklore este bot de Telegram añade comodidad al sistema:<br />
<br />
<a href="https://www.qnapclub.es/showthread.php?tid=5644&amp;pid=25001#pid25001" target="_blank" rel="noopener" class="mycode_url">https://www.qnapclub.es/showthread.php?t...1#pid25001</a><br />
<br />
<br />
Resumiendo:<br />
<br />
Booklore puede ser una alternativa viable a la mala gestión relativa a carpetas y archivos que hace Calibre sin olvidar la xxxxxx que le mete a los libros. Como dije antes Booklore está en constante evolución añadiendo nuevas funciones y mejorando otras, por el momento una de las que no incluye es la conversión de formatos de libro electrónico, otra cosa que tiene que mejorar es el rendimiento con bibliotecas de muy gran tamaño, por lo demás todo muy bien.]]></description>
			<content:encoded><![CDATA[A la hora de gestionar libros electrónicos en un ordenador el referente indiscutible es el programa Calibre, si queremos compartir nuestra biblioteca de libros a través del nas podemos hacer uso, por ejemplo, de Calibre-web que está basado en el anterior. Calibre es un programa que funciona muy bien pero en mi opinión tiene un par de defectos y esto me lleva desde hace ya un tiempo a intentar encontrarle una alternativa válida que si no consiga eliminar su uso al menos que lo reduzca consideráblemente.<br />
<br />
Booklore es un software con el mismo funcionamiento que Calibre-web, es decir, podemos crear usuarios para que accedan a nuestra biblioteca de libros y se los descarguen, podemos leerlos en línea, enviarlos mediante correo electrónico, etc, etc. Sin embargo tiene también diversas diferencias a constatar:<br />
<br />
<br />
 - No utiliza la base de datos de Calibre, es decir, funciona simplemente escaneando la carpeta de libros que se le indique.<br />
<br />
 - Permite tener todas las bibliotecas de libros que nos parezcan.<br />
<br />
 - Permite añadir libros nuevos automáticamente.<br />
<br />
 - Permite la descarga de metadatos y datos de los libros de diversas fuentes tanto de forma automática y desatendida o de forma manual.<br />
<br />
 - Permite llevar un control de los libros leidos.<br />
<br />
 - Incorpora un servidor OPDS<br />
<br />
<br />
Como acabo de comentar Calibre para ordenador es un software muy completo y que funciona muy bien sin embargo tiene cosas que personálmente no me gustan, una consiste en la cantidad enorme de carpetas y archivos que genera cuando se crea una biblioteca y se añaden libros:<br />
<br />
<br />
 - Genera una carpeta por cada libro de un autor en concreto.<br />
<br />
 - Genera 3 archivos por cada libro electrónico ( portada - opf - epub )<br />
<br />
<br />
Antes de explicar como se instala Booklore y como funciona voy a comentar algo que es lógicamente opcional y que únicamente es válido si tenemos en nuestro ordenador o en el nas una biblioteca de libros gestionada con Calibre para ordenador, de lo que se trata es de arreglar las cosas que no me gustan que acabo de comentar.<br />
<br />
<br />
Abrimos Calibre y nos dirigimos a sus opciones concrétamente a la función Guardar libros en disco y la configuramos de la siguiente forma:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3625" target="_blank" title="">1.png</a> (Size: 265,51 KB / Downloads: 607)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Todas las casillas desmarcadas y configurando la plantilla con estos parámetros: {author_sort}/{title} - {authors}<br />
<br />
Guardados los cambios vamos a exportar nuestra biblioteca a una carpeta en el ordenador, lo haremos de la siguiente forma:<br />
<br />
<br />
 - Seleccionamos con el ratón el primer libro de nuestra biblioteca<br />
<br />
 - Pulsamos y mantenemos pulsada la tecla Mayúsculas del teclado<br />
<br />
 - Seleccionamos con el ratón el último libro de la biblioteca<br />
<br />
Con este sistema todos los libros quedarán marcados, hecho esto le damos al bóton de Calibre Guardar en disco y empezará la exportación de los libros de la biblioteca. Terminada la exportación los libros quedan con la siguiente extructura:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3626" target="_blank" title="">2.png</a> (Size: 71,34 KB / Downloads: 623)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
La instalación de Booklore la haremos a través de un compose mediante Container Station o Portainer:<br />
<br />
<br />
<br />
services:<br />
    booklore:<br />
         image: ghcr.io/adityachandelgit/booklore-app:latest<br />
         container_name: booklore<br />
         environment:<br />
              - PUID=1000<br />
              - PGID=100<br />
              - TZ=Europe/Madrid<br />
              - DATABASE_URL=jdbc:mariadb://mariadb:3306/booklore<br />
              - DATABASE_USERNAME=booklore<br />
              - DATABASE_PASSWORD=XXXX<br />
              - SWAGGER_ENABLED=false<br />
         depends_on:<br />
             mariadb:<br />
                  condition: service_healthy<br />
         ports:<br />
             - "6060:6060"<br />
         volumes:<br />
             - /your/local/path/to/booklore/data:/app/data<br />
             - /your/local/path/to/booklore/books:/books<br />
             - /your/local/path/to/booklore/bookdrop:/bookdrop<br />
         restart: always<br />
<br />
     mariadb:<br />
          image: lscr.io/linuxserver/mariadb:11.4.5<br />
          container_name: mariadb<br />
          environment:<br />
              - PUID=1000<br />
              - PGID=100<br />
              - TZ=Europe/Madrid<br />
              - MYSQL_ROOT_PASSWORD=YYYYYYYYYYY<br />
              - MYSQL_DATABASE=booklore<br />
              - MYSQL_USER=booklore<br />
              - MYSQL_PASSWORD=XXXX<br />
          volumes:<br />
              - /your/local/path/to/mariadb/config:/config<br />
          restart: always<br />
          healthcheck:<br />
               test: ["CMD", "mariadb-admin", "ping", "-h", "localhost"]<br />
               interval: 5s<br />
               timeout: 5s<br />
               retries: 10<br />
<br />
<br />
<br />
Este compose instala dos contenedores que funcionan en sincronía, una base de datos mariadb y el propio Booklore.<br />
<br />
A tener en cuenta:<br />
<br />
 - Los apartados DATABASE_PASSWORD y MYSQL_PASSWORD tienen que tener la misma contraseña que le pongamos.<br />
<br />
 - En el apartado MYSQL_ROOT_PASSWORD tenemos que poner una contraseña distinta a las anteriores.<br />
<br />
 - Los apartados del compose /your/local/path/to los tendremos que configurar poniendo las rutas de nuestro nas correspondientes. Sobre esto dos cosas:<br />
<br />
         - La carpeta bookdrop va a servir, si se quiere, para añadir automáticamente libros nuevos a la biblioteca de Booklore<br />
<br />
         - La carpeta books hace referencia a la carpeta compartida del nas en la que tengamos nuestros libros, si queremos tener más de una biblioteca en Booklore <br />
           podemos hacerlo así, vamos a suponer que tengamos en el nas una carpeta compartida llamada Libros y dentro de ella dos carpetas más una, por ejemplo, <br />
           con libros de economía y otra con libros de historia. Siendo así en el compose mapeamos la carpeta Libros y una vez instalado Booklore podremos añadir<br />
           por separado esas dos colecciones de libros.<br />
<br />
En el caso de tener colecciones de libros en el nas en carpetas compartidas distintas podemos configurar el apartado Volumes de Booklore del compose anterior dejándolo de la siguiente forma:<br />
<br />
<br />
volumes:<br />
      - /your/local/path/to/booklore/data:/app/data<br />
      - /your/local/path/to/booklore/books1:/books1<br />
      - /your/local/path/to/booklore/books2:/books2<br />
      - /your/local/path/to/booklore/bookdrop:/bookdrop<br />
<br />
<br />
Instalado Booklore accedermos a el con el navegador que utilicemos en      <a href="http://iplocaldelnas:6060" target="_blank" rel="noopener" class="mycode_url">http://iplocaldelnas:6060</a><br />
<br />
Al hacerlo lo primero que se nos pide es configurar un usuario Administrador con su correspondiente contraseña:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3627" target="_blank" title="">3.png</a> (Size: 121,29 KB / Downloads: 618)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Yo ya lo tengo configurado así que a vosotros os aparecerá vacío de contenido lógicamente. Debido a limitaciones de este foro a la hora del tamaño de imágenes a subir he tenido que recortar exagerádamente la siguiente imagen:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3628" target="_blank" title="">4.png</a> (Size: 462,17 KB / Downloads: 614)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
La siguiente imagen no se corresponde a mi Booklore sino que está extraida de su web, la pongo para que veais como es más o menos:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3639" target="_blank" title="">0.png</a> (Size: 753,18 KB / Downloads: 614)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Booklore tiene un desarrollo descomunal en los últimos meses añadiendo nuevas funciones y sus desarrolladores tienen unos videos sobre el programa que son algo antiguos pero que sirven para hacerse uno una idea, se pueden ver aquí:<br />
<br />
<a href="https://www.youtube.com/watch?v=UMrn_fIe...dz&amp;index=1" target="_blank" rel="noopener" class="mycode_url">https://www.youtube.com/watch?v=UMrn_fIe...dz&amp;index=1</a><br />
<br />
<br />
Añadir a Booklore bibliotecas o carpetas con libros es muy sencillo:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3629" target="_blank" title="">6.png</a> (Size: 115,04 KB / Downloads: 621)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Le ponemos un nombre, escogemos un icono y decidimos si activar o no que Booklore monitorice los cambios en la carpeta de libros que se le indique. Hecho esto le indicamos la carpeta del nas en la que tengamos libros:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3630" target="_blank" title="">7.png</a> (Size: 113,84 KB / Downloads: 624)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
Podemos repetir este mismo proceso con todas las carpetas de libros que nos apetezca y se creará una biblioteca para cada una de ellas.<br />
<br />
Un apartado interesante de Booklore es la gestión de metadatos de los libros:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3631" target="_blank" title="">8.png</a> (Size: 391,23 KB / Downloads: 615)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Podemos configurar varios proveedores y su prioridad tante en conjunto como por separado. Accediendo a un libro en concreto tenemos varias posibilidades:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3632" target="_blank" title="">9.png</a> (Size: 404,75 KB / Downloads: 610)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Podemos leerlo diréctamente, descargarlo, enviarlo por correo electrónico, marcarlo como leido o hacer que busque y añada metadatos automáticamente. Tenemos también la posibilidad de editar los metadatos manuálmente:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3633" target="_blank" title="">10.png</a> (Size: 456,33 KB / Downloads: 611)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
O hacer que Booklore los busque:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3634" target="_blank" title="">11.png</a> (Size: 546,28 KB / Downloads: 606)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Hecha la búsqueda podemos comparar los datos del libro existentes con los nuevos:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3635" target="_blank" title="">12.png</a> (Size: 645,63 KB / Downloads: 613)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Podemos añadir todos los datos nuevos en conjunto o individuálmente, podemos cerrando los candados de la izquierda evitar modificaciones y en el caso de que falte o sea mejor los datos de otro proveedor sea totálmente o sólo alguna parte podemos usarlos también sin problemas.<br />
<br />
<br />
Al principio he comentado que en el compose configuramos una carpeta bookdrop que sirve para añadir libros nuevos a la biblioteca que queramos pero este sistema tiene una añadiduría consistente en que a la misma vez que añadimos un libro busca y añade automáticamente los metadatos correspondientes. El funcionamiento es el siguiente, metemos uno o varios libros en la carpeta del nas bookdrop:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3636" target="_blank" title="">15.png</a> (Size: 71,69 KB / Downloads: 608)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Al instante nos aparece en Booklore lo siguiente:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3637" target="_blank" title="">16.png</a> (Size: 748,5 KB / Downloads: 616)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
Booklore nos informa que ha reconocido el nuevo libro, lo ha procesado y lo deja pendiente para que lo revisemos:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3638" target="_blank" title="">17.png</a> (Size: 514,47 KB / Downloads: 615)
<!-- end: postbit_attachments_attachment --><br />
<br />
<br />
<br />
No digo que este sistema sea malo pero personálmente prefiero otro consistente en crear en Booklore una biblioteca vacía configurándola para que monitorice los cambios, de esta forma cualquier libro o libros que añadamos a la correspondiente carpeta del nas Booklore los añade automáticamente. Hecho esto ya podríamos editarlos.<br />
<br />
<br />
En relación a la adicción automática de libros a Booklore este bot de Telegram añade comodidad al sistema:<br />
<br />
<a href="https://www.qnapclub.es/showthread.php?tid=5644&amp;pid=25001#pid25001" target="_blank" rel="noopener" class="mycode_url">https://www.qnapclub.es/showthread.php?t...1#pid25001</a><br />
<br />
<br />
Resumiendo:<br />
<br />
Booklore puede ser una alternativa viable a la mala gestión relativa a carpetas y archivos que hace Calibre sin olvidar la xxxxxx que le mete a los libros. Como dije antes Booklore está en constante evolución añadiendo nuevas funciones y mejorando otras, por el momento una de las que no incluye es la conversión de formatos de libro electrónico, otra cosa que tiene que mejorar es el rendimiento con bibliotecas de muy gran tamaño, por lo demás todo muy bien.]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Bot de Telegram descargas al nas]]></title>
			<link>https://www.qnapclub.es/showthread.php?tid=5644</link>
			<pubDate>Thu, 24 Jul 2025 16:41:26 +0200</pubDate>
			<dc:creator><![CDATA[<a href="https://www.qnapclub.es/member.php?action=profile&uid=3592">yeraycito</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.qnapclub.es/showthread.php?tid=5644</guid>
			<description><![CDATA[Un bot de telegram instalado mediante docker que permite descargar una buena cantidad de tipos de archivos al nas. Lo interesante es que al funcionar mediante telegram no necesitamos vpn o abrir puertos para enviar archivos diréctamente a nuestro nas. <br />
<br />
Las funciones del bot que podemos activar o no según nos parezca son las siguientes:<br />
<br />
<br />
- Detección de archivos de Audio<br />
<br />
- Detección de archivos de Vídeo<br />
<br />
- Detección de archivos de Libros<br />
<br />
- Detección de archivos de Fotos<br />
<br />
- Detección de archivos de Torrent<br />
<br />
- Descarga de YouTube y envío de esos vídeos a Telegram<br />
<br />
- Descomprime automáticamente ficheros zip y tar (y sus variantes)<br />
<br />
<br />
Como digo dependiendo de la función que activemos en el bot este funcionará de una u otra forma, por ejemplo, podemos hacer que descargue un archivo torrent en la carpeta del nas correspondiente para ese fin de Transmission o descargar un libro o foto en sus carpetas correspondientes.<br />
<br />
El compose para instalar a través de Container Station o Portainer es el siguiente:<br />
<br />
<br />
services:<br />
  dropbot:<br />
    environment:<br />
      - TELEGRAM_TOKEN=XXXXXXXX<br />
      - TELEGRAM_ADMIN=YYYYY<br />
      - TELEGRAM_API_HASH=MMMMMM<br />
      - TELEGRAM_API_ID=ZZZZZ<br />
      - LANGUAGE=ES<br />
      #- PARALLEL_DOWNLOADS=2<br />
      #- FILTER_PHOTO=0<br />
      #- FILTER_AUDIO=0<br />
      #- FILTER_VIDEO=0<br />
      #- FILTER_TORRENT=0<br />
      #- FILTER_EBOOK=0<br />
      #- FILTER_YOUTUBE_AUDIO=0<br />
      #- FILTER_YOUTUBE_VIDEO=0<br />
    volumes:<br />
      - /ruta/para/descargar:/downloads<br />
      #- /ruta/para/descargar/audio:/audio<br />
      #- /ruta/para/descargar/video:/video<br />
      #- /ruta/para/descargar/foto:/photo<br />
      #- /ruta/para/descargar/torrent:/torrent<br />
      #- /ruta/para/descargar/ebook:/ebook<br />
      #- /ruta/para/descargar/audios_de_youtube:/youtube_audio<br />
      #- /ruta/para/descargar/videos_de_youtube:/youtube_video<br />
    image: dgongut/dropbot:latest<br />
    container_name: dropbot<br />
    restart: always<br />
    network_mode: host<br />
    tty: true<br />
<br />
<br />
A tener en cuenta:<br />
<br />
Antes de instalar este compose tenemos que tener creado un bot de telegram:     <a href="https://www.qnapclub.es/showthread.php?tid=3968" target="_blank" rel="noopener" class="mycode_url">https://www.qnapclub.es/showthread.php?tid=3968</a><br />
<br />
En el compose anterior en los apartados TELEGRAM_TOKEN y TELEGRAM_ADMIN tendremos que poner los datos de ese bot que hemos creado.<br />
<br />
En los apartados del compose TELEGRAM_API_HASH y TELEGRAM_API_ID tendremos que poner los datos correspondientes a nuestra aplicación de telegram, podremos crear esa aplicación muy fácilmente desde aquí:<br />
<br />
<a href="https://my.telegram.org/auth" target="_blank" rel="noopener" class="mycode_url">https://my.telegram.org/auth</a><br />
<br />
Los apartados /ruta/para/descargar los tenemos que modificar poniendo la ruta de la carpeta compartida de nuestro nas en la que queremos que se descarguen los archivos.<br />
<br />
En el compose se puede ver que únicamente está activa la carpeta del docker downloads, esto quiere decir que todos los archivos sean del tipo que sean que enviemos a través del bot de telegram se descargarán en la carpeta compartida de nuestro nas que hayamos configurado para downloads del docker.<br />
<br />
Si queremos, por ejemplo, que las fotos, los torrents o los libros vayan a carpetas compartidas distintas a la de downloads tendremos que desmarcar y configurar esas rutas a esas carpetas en el compose anterior.<br />
<br />
Una vez configurado el compose a nuestro gusto podremos hacer uso del bot de telegram enviando archivos que se descargarán diréctamente en las carpetas compartidas del nas que hayamos configurado:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3624" target="_blank" title="">dropbot.png</a> (Size: 80,88 KB / Downloads: 400)
<!-- end: postbit_attachments_attachment -->]]></description>
			<content:encoded><![CDATA[Un bot de telegram instalado mediante docker que permite descargar una buena cantidad de tipos de archivos al nas. Lo interesante es que al funcionar mediante telegram no necesitamos vpn o abrir puertos para enviar archivos diréctamente a nuestro nas. <br />
<br />
Las funciones del bot que podemos activar o no según nos parezca son las siguientes:<br />
<br />
<br />
- Detección de archivos de Audio<br />
<br />
- Detección de archivos de Vídeo<br />
<br />
- Detección de archivos de Libros<br />
<br />
- Detección de archivos de Fotos<br />
<br />
- Detección de archivos de Torrent<br />
<br />
- Descarga de YouTube y envío de esos vídeos a Telegram<br />
<br />
- Descomprime automáticamente ficheros zip y tar (y sus variantes)<br />
<br />
<br />
Como digo dependiendo de la función que activemos en el bot este funcionará de una u otra forma, por ejemplo, podemos hacer que descargue un archivo torrent en la carpeta del nas correspondiente para ese fin de Transmission o descargar un libro o foto en sus carpetas correspondientes.<br />
<br />
El compose para instalar a través de Container Station o Portainer es el siguiente:<br />
<br />
<br />
services:<br />
  dropbot:<br />
    environment:<br />
      - TELEGRAM_TOKEN=XXXXXXXX<br />
      - TELEGRAM_ADMIN=YYYYY<br />
      - TELEGRAM_API_HASH=MMMMMM<br />
      - TELEGRAM_API_ID=ZZZZZ<br />
      - LANGUAGE=ES<br />
      #- PARALLEL_DOWNLOADS=2<br />
      #- FILTER_PHOTO=0<br />
      #- FILTER_AUDIO=0<br />
      #- FILTER_VIDEO=0<br />
      #- FILTER_TORRENT=0<br />
      #- FILTER_EBOOK=0<br />
      #- FILTER_YOUTUBE_AUDIO=0<br />
      #- FILTER_YOUTUBE_VIDEO=0<br />
    volumes:<br />
      - /ruta/para/descargar:/downloads<br />
      #- /ruta/para/descargar/audio:/audio<br />
      #- /ruta/para/descargar/video:/video<br />
      #- /ruta/para/descargar/foto:/photo<br />
      #- /ruta/para/descargar/torrent:/torrent<br />
      #- /ruta/para/descargar/ebook:/ebook<br />
      #- /ruta/para/descargar/audios_de_youtube:/youtube_audio<br />
      #- /ruta/para/descargar/videos_de_youtube:/youtube_video<br />
    image: dgongut/dropbot:latest<br />
    container_name: dropbot<br />
    restart: always<br />
    network_mode: host<br />
    tty: true<br />
<br />
<br />
A tener en cuenta:<br />
<br />
Antes de instalar este compose tenemos que tener creado un bot de telegram:     <a href="https://www.qnapclub.es/showthread.php?tid=3968" target="_blank" rel="noopener" class="mycode_url">https://www.qnapclub.es/showthread.php?tid=3968</a><br />
<br />
En el compose anterior en los apartados TELEGRAM_TOKEN y TELEGRAM_ADMIN tendremos que poner los datos de ese bot que hemos creado.<br />
<br />
En los apartados del compose TELEGRAM_API_HASH y TELEGRAM_API_ID tendremos que poner los datos correspondientes a nuestra aplicación de telegram, podremos crear esa aplicación muy fácilmente desde aquí:<br />
<br />
<a href="https://my.telegram.org/auth" target="_blank" rel="noopener" class="mycode_url">https://my.telegram.org/auth</a><br />
<br />
Los apartados /ruta/para/descargar los tenemos que modificar poniendo la ruta de la carpeta compartida de nuestro nas en la que queremos que se descarguen los archivos.<br />
<br />
En el compose se puede ver que únicamente está activa la carpeta del docker downloads, esto quiere decir que todos los archivos sean del tipo que sean que enviemos a través del bot de telegram se descargarán en la carpeta compartida de nuestro nas que hayamos configurado para downloads del docker.<br />
<br />
Si queremos, por ejemplo, que las fotos, los torrents o los libros vayan a carpetas compartidas distintas a la de downloads tendremos que desmarcar y configurar esas rutas a esas carpetas en el compose anterior.<br />
<br />
Una vez configurado el compose a nuestro gusto podremos hacer uso del bot de telegram enviando archivos que se descargarán diréctamente en las carpetas compartidas del nas que hayamos configurado:<br />
<br />
<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="PNG Image" border="0" alt=".png" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3624" target="_blank" title="">dropbot.png</a> (Size: 80,88 KB / Downloads: 400)
<!-- end: postbit_attachments_attachment -->]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[QPKG para desplegar docker de metube]]></title>
			<link>https://www.qnapclub.es/showthread.php?tid=5621</link>
			<pubDate>Sun, 06 Jul 2025 01:28:21 +0200</pubDate>
			<dc:creator><![CDATA[<a href="https://www.qnapclub.es/member.php?action=profile&uid=148">Ganekogorta</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.qnapclub.es/showthread.php?tid=5621</guid>
			<description><![CDATA[Hola<br />
<br />
A raíz de la consulta de un usuario acerca del <a href="https://www.qnapclub.es/showthread.php?tid=5368" target="_blank" rel="noopener" class="mycode_url">docker descargador de videos / audio metube</a> he generado un paquete qpkg que lo hace por nosotros.<br />
<br />
Lo podemos de descargar del siguiente <a href="https://mega.nz/file/xxIyxQ6Y#mxOIixT_5sJPG9MxO98UwRxRb-1x1TqYo6JsMI6WSL4" target="_blank" rel="noopener" class="mycode_url">enlace de Mega</a> para máquinas x64. <br />
<br />
Podemos comprobar que no ha sido modificado si su md5 es el siguiente "bb907cfc43c5d59d67602d355018b598".<br />
<br />
La instalación es sencilla como en todos los qpkg.<br />
<br />
Vamos al app center, lo instalamos manualmente<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3617" target="_blank" title="">metubeqpkg_1.jpg</a> (Size: 22,03 KB / Downloads: 221)
<!-- end: postbit_attachments_attachment --><br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3618" target="_blank" title="">metubeqpkg_2.jpg</a> (Size: 88,45 KB / Downloads: 205)
<!-- end: postbit_attachments_attachment --><br />
<br />
activamos la casilla de Advertencia de firma digital<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3619" target="_blank" title="">metubeqpkg_3.jpg</a> (Size: 35,62 KB / Downloads: 205)
<!-- end: postbit_attachments_attachment --><br />
<br />
esperamos a que finalice la instalación<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3620" target="_blank" title="">metubeqpkg_4.jpg</a> (Size: 31,96 KB / Downloads: 199)
<!-- end: postbit_attachments_attachment --><br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3622" target="_blank" title="">metubeqpkg_5.jpg</a> (Size: 44,02 KB / Downloads: 210)
<!-- end: postbit_attachments_attachment --><br />
<br />
y una vez instalado tendremos ya el icono correspondiente en el app center.<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3621" target="_blank" title="">metubeqpkg_6.jpg</a> (Size: 5,05 KB / Downloads: 195)
<!-- end: postbit_attachments_attachment --><br />
<br />
<hr class="mycode_hr" />
Configuración inicial del docker<br />
<br />
Si vamos a la carpeta compartida "Download" veremos que tenemos dos nuevos archivos.<br />
<ul class="mycode_list"><li>-uno llamado metube.log donde está log de la actividad del la instalación, arranque y detención del docker</li>
</ul>
<ul class="mycode_list"><li>-uno oculto llamado .env_metube con una configuración base</li>
</ul>
<br />
Si editamos el .env_metube veremos el siguiente contenido<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>PUERTO=8081<br />
VIDEO=/share/Download/youtube/video<br />
AUDIO=/share/Download/youtube/audio<br />
LOG=TRUE</code></div></div><br />
<br />
Es importante respetar el orden de las líneas cuando editemos este archivo.<br />
<br />
<ol type="1" class="mycode_list"><li>Si queremos que el docker sea accesible desde otro puerto, cambiaremos el valor 8081 por un puerto libre de la nas de nuestra elección.</li>
</ol>
<ol type="1" class="mycode_list"><li>Si queremos cambiar la carpeta destino de los videos descargados cambiamos la ruta de la segunda línea.</li>
</ol>
<ol type="1" class="mycode_list"><li>Si queremos cambiar la carpeta destino de los audios descargados cambiamos la ruta de la tercera línea.</li>
</ol>
<ol type="1" class="mycode_list"><li>Si cambiamos el valor de la cuarta línea por FALSE, entonces el archivo metube.log será eliminado.</li>
</ol>
<br />
<br />
Para aplicar los cambios, hemos de detener la app desde App Center y volver a iniciarla para que se apliquen.<br />
<br />
<br />
Si tuviésemos algún problema con el archivo de configuración (.env_metube), con borrarlo, detener el docker y volver a iniciarlo, volvería a ser generado el de defecto.<br />
<br />
<hr class="mycode_hr" />
El funcionamiento de la web de este docker es muy sencillo y se describió en <a href="https://www.qnapclub.es/showthread.php?tid=5368" target="_blank" rel="noopener" class="mycode_url">este post</a>]]></description>
			<content:encoded><![CDATA[Hola<br />
<br />
A raíz de la consulta de un usuario acerca del <a href="https://www.qnapclub.es/showthread.php?tid=5368" target="_blank" rel="noopener" class="mycode_url">docker descargador de videos / audio metube</a> he generado un paquete qpkg que lo hace por nosotros.<br />
<br />
Lo podemos de descargar del siguiente <a href="https://mega.nz/file/xxIyxQ6Y#mxOIixT_5sJPG9MxO98UwRxRb-1x1TqYo6JsMI6WSL4" target="_blank" rel="noopener" class="mycode_url">enlace de Mega</a> para máquinas x64. <br />
<br />
Podemos comprobar que no ha sido modificado si su md5 es el siguiente "bb907cfc43c5d59d67602d355018b598".<br />
<br />
La instalación es sencilla como en todos los qpkg.<br />
<br />
Vamos al app center, lo instalamos manualmente<br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3617" target="_blank" title="">metubeqpkg_1.jpg</a> (Size: 22,03 KB / Downloads: 221)
<!-- end: postbit_attachments_attachment --><br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3618" target="_blank" title="">metubeqpkg_2.jpg</a> (Size: 88,45 KB / Downloads: 205)
<!-- end: postbit_attachments_attachment --><br />
<br />
activamos la casilla de Advertencia de firma digital<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3619" target="_blank" title="">metubeqpkg_3.jpg</a> (Size: 35,62 KB / Downloads: 205)
<!-- end: postbit_attachments_attachment --><br />
<br />
esperamos a que finalice la instalación<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3620" target="_blank" title="">metubeqpkg_4.jpg</a> (Size: 31,96 KB / Downloads: 199)
<!-- end: postbit_attachments_attachment --><br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3622" target="_blank" title="">metubeqpkg_5.jpg</a> (Size: 44,02 KB / Downloads: 210)
<!-- end: postbit_attachments_attachment --><br />
<br />
y una vez instalado tendremos ya el icono correspondiente en el app center.<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3621" target="_blank" title="">metubeqpkg_6.jpg</a> (Size: 5,05 KB / Downloads: 195)
<!-- end: postbit_attachments_attachment --><br />
<br />
<hr class="mycode_hr" />
Configuración inicial del docker<br />
<br />
Si vamos a la carpeta compartida "Download" veremos que tenemos dos nuevos archivos.<br />
<ul class="mycode_list"><li>-uno llamado metube.log donde está log de la actividad del la instalación, arranque y detención del docker</li>
</ul>
<ul class="mycode_list"><li>-uno oculto llamado .env_metube con una configuración base</li>
</ul>
<br />
Si editamos el .env_metube veremos el siguiente contenido<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>PUERTO=8081<br />
VIDEO=/share/Download/youtube/video<br />
AUDIO=/share/Download/youtube/audio<br />
LOG=TRUE</code></div></div><br />
<br />
Es importante respetar el orden de las líneas cuando editemos este archivo.<br />
<br />
<ol type="1" class="mycode_list"><li>Si queremos que el docker sea accesible desde otro puerto, cambiaremos el valor 8081 por un puerto libre de la nas de nuestra elección.</li>
</ol>
<ol type="1" class="mycode_list"><li>Si queremos cambiar la carpeta destino de los videos descargados cambiamos la ruta de la segunda línea.</li>
</ol>
<ol type="1" class="mycode_list"><li>Si queremos cambiar la carpeta destino de los audios descargados cambiamos la ruta de la tercera línea.</li>
</ol>
<ol type="1" class="mycode_list"><li>Si cambiamos el valor de la cuarta línea por FALSE, entonces el archivo metube.log será eliminado.</li>
</ol>
<br />
<br />
Para aplicar los cambios, hemos de detener la app desde App Center y volver a iniciarla para que se apliquen.<br />
<br />
<br />
Si tuviésemos algún problema con el archivo de configuración (.env_metube), con borrarlo, detener el docker y volver a iniciarlo, volvería a ser generado el de defecto.<br />
<br />
<hr class="mycode_hr" />
El funcionamiento de la web de este docker es muy sencillo y se describió en <a href="https://www.qnapclub.es/showthread.php?tid=5368" target="_blank" rel="noopener" class="mycode_url">este post</a>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Qpkg de Karakeep]]></title>
			<link>https://www.qnapclub.es/showthread.php?tid=5611</link>
			<pubDate>Mon, 23 Jun 2025 19:33:14 +0200</pubDate>
			<dc:creator><![CDATA[<a href="https://www.qnapclub.es/member.php?action=profile&uid=148">Ganekogorta</a>]]></dc:creator>
			<guid isPermaLink="false">https://www.qnapclub.es/showthread.php?tid=5611</guid>
			<description><![CDATA[Hola<br />
<br />
<br />
He creado un qpkg para poder desplegar <a href="https://karakeep.app" target="_blank" rel="noopener" class="mycode_url">karakeep</a> desde Container Station.<br />
<br />
Si queremos hacerlo mas manualmente y ver someramente como usar, podemos echar una ojeada a este <a href="https://www.qnapclub.es/showthread.php?tid=5608" target="_blank" rel="noopener" class="mycode_url">otro post de KaraKeep</a><br />
<br />
Lo he creado para x64 y está en el siguiente <a href="https://mega.nz/file/g5BCkKaD#90pHE9g2kGwwYTLWNBlM8PcSFUkec61d0sSJVzoSwTM" target="_blank" rel="noopener" class="mycode_url">enlace de Mega</a><br />
<br />
Los requisitos para instalarlo son pocos para una nas de QNAP:<br />
-tener instalado Container Station<br />
-que sea x86/x64.<br />
<br />
Los de ARM no he tenido tiempo de probarlo. Pero como hay varias familias, lo dejaré para mas adelante.<br />
<br />
<br />
La instalación es sencilla:<br />
<br />
1- abrimos Container Station y lanzamos una instalación manual<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3608" target="_blank" title="">karaqpkg_1.jpg</a> (Size: 22,03 KB / Downloads: 203)
<!-- end: postbit_attachments_attachment --><br />
<br />
2-Examinamos y buscamos el archivo qpkg a instalar<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3609" target="_blank" title="">karaqpkg_2.jpg</a> (Size: 82,54 KB / Downloads: 208)
<!-- end: postbit_attachments_attachment --><br />
<br />
3-Confirmamos la instalación<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3610" target="_blank" title="">karaqpkg_3.jpg</a> (Size: 47,96 KB / Downloads: 225)
<!-- end: postbit_attachments_attachment --><br />
<br />
4-Al no estar el paquete firmado, debemos hacerlo para poder continuar.<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3611" target="_blank" title="">karaqpkg_4.jpg</a> (Size: 57,98 KB / Downloads: 220)
<!-- end: postbit_attachments_attachment --><br />
<br />
5-Comienza la instalación y esperamos a que termine<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3612" target="_blank" title="">karaqpkg_5.jpg</a> (Size: 39,67 KB / Downloads: 227)
<!-- end: postbit_attachments_attachment --><br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3613" target="_blank" title="">karaqpkg_6.jpg</a> (Size: 44,02 KB / Downloads: 211)
<!-- end: postbit_attachments_attachment --><br />
<br />
6-Ya tendremos la aplicación iniciada/iniciandose en el App Center<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3614" target="_blank" title="">karaqpkg_7.jpg</a> (Size: 121,63 KB / Downloads: 239)
<!-- end: postbit_attachments_attachment --><br />
<br />
La primera vez, hemos de dar tiempo a la aplicación ya que creará una nueva carpeta llamada "karakeep" en la carpeta compartida "Public"<br />
En esa carpeta tendremos un archivo "kara.log" donde quedan reflejados los acciones de inicio y apagado que tiene este docker.<br />
<br />
Por ejemplo tras el primer inicio tendremos algo como esto<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>2025/06/22 17:09:00 Creo la carpeta karakeep en la carpeta compartida Public<br />
2025/06/22 17:09:00 Creao el archivo .env patron en /share/CACHEDEV1_DATA/Public/karakeep</code></div></div><br />
<br />
También hay un archivo oculto llamado ".env" que podemos y <span style="font-weight: bold;" class="mycode_b">debemos editarlo</span> para adaptarlo a nuestra instalación.<br />
Para editarlo lo mejor es detener el qpkg desde el App Center.<br />
<br />
Lo editamos y veremos que tiene el siguiente contenido:<br />
<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>KARAKEEP_VERSION=0.25.0<br />
NEXTAUTH_SECRET=la_cadena_alfanumerica que salio al escribir openssl rand -base64 36<br />
MEILI_MASTER_KEY=la_OTRA_cadena_alfanumerica que salio al escribir openssl rand -base64 36<br />
NEXTAUTH_URL=http://ip_local_nas:3000 # o la dns publica<br />
DISABLE_SIGNUPS=false</code></div></div><br />
Las dos cadenas de contraseñas las obtenemos el comando de consola "openssl rand -base64 36"<br />
Y en el campo de URL pongo <a href="http://192.168.4.35:3000" target="_blank" rel="noopener" class="mycode_url">http://192.168.4.35:3000</a> o <a href="https://karadura.midominio.eu" target="_blank" rel="noopener" class="mycode_url">https://karadura.midominio.eu</a> en funcion de la ip interna de mi nas o una dns que apunte nuestro docker.<br />
<br />
Con los cambio el archivo ".env" quedaría como sigue:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>KARAKEEP_VERSION=0.25.0<br />
NEXTAUTH_SECRET=63fD9KD8MaaR/Zi10q3GG17htjAN+4ak0+Dfox+jvXddZYW8<br />
MEILI_MASTER_KEY=8ybQIFvdQfW6Eb/B0CurrlvHMGcHnzQlFXZGjqQ1bVkbkbZp<br />
NEXTAUTH_URL=http://192.168.4.35:3000<br />
DISABLE_SIGNUPS=false</code></div></div><br />
Ahora lanzamos por segunda vez la aplicación desde el App Center y tras unos instantes se nos desplegarán y activarán tres dockers<br />
<br />
A partir de ese momento ya tenemos activa nuestra aplicación local KaraKeep yendo a <a href="http://192.168.4.35:3000" target="_blank" rel="noopener" class="mycode_url">http://192.168.4.35:3000</a><br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3615" target="_blank" title="">karaqpkg_8.jpg</a> (Size: 17,45 KB / Downloads: 218)
<!-- end: postbit_attachments_attachment --><br />
<br />
Podemos eliminar desde el App Center, pero recordad que deberíamos eliminar la carpeta "karakeep" que está en Public si lo queremos hacer en su totalidad.<br />
<br />
Y con esto ya podemos jugar con este superbloc de notas KaraKeep]]></description>
			<content:encoded><![CDATA[Hola<br />
<br />
<br />
He creado un qpkg para poder desplegar <a href="https://karakeep.app" target="_blank" rel="noopener" class="mycode_url">karakeep</a> desde Container Station.<br />
<br />
Si queremos hacerlo mas manualmente y ver someramente como usar, podemos echar una ojeada a este <a href="https://www.qnapclub.es/showthread.php?tid=5608" target="_blank" rel="noopener" class="mycode_url">otro post de KaraKeep</a><br />
<br />
Lo he creado para x64 y está en el siguiente <a href="https://mega.nz/file/g5BCkKaD#90pHE9g2kGwwYTLWNBlM8PcSFUkec61d0sSJVzoSwTM" target="_blank" rel="noopener" class="mycode_url">enlace de Mega</a><br />
<br />
Los requisitos para instalarlo son pocos para una nas de QNAP:<br />
-tener instalado Container Station<br />
-que sea x86/x64.<br />
<br />
Los de ARM no he tenido tiempo de probarlo. Pero como hay varias familias, lo dejaré para mas adelante.<br />
<br />
<br />
La instalación es sencilla:<br />
<br />
1- abrimos Container Station y lanzamos una instalación manual<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3608" target="_blank" title="">karaqpkg_1.jpg</a> (Size: 22,03 KB / Downloads: 203)
<!-- end: postbit_attachments_attachment --><br />
<br />
2-Examinamos y buscamos el archivo qpkg a instalar<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3609" target="_blank" title="">karaqpkg_2.jpg</a> (Size: 82,54 KB / Downloads: 208)
<!-- end: postbit_attachments_attachment --><br />
<br />
3-Confirmamos la instalación<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3610" target="_blank" title="">karaqpkg_3.jpg</a> (Size: 47,96 KB / Downloads: 225)
<!-- end: postbit_attachments_attachment --><br />
<br />
4-Al no estar el paquete firmado, debemos hacerlo para poder continuar.<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3611" target="_blank" title="">karaqpkg_4.jpg</a> (Size: 57,98 KB / Downloads: 220)
<!-- end: postbit_attachments_attachment --><br />
<br />
5-Comienza la instalación y esperamos a que termine<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3612" target="_blank" title="">karaqpkg_5.jpg</a> (Size: 39,67 KB / Downloads: 227)
<!-- end: postbit_attachments_attachment --><br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3613" target="_blank" title="">karaqpkg_6.jpg</a> (Size: 44,02 KB / Downloads: 211)
<!-- end: postbit_attachments_attachment --><br />
<br />
6-Ya tendremos la aplicación iniciada/iniciandose en el App Center<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3614" target="_blank" title="">karaqpkg_7.jpg</a> (Size: 121,63 KB / Downloads: 239)
<!-- end: postbit_attachments_attachment --><br />
<br />
La primera vez, hemos de dar tiempo a la aplicación ya que creará una nueva carpeta llamada "karakeep" en la carpeta compartida "Public"<br />
En esa carpeta tendremos un archivo "kara.log" donde quedan reflejados los acciones de inicio y apagado que tiene este docker.<br />
<br />
Por ejemplo tras el primer inicio tendremos algo como esto<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>2025/06/22 17:09:00 Creo la carpeta karakeep en la carpeta compartida Public<br />
2025/06/22 17:09:00 Creao el archivo .env patron en /share/CACHEDEV1_DATA/Public/karakeep</code></div></div><br />
<br />
También hay un archivo oculto llamado ".env" que podemos y <span style="font-weight: bold;" class="mycode_b">debemos editarlo</span> para adaptarlo a nuestra instalación.<br />
Para editarlo lo mejor es detener el qpkg desde el App Center.<br />
<br />
Lo editamos y veremos que tiene el siguiente contenido:<br />
<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>KARAKEEP_VERSION=0.25.0<br />
NEXTAUTH_SECRET=la_cadena_alfanumerica que salio al escribir openssl rand -base64 36<br />
MEILI_MASTER_KEY=la_OTRA_cadena_alfanumerica que salio al escribir openssl rand -base64 36<br />
NEXTAUTH_URL=http://ip_local_nas:3000 # o la dns publica<br />
DISABLE_SIGNUPS=false</code></div></div><br />
Las dos cadenas de contraseñas las obtenemos el comando de consola "openssl rand -base64 36"<br />
Y en el campo de URL pongo <a href="http://192.168.4.35:3000" target="_blank" rel="noopener" class="mycode_url">http://192.168.4.35:3000</a> o <a href="https://karadura.midominio.eu" target="_blank" rel="noopener" class="mycode_url">https://karadura.midominio.eu</a> en funcion de la ip interna de mi nas o una dns que apunte nuestro docker.<br />
<br />
Con los cambio el archivo ".env" quedaría como sigue:<br />
<div class="codeblock"><div class="title">Code:</div><div class="body" dir="ltr"><code>KARAKEEP_VERSION=0.25.0<br />
NEXTAUTH_SECRET=63fD9KD8MaaR/Zi10q3GG17htjAN+4ak0+Dfox+jvXddZYW8<br />
MEILI_MASTER_KEY=8ybQIFvdQfW6Eb/B0CurrlvHMGcHnzQlFXZGjqQ1bVkbkbZp<br />
NEXTAUTH_URL=http://192.168.4.35:3000<br />
DISABLE_SIGNUPS=false</code></div></div><br />
Ahora lanzamos por segunda vez la aplicación desde el App Center y tras unos instantes se nos desplegarán y activarán tres dockers<br />
<br />
A partir de ese momento ya tenemos activa nuestra aplicación local KaraKeep yendo a <a href="http://192.168.4.35:3000" target="_blank" rel="noopener" class="mycode_url">http://192.168.4.35:3000</a><br />
<br />
<!-- start: postbit_attachments_attachment -->
<br /><!-- start: attachment_icon -->
<img src="https://www.qnapclub.es/images/attachtypes/image.png" title="JPG Image" border="0" alt=".jpg" />
<!-- end: attachment_icon -->&nbsp;&nbsp;<a href="attachment.php?aid=3615" target="_blank" title="">karaqpkg_8.jpg</a> (Size: 17,45 KB / Downloads: 218)
<!-- end: postbit_attachments_attachment --><br />
<br />
Podemos eliminar desde el App Center, pero recordad que deberíamos eliminar la carpeta "karakeep" que está en Public si lo queremos hacer en su totalidad.<br />
<br />
Y con esto ya podemos jugar con este superbloc de notas KaraKeep]]></content:encoded>
		</item>
	</channel>
</rss>