FoundryVTT (Español)
Foundry VTT es un software independiente creada para jugar a juegos de rol de mesa, que usa una aplicación con multitud de funciones, moderna e instalable en un servidor propio, a la que los jugadores se conectan mediante un navegador.
Foundry VTT es software privativo. Se debe adquirir una licencia de pago antes de usar el software.
Estas instrucciones explican una de las formas posibles de instalar Foundry VTT en un sistema Archlinux. Al final del proceso, el servicio debería ser accesible desde un navegador usando una conexión segura.
Requisitos
Antes de instalar Foundry VTT, deberías tener una instalación que funcione de nginx and Node.js.
Crear directorios para Foundry VTT
En primer lugar, crea estos directorios para instalar el software y sus datos. Puedes crear estos directorios en /home, por ejemplo:
# mkdir -p /home/foundry/{foundryvtt,foundrydata}
Crear un usuario de sistema
Foundry VTT será ejecutado por un usuario de sistema. Primero, crea un usuario de sistema con el nombre foundry o cualquier otro nombre.
# useradd -r -s /usr/bin/nologin foundry
Descargar Foundry VTT
Una vez estés registrado en foundryvtt.com y hayas comprado una licencia, necesitas ir a la sección "Purchased Software Licenses" de tu perfil de foundryvtt.com. Allí verás diferentes paquetes para el software. Necesitas descargar la versión para Node.js.
Puedes ver un pequeño icono de 'cadena' junto a los enlaces de descarga de la página de descarga. Pulsar en este icono de cadena genera un enlace temporal que se puede usar para descargar Foundry VTT desde un terminal usango wget.
Cuando descargues el enlace usando una utilidad de línea de comandos como wget es importante poner el enlace entre comillas dobles. Esto asegura que el enlace sea leído correctamente por el comando. Por ejemplo:
# wget -O foundryvtt.zip "https://tu-enlace-de-descarga-de-foundry-vtt.com-aqui/"
El fichero descargado debe ser descomprimido al directorio foundryvtt que has creado antes. Una vez este directorio tenga su contenido, necesitas establecer los permisos apropiados:
# unzip foundryvtt.zip -d /home/foundry/foundryvtt # chown -R foundry:foundry /home/foundry/foundryvtt
Ejecutar el software sin un proxy
Ahora puedes comprobar si el software funciona. Ejecuta el servidor con el usuario foundry:
# su - foundry -s /bin/bash -c "node foundryvtt/resources/app/main.js --dataPath=/home/foundry/foundrydata"
Mientras esté en ejecución, deberías poder conectarte al servidor desde un navegador, usando el puerto 30000. Si lo deseas, puedes aprovechar para establecer tu contraseña de admin y tu clave de licencia.
Después, detén el servidor usando Ctrl-c.
Crear un servicio para systemd
Una de las formas de ejecutar el software como demonio es usar Systemd. Puedes crear un servicio sencillo para Foundry VTT:
# nano /etc/systemd/system/foundryvtt.service
Este es un ejemplo de esta unidad de systemd:
[Unit] Description=Foundry VTT [Service] Type=simple ExecStart=node /home/foundry/foundryvtt/resources/app/main.js --dataPath=/home/foundry/foundrydata Restart=on-failure User=foundry [Install] WantedBy=multi-user.target
Como se sugiere en las instrucciones de instalación, edita las opciones del software para prepararlo para que acepte conexiones de un servidor proxy:
# nano /home/foundry/foundrydata/Config/options.json
Configura las siguientes opciones, dejando las demás como están:
"hostname": "your.hostname.com", "routePrefix": null, "sslCert": null, "sslKey": null, "port": 30000, "proxyPort": 443, "proxySSL": true
Configurar nginx
Para configurar un servidor proxy con nginx para Foundry VTT puedes usar este ejemplo de la documentación oficial:
# This goes in a file within /etc/nginx/sites-available/. By convention, # the filename would be either "your.domain.com" or "foundryvtt", but it # really does not matter as long as it's unique and descriptive for you. # Define Server server { # Enter your fully qualified domain name or leave blank server_name your.hostname.com; # Listen on port 443 using SSL certificates listen 443 ssl; ssl_certificate "/etc/letsencrypt/live/your.hostname.com/fullchain.pem"; ssl_certificate_key "/etc/letsencrypt/live/your.hostname.com/privkey.pem"; # Sets the Max Upload size to 300 MB client_max_body_size 300M; # Proxy Requests to Foundry VTT location / { # Set proxy headers proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; # These are important to support WebSockets proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "Upgrade"; # Make sure to set your Foundry VTT port number proxy_pass http://localhost:30000; } } # Optional, but recommend. Redirects all HTTP requests to HTTPS for you server { if ($host = your.hostname.com) { return 301 https://$host$request_uri; } listen 80; listen [::]:80; server_name your.hostname.com; return 404; }
Puedes conseguir tus certificados usando cerbot.
Ejecutar el servicio
Ahora puedes iniciar y habilitar tanto Foundry VTT como nginx:
# systemctl start foundryvtt # systemctl enable foundryvtt # systemctl start nginx # systemctl enable nginx
En este punto deberías poder acceder a tu servidor desde un navegador usando https, con el puerto 443 por defecto (ejemplo:https://your.hostname.com).