← Todas las plantillas · Archivos y documentos
Despliega Seafile en un clic
Sincronización y uso compartido de archivos: bibliotecas sincronizadas con tus equipos y teléfonos, con historial y enlaces
Una alternativa autoalojada a Dropbox y Google Drive.
¿Qué es Seafile?
Seafile es software de código abierto para sincronizar y compartir archivos, que se usa en lugar de Dropbox o Google Drive. Los archivos viven en bibliotecas: cada una se sincroniza con la app de escritorio en Windows, macOS y Linux, y las apps para iOS y Android permiten explorarlas y subir archivos. Seafile guarda el historial de cada archivo, así que una versión anterior o un archivo eliminado se pueden recuperar, y una biblioteca se puede cifrar con su propia contraseña, de modo que el servidor solo guarda lo que no puede leer.
Las bibliotecas se comparten con usuarios y grupos, en solo lectura o para editar, y un enlace para compartir da un archivo o una carpeta a cualquiera, con contraseña y fecha de vencimiento si quieres; un enlace de subida permite que otros dejen archivos. Seafile es conocido por sincronizar grandes cantidades de archivos con rapidez: solo transfiere los bloques de un archivo que cambiaron.
Esta plantilla ejecuta la edición Community de la imagen oficial de Seafile, versión 14.0, con MariaDB y una caché Redis. Las bases de datos y el administrador, con el correo y la contraseña que indicas, se crean en el primer arranque; el registro sigue desactivado. SeaDoc, el editor de documentos en línea de Seafile, y sus servidores de notificaciones y de metadatos no se incluyen.
Hosting de Seafile en Pethost
- Inicias sesión en Pethost con una passkey, GitHub o Google. ¿Aún no tienes máquina? Eliges un plan, y el enlace espera hasta que esté lista.
- Nuevo proyecto se abre en Seafile. Rellenas lo que pide y haces clic en Crear proyecto: Correo electrónico, Contraseña de administrador.
- En un par de minutos Seafile está en marcha en su propia dirección con HTTPS. Sus secretos se generan al azar, y sus datos entran en el backup de cada noche.
- Es un proyecto como cualquier otro: tú o tu agente lo pueden cambiar, volver a una versión anterior o restaurar.
Preguntas sobre Seafile
¿Seafile es gratis y de código abierto?
Sí. La edición Community de Seafile es de código abierto: el servidor bajo la AGPL-3.0 y su interfaz web, Seahub, bajo la Apache License 2.0. Seafile Ltd. también vende una edición Professional con funciones para organizaciones más grandes.
Seafile frente a Nextcloud: ¿cuál debería elegir?
Seafile hace una sola cosa, sincronizar y compartir archivos, y es conocido por sincronizar rápido con poca memoria. Nextcloud es una suite más grande, con calendario, contactos, ofimática y muchas apps alrededor de sus archivos, y necesita más recursos.
¿Seafile cifra mis archivos?
Puede hacerlo. Una biblioteca cifrada se cifra en tu equipo con una contraseña que eliges, y el servidor solo guarda los bloques cifrados. Sin la contraseña, ni siquiera el administrador del servidor puede leer los archivos.
¿Qué apps funcionan con Seafile?
El cliente de sincronización de escritorio de Seafile para Windows, macOS y Linux; SeaDrive, que muestra las bibliotecas como una unidad de red sin descargarlas antes; y las apps de Seafile para iOS y Android. Cada uno inicia sesión con la dirección del servidor y tu cuenta.
¿Puedo recuperar en Seafile un archivo eliminado o una versión anterior?
Sí. Cada biblioteca guarda el historial de sus archivos: “Historial” en un archivo muestra sus versiones anteriores, y la papelera de la biblioteca conserva los archivos y las carpetas eliminados para restaurarlos. Cuánto tiempo se conserva el historial se configura en cada biblioteca.
¿Cuánta memoria y disco necesita Seafile?
Seafile ocupa unos 750 MB de memoria con MariaDB y su caché; tus archivos ocupan lo que ocupan, más su historial. En Pethost le basta el plan Starter, y queda sitio para otras apps a su lado.
El archivo Docker Compose de Seafile
La plantilla es este compose.yaml y las variables que se escriben en el .env del proyecto al crearlo. Pethost ejecuta el archivo tal como está escrito.
Contenedores: seafile (seafileltd/seafile-mc:14.0-latest), db (mariadb:10.11), redis (redis:8-alpine).
Volúmenes, en el backup de cada noche: data, db.
services:
seafile:
image: seafileltd/seafile-mc:14.0-latest
restart: unless-stopped
environment:
SEAFILE_SERVER_HOSTNAME: ${HOST}
# HTTPS ends at the machine's proxy: Seafile writes https:// into its links.
SEAFILE_SERVER_PROTOCOL: https
SITE_ROOT: /
CSRF_TRUSTED_ORIGINS: ${URL}
JWT_PRIVATE_KEY: ${JWT_PRIVATE_KEY}
TIME_ZONE: Etc/UTC
SEAFILE_MYSQL_DB_HOST: db
SEAFILE_MYSQL_DB_PORT: "3306"
SEAFILE_MYSQL_DB_USER: seafile
SEAFILE_MYSQL_DB_PASSWORD: ${DB_PASSWORD}
SEAFILE_MYSQL_DB_CCNET_DB_NAME: ccnet_db
SEAFILE_MYSQL_DB_SEAFILE_DB_NAME: seafile_db
SEAFILE_MYSQL_DB_SEAHUB_DB_NAME: seahub_db
# The first start makes the databases with MariaDB's root, and the admin from the fields;
# later starts read neither. Seafile has no sign-up unless an admin turns it on.
INIT_SEAFILE_MYSQL_ROOT_PASSWORD: ${DB_ROOT_PASSWORD}
INIT_SEAFILE_ADMIN_EMAIL: ${ADMIN_EMAIL}
INIT_SEAFILE_ADMIN_PASSWORD: ${ADMIN_PASSWORD}
CACHE_PROVIDER: redis
REDIS_HOST: redis
REDIS_PORT: "6379"
REDIS_PASSWORD: ""
ENABLE_GO_FILESERVER: "true"
# SeaDoc, the notification server and the metadata server run as containers of their own,
# which this template leaves out.
ENABLE_SEADOC: "false"
ENABLE_NOTIFICATION_SERVER: "false"
ENABLE_METADATA_MANAGEMENT: "false"
ENABLE_SEAFDAV: "false"
NON_ROOT: "false"
SEAFILE_LOG_TO_STDOUT: "true"
volumes:
- data:/shared
healthcheck:
test: ["CMD-SHELL", "curl -fsS -o /dev/null http://localhost:80/api2/ping/"]
interval: 15s
timeout: 10s
retries: 20
start_period: 120s
depends_on:
db:
condition: service_healthy
redis:
condition: service_started
db:
image: mariadb:10.11
restart: unless-stopped
environment:
MARIADB_ROOT_PASSWORD: ${DB_ROOT_PASSWORD}
MARIADB_AUTO_UPGRADE: "1"
volumes:
- db:/var/lib/mysql
healthcheck:
test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"]
interval: 10s
timeout: 5s
retries: 20
start_period: 30s
# Seafile's cache: nothing in it is kept.
redis:
image: redis:8-alpine
restart: unless-stopped
command: ["redis-server", "--save", "", "--appendonly", "no", "--maxmemory", "64mb", "--maxmemory-policy", "allkeys-lru"]
volumes:
data:
db:
Más en Archivos y documentos
- NextcloudSincronización de archivos, calendario y contactos en tu propio servidor
- Paperless-ngxUn archivo digital de documentos con OCR y búsqueda de texto completo
- BentoPDFHerramientas PDF en el navegador: unir, dividir, comprimir, firmar, convertir y editar, sin que los archivos salgan de él
- copypartyUn servidor de archivos en el navegador: subidas reanudables, reproductor multimedia y enlaces para compartir, con WebDAV
- GopeedUn gestor de descargas rápido en el navegador: HTTP, BitTorrent y enlaces magnet, con extensiones
- OpenListUna sola lista de archivos sobre muchos almacenamientos: nubes, S3, WebDAV y más, para explorar, previsualizar y compartir en el navegador