# FileBrowser: Explorador de archivos accesible desde el navegador

---
### Introducción

FileBrowser es un explorador de archivos accesible desde el navegador. Sirve para gestionar, mover, copiar, subir o compartir archivos fácilmente en cualquier sistema, ya sea un NAS casero o un servidor serio.

Ideal si no quieres andar con `rsync`, `scp` o terminales todo el tiempo.

---

### docker-compose.yml

```yaml
services:
  filebrowser:
    network_mode: bridge
    container_name: filebrowser
    restart: unless-stopped
    volumes:
      - '/:/srv'
      - '/path/to/filebrowser/database.db:/database.db'
      - '/path/to/filebrowser/.filebrowser.json:/filebrowser.json'
      - '/path/to/filebrowser/branding:/branding'
    environment:
      - PUID=1000
      - PGID=1000
    user: 1000:1000  
    ports:
      - '2080:80'
    image: 'filebrowser/filebrowser'
```

> Disponible en Gitea: [docker-compose.yml - FileBrowser](https://gitea.jtrapero.eu.org/R4di04kt1v3/ChronosCMPS/src/commit/1e431489ca9ff74a8a49e0570e2c162b9bf0bd7b/Almacenamiento/Filebrowser/docker-compose.yml)

---

### ¿Qué hace cada parte?

* **Imagen:** oficial (`filebrowser/filebrowser`).
* **Red:** `bridge`, suficiente para uso general.
* **Volúmenes:**

  * `/:/srv` → acceso completo al sistema (útil pero sensible).
  * Los demás → para configuración, base de datos y personalización visual.
* **Permisos:** PUID/PGID y `user` aseguran acceso correcto a los archivos.
* **Puerto:** 2080 en el host para acceder vía web.
* **Reinicio:** automático salvo que se pare manualmente.

---

### Primeros pasos

1. Lanza el contenedor:

```bash
docker-compose up -d
```

2. Accede desde el navegador:

```
http://<IP_DEL_SERVIDOR>:2080
```

3. Administra usuarios, permisos, carpetas, y apariencia desde la web.

---

### Recomendaciones de seguridad

Debido a que FileBrowser puede acceder a todo el sistema si se configura así (`/:/srv`), se recomienda protegerlo tras un sistema de autenticación centralizada como **Authentik**. Puedes desplegarlo fácilmente y proteger el acceso siguiendo estas guías:

* [Authentik - Instalación](https://wiki.jtrapero.eu.org/books/contenedores-instalacion/page/authentik-plataforma-de-autenticacion-y-autorizacion-centralizada)
* [Authentik - Proteger aplicaciones web](https://wiki.jtrapero.eu.org/books/contenedores-configuracion/page/authentik-proteger-nuestras-aplicaciones-web)

> Si configuras Authentik como proveedor de acceso, y quieres que los enlaces compartidos públicamente funcionen sin login, deberás excluirlos en la aplicación como rutas sin autenticación. Añade esto en los "Unauthenticated Paths":

```
^/share/*
```

Así podrás seguir compartiendo archivos sin exponer el resto de la aplicación.

---

### ¿Merece la pena?

Sí, si buscas:

* Gestión web de archivos sin complicaciones.
* Interfaz limpia, rápida y personalizable.
* Acceso remoto seguro.
* Multiusuario con permisos por grupo o carpeta.
* Alternativa a herramientas pesadas tipo Nextcloud solo para archivos.

---

### Referencias

* [Sitio oficial de FileBrowser](https://filebrowser.org/)
* [Repositorio en GitHub](https://github.com/filebrowser/filebrowser)