Instalação Seafile · 4 min read · Nov 10, 2025
Instalando Seafile 6.3.2 dentro do ISPConfig 3.1

Seafile é um sistema de armazenamento de arquivos baseado em nuvem de código aberto, semelhante ao Dropbox e Box. A diferença é que o Seafile pode ser implantado no próprio sistema do cliente. Isso proporciona um maior fator de segurança, pois as senhas são trocadas apenas entre o cliente que configurou o sistema e seus próprios usuários, em vez de uma empresa de hospedagem em nuvem corporativa.
Existem alguns tutoriais de configuração do servidor Seafile para ISPConfig, mas nenhum que não exigisse uma boa parte da edição dos arquivos que realmente deveriam ser deixados em paz, conforme as recomendações dos desenvolvedores do ISPConfig. Embora esta configuração seja escrita para Ubuntu 18.04 LTS e ISPConfig 3, pode ser seguida para outras distribuições. Esta solução funciona para mim, mas nenhuma garantia ou garantia é expressa ou implícita.
Presume-se que o leitor deseje implantar o Seafile usando MySQL e Apache (também https). Também se presume que você pode usar funcionalmente o ISPConfig, pois este não é um tutorial do ISPConfig.
1 Configurar o Site
Abra seu painel de controle de hospedagem ISPConfig, clique na guia Sites e crie um novo site. Você deve garantir que selecione Nenhum para Subdomínio Automático, SSL, SSL Let’s Encrypt e Fast-CGI para PHP. Embora você possa tecnicamente usar um site existente, criar um novo funciona melhor, pois nos permite manter todos os arquivos da nuvem separados de outros sites. Isso também é necessário para usar o painel do ISPConfig para alterações de configuração.
No painel de configuração do site, clique na guia Opções e insira o seguinte na seção Diretivas do Apache:
Alias /media /var/www/seafile.myseafile.com/private/seafile/seafile-server-latest/seahub/media
RewriteEngine On
Require all granted
# seafile httpserver
#
ProxyPass /seafhttp http://127.0.0.1:8082
ProxyPassReverse /seafhttp http://127.0.0.1:8082
RewriteRule ^/seafhttp - [QSA,L]
#
# seahub
#
SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1
ProxyPass / http://127.0.0.1:8000/
ProxyPassReverse / http://127.0.0.1:8000/
Você também deve criar um usuário shell para este site, pois será necessário em breve.

2 Criar Bancos de Dados
No painel de Sites do ISPConfig, selecione Usuário do Banco de Dados e Adicionar novo Usuário. Crie um único usuário por cliente que gerenciará os bancos de dados seafile desse cliente.
Após a criação do usuário do banco de dados, clique em Bancos de Dados e Adicionar novo Banco de Dados. Você precisará adicionar três bancos de dados separados: ccnetdb, seafiledb, seahubdb


3 Baixar e Instalar o software Seafile
Existem alguns pacotes necessários que precisamos instalar. Acesse seu servidor via SSH com um usuário que tenha permissões suficientes para instalar software.
apt-get install python2.7 python-setuptools python-simplejson python-pil python-mysqldb python-flupPrefiro ter todos os meus servidores executando dentro do diretório privado em vez do diretório da web, então vamos configurar assim. Acesse o servidor com o nome de usuário que criamos acima.
cd private
mkdir seafile
cd seafile
wget https://download.seadrive.org/seafile-server_6.3.2_x86-64.tar.gz
ou para 32 bits
wget https://download.seadrive.org/seafile-server_6.2.5_i386.tar.gz
tar zxvf seafile-server_6.3.2_x86-64.tar.gz
mkdir installed
mv seafile-server_* installed
cd seafile-server-*
./setup-seafile-mysql.shNeste ponto, você precisará responder às perguntas solicitadas conforme se relacionam ao seu sistema e instalação. Quando chegar à seção intitulada Por favor, escolha uma maneira de inicializar os bancos de dados seafile, você precisará selecionar 2 e inserir as informações do banco de dados da sua configuração do ISPConfig.
4 Execução Inicial
É hora de iniciar o seafile e garantir que a configuração inicial esteja funcionando.
./seafile.sh start
./seahub.sh startApós iniciar os serviços, abra seu navegador da web e navegue até o endereço do site que você criou acima com a porta 8000.
5 Configuração do Apache
Agora modifique o SERVICE_URL em /path/to/seafile-server/ccnet/ccnet.conf
SERVICE_URL = https://www.myseafile.comTambém precisaremos modificar o FILE_SERVER_ROOT em /path/to/seafile-server/seahub_settings.py
FILE_SERVER_ROOT = 'https://www.myseafile.com/seafhttp'Reinicie o Apache.
sudo service apache2 restartReinicie os serviços do Seafile.
./seafile.sh start
./seahub.sh start6 Iniciar serviços automaticamente
Como o objetivo aqui é manter tudo contido com o ISPConfig, em vez de criar um serviço de inicialização, vamos adicionar o script seafile aos trabalhos cron dos usuários. Naturalmente, você precisará garantir que o cliente tenha a capacidade de adicionar trabalhos cron completos.
Crie um arquivo de inicialização:
cd ~/private/seafile
touch startSeafile.sh
chmod +x startSeafile.shCole o seguinte código no script startSeafile.sh:
#!/bin/bash
# Altere o valor de "seafile_dir" para o seu caminho de instalação do seafile
seafile_dir=/var/www/clients/client1/web2/private/seafile
script_path=${seafile_dir}/seafile-server-latest
seafile_init_log=${seafile_dir}/logs/seafile.init.log
seahub_init_log=${seafile_dir}/logs/seahub.init.log
## O comando Sleep é necessário para evitar erros do MYSQL se
## este script for executado antes que o MYSQL esteja totalmente operacional
sleep 60 &
wait %1
case "$1" in
start)
${script_path}/seafile.sh start >> ${seafile_init_log} &
wait %1
${script_path}/seahub.sh start >> ${seahub_init_log} &
wait %1
;;
restart)
${script_path}/seafile.sh restart >> ${seafile_init_log} &
wait %1
${script_path}/seahub.sh restart >> ${seahub_init_log} &
wait %1
;;
stop)
${script_path}/seafile.sh $1 >> ${seafile_init_log} &
${script_path}/seahub.sh $1 >> ${seahub_init_log}
;;
*)
echo "Uso: /etc/init.d/seafile {start|stop|restart}"
exit 1
;;
esacPara garantir que os arquivos cron sejam escritos corretamente, há algumas coisas que devem ser verificadas. Clique em Cliente -> [seu cliente] -> Limites. Certifique-se de que os Limites de Trabalho Cron estejam definidos como Cron Completo com 0 de atraso entre as execuções. Depois disso, você só precisará adicionar o único trabalho cron startServer.sh na seção Comandos a Executar do ISPConfig.
/var/www/clients/client1/web42/private/seafile/startSeafile.sh start
É isso!
Links
- ISPConfig
- Seafile
Receba novas postagens na sua caixa de entrada
Sem spam. Cancele a assinatura a qualquer momento.