Pingvin Share: comparte archivos de forma sencilla y autohospedada
Introducción
Características
- Interfaz web sencilla y amigable.
- Transferencia de archivos privada, sin almacenamiento en la nube de terceros.
- Posibilidad de personalizar el almacenamiento y apariencia.
- Configuración ligera a través de Docker.
Requisitos
- Docker y Docker Compose instalados en tu sistema.
- Un volumen accesible para almacenar los datos y las imágenes.
- Puerto disponible en tu servidor (por defecto, 3008).
Configuración
A continuación, se detalla el archivo docker-compose.yml necesario para desplegar Pingvin Share:
docker-compose.yml
services:
pingvin-share:
image: stonith404/pingvin-share # or ghcr.io/stonith404/pingvin-share
container_name: PGShare
network_mode: bridge
restart: unless-stopped
ports:
- 3008:3000
environment:
- TRUST_PROXY=true # Set to true if a reverse proxy is in front of the container
volumes:
- "/mnt/shared/PGShare/data:/opt/app/backend/data"
- "/mnt/shared/PGShare/data/images:/opt/app/frontend/public/img"
Paso a paso
-
Preparar el entorno
- Asegúrate de que Docker y Docker Compose estén instalados y funcionando correctamente.
- Crea las carpetas necesarias para almacenar los datos de la aplicación. En el ejemplo anterior:
/mnt/shared/PGShare/data: para los archivos subidos./mnt/shared/PGShare/data/images: para las imágenes de la interfaz.
-
Configurar el archivo
docker-compose.yml- Copia el código anterior en un archivo llamado
docker-compose.yml. - Personaliza las rutas del volumen según tu estructura.
- Copia el código anterior en un archivo llamado
-
Levantar el servicio
- Ejecuta el siguiente comando desde la ubicación de tu archivo
docker-compose.yml:docker-compose up -d - Esto descargará la imagen necesaria, creará el contenedor y lo pondrá en funcionamiento.
- Ejecuta el siguiente comando desde la ubicación de tu archivo
-
Acceder a Pingvin Share
- Abre un navegador web y accede a
http://<tu-servidor>:3008. - Si tienes un proxy inverso configurado, puedes acceder mediante el dominio o subdominio configurado.
- Abre un navegador web y accede a
Configuración avanzada (opcional)
- Reverse Proxy: Si usas un proxy inverso como Nginx o Caddy, asegúrate de configurar
TRUST_PROXY=trueen las variables de entorno para que funcione correctamente. - Personalización: Puedes modificar los directorios de almacenamiento para adaptarlos a tus necesidades.
Notas adicionales
- Si estás utilizando Cloudflare como proxy inverso, debes habilitar el chunkeado de archivos (dividirlos en partes) para evitar problemas con el límite de 100 MB por archivo de Cloudflare. Puedes configurarlo para que divida los archivos en partes de 70 MB, por ejemplo. Esto se puede configurar en la aplicación según tus necesidades específicas.