В современных реалиях многие задумываются о переезде с крупного файлового хранилища (такого как Google Drive или Яндекс Диск) на личное, например, чтобы иметь полный контроль над собственными файлами. Одним из популярных решений является Nextcloud, однако он включает в себя функционал, который не всегда может быть полезен, если всё, что вам нужно – хранить, просматривать и синхронизировать файлы. В таком случае может подойти аналог – Seafile, фокус которого именно на этом, а наличие как мобильных, так и десктопных приложений для большинства популярных платформ позволяет скачать Seafile, чтобы удобно работать с файлами на любых устройствах.
В данной статье мы расскажем, как установить сервер Seafile Community Edition и начать работу с ним.
Установка Seafile
Seafile можно установить как в контейнере, так и напрямую – в рамках данной статьи мы покажем первый способ, используя готовое решение Docker, однако вы можете использовать любой VPS-сервер с установленными docker и docker-compose.
Установка Seafile возможна на сервер с Ubuntu или другим дистрибутивом. Seafile имеет следующие минимальные системные требования:
- 2 ядра
- 2 ГБ оперативной памяти
- 10 ГБ свободного места (рекомендуется больше для хранения файлов)
В первую очередь проверим доступность команд docker и docker-compose:
docker --version && docker compose version
Docker version 28.0.2, build 0442a73
Docker Compose version v2.34.0Создайте директорию под Seafile и перейдите в нее:
mkdir /opt/seafile
cd /opt/seafileЗагрузите конфигурационные файлы нужной версии (в данном примере – 12):
wget -O .env https://manual.seafile.com/12.0/repo/docker/ce/env
wget https://manual.seafile.com/12.0/repo/docker/seadoc.yml
wget https://manual.seafile.com/12.0/repo/docker/ce/seafile-server.yml
wget https://manual.seafile.com/12.0/repo/docker/caddy.ymlСгенерируйте случайную строку для приватного ключа JWT:
python -m uuid -u uuid4После чего откройте файл .env удобным вам текстовым редактором – например, vim:
vim .envВ файле потребуется изменить значения следующих переменных:
INIT_SEAFILE_MYSQL_ROOT_PASSWORD– root-пароль mysql, нужен только при первом деплое.SEAFILE_MYSQL_DB_PASSWORD– пароль пользователяseafileMySQL.JWT_PRIVATE_KEY– сгенерированное ранее значение приватного ключа JWT.SEAFILE_SERVER_HOSTNAME– домен или имя хоста, на котором будет расположен Seafile.INIT_SEAFILE_ADMIN_EMAIL– первоначальный email администратора Seafile.INIT_SEAFILE_ADMIN_PASSWORD– первоначальный пароль администратора Seafile.- При желании измените значение
SEAFILE_SERVER_PROTOCOLнаhttps, чтобы включить работу по защищенному протоколу.
При необходимости отредактируйте другие параметры, их описание вы можете посмотреть в документации.
Затем сохраните файл и закройте редактор. Для запуска Seafile используйте следующую команду:
docker compose up -dПосле чего перейдите по домену, указанному в конфигурационном файле. В случае успешного запуска откроется страница авторизации:

Первые шаги в работе с Seafile
Авторизуйтесь, используя данные администратора, указанные в файле .env. Откроется панель управления:

Изменение языка интерфейса
По умолчанию при установке Seafile используется английский язык интерфейса. Чтобы изменить его, нажмите на иконку пользователя в правом верхнем углу, а затем выберите “Settings”:

Затем перейдите в раздел “Language”:

И в выпадающем меню выберите нужный язык:

Настройки Seafile сохранятся автоматически.
Добавление пользователя
Для добавления нового пользователя перейдите в раздел администрирования, нажав на иконку пользователя и выбрав соответствующий пункт:

Откройте раздел “Пользователи”:

И нажмите “Добавить пользователя”, после чего заполните появившуюся форму и подтвердите действие:

Заключение
В данной статье мы кратко рассказали про установку Seafile с помощью Docker, а также первые шаги в работе с ним.
Если возникнут вопросы, напишите нам, пожалуйста, тикет из панели управления аккаунта (раздел “Помощь и поддержка”), а если вы захотите подискутировать, что лучше, Seafile vs Nextcloud, или обсудить наши продукты с коллегами по цеху и сотрудниками облачной IT-платформы Beget – ждем вас в нашем сообществе в Telegram.