GNU/Linux >> Tutoriels Linux >  >> Linux

Installation de Seafile 6.3.2 dans ISPConfig 3.1

Seafile est un système de stockage de fichiers open source basé sur le cloud similaire à Dropbox &Box. La différence est que Seafile peut être déployé sur le propre système d'un client. Cela offre un plus grand facteur de sécurité car les mots de passe ne sont échangés qu'entre le client qui a configuré le système et ses propres utilisateurs plutôt qu'une société d'hébergement cloud d'entreprise.


Il existe quelques tutoriels de configuration de serveur Seafile pour ISPConfig, mais aucun n'a nécessité une bonne majorité d'édition des fichiers qui devraient vraiment être laissés seuls selon les recommandations des développeurs ISPConfig. Bien que cette configuration soit écrite pour Ubuntu 18.04 LTS et ISPConfig 3, elle peut être suivie pour d'autres distributions. Cette solution fonctionne pour moi, mais aucune garantie n'est exprimée ou implicite.

Il est supposé que le lecteur souhaite déployer Seafile en utilisant MySQL et Apache (également https). Il est également supposé que vous pouvez utiliser ISPConfig de manière fonctionnelle, car il ne s'agit pas d'un didacticiel ISPConfig.

1 site Web de configuration

Ouvrez votre panneau de configuration d'hébergement ISPConfig, cliquez sur l'onglet Sites et créez un nouveau site Web. Assurez-vous de sélectionner Aucun pour Auto-Subdomain, SSL, Let's Encrypt SSL et Fast-CGI pour PHP. Bien que vous puissiez techniquement utiliser un site Web existant, en créer un nouveau fonctionne mieux car cela nous permet de garder tous les fichiers cloud séparés des autres sites. Cela est également nécessaire pour utiliser le panneau ISPConfig pour les modifications de configuration.

Dans le panneau de configuration du site Web, cliquez sur l'onglet Options et insérez ce qui suit dans la section Directives Apache :

Alias ​​/media /var/www/seafile.myseafile.com/private/seafile/seafile-server-latest/seahub/media

RewriteEngine On


Exiger que tous soient accordés


# seafile httpserver
#
ProxyPass /seafhttp http://127.0.0.1:8082
ProxyPassReverse /seafhttp http://127.0.0.1:8082
RewriteRule ^/seafhttp - [QSA,L]
#
# seahub#SetEnvIf Autorisation "(.*)" HTTP_AUTHORIZATION=$1ProxyPass / http://127.0.0.1:8000/ProxyPassReverse / http://127.0.0.1:8000/


Vous devez également créer un utilisateur shell pour ce site car cela sera bientôt nécessaire.

2 Créer des bases de données

Dans le panneau Sites d'ISPConfig, sélectionnez Utilisateur de la base de données et Ajouter un nouvel utilisateur. Créez un seul utilisateur par client qui gérera les bases de données Seafile de ce client.




Une fois l'utilisateur de la base de données créé, cliquez sur Bases de données, et Ajouter une nouvelle base de données. Vous devrez ajouter trois bases de données distinctes : ccnetdb, seafiledb, seahubdb



3 Téléchargez et installez le logiciel Seafile

Il y a des packages requis que nous devons installer. Connectez-vous en SSH à votre serveur avec un utilisateur disposant des autorisations suffisantes pour installer le logiciel.

apt-get install python2.7 python-setuptools python-simplejson python-pil python-mysqldb python-flup

Je préfère que tous mes serveurs s'exécutent dans le répertoire privé plutôt que dans le répertoire Web, nous allons donc configurer en tant que tel. SSH dans le serveur avec le nom d'utilisateur que nous avons créé ci-dessus.

cd private
mkdir seafile
cd seafile

wget https://download.seadrive.org/seafile-server_6.3.2_x86-64.tar.gz
    ou pour 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 installé
mv seafile-server_* installé

cd seafile-server-*
./setup-seafile-mysql.sh

À ce stade, vous devrez répondre aux questions posées concernant votre système et votre installation. Lorsque vous arrivez à la section intitulée Veuillez choisir un moyen d'initialiser les bases de données seafile, vous devez sélectionner 2 et saisir les informations de base de données à partir de votre configuration ISPConfig.

4 Exécution initiale

Il est temps de démarrer seafile et de vous assurer que la configuration initiale fonctionne.

./seafile.sh start
./seahub.sh start

Après avoir démarré les services, ouvrez votre navigateur Web et accédez à l'adresse du site Web que vous avez créée ci-dessus avec le port 8000.

http://192.168.1.111:8000/

5 Configuration d'Apache

Modifiez maintenant SERVICE_URL dans /path/to/seafile-server/ccnet/ccnet.conf

SERVICE_URL =https://www.myseafile.com

Nous devrons également modifier le FILE_SERVER_ROOT dans /path/to/seafile-server/seahub_settings.py

FILE_SERVER_ROOT ='https://www.myseafile.com/seafhttp'

Redémarrez Apache.

redémarrage du service sudo apache2

Redémarrez les services Seafile.

./seafile.sh start
./seahub.sh start

6 Démarrer les services automatiquement 

Étant donné que l'objectif ici est de tout conserver avec ISPConfig, plutôt que de créer un service de démarrage, nous allons ajouter le script seafile aux tâches cron des utilisateurs. Naturellement, vous devrez vous assurer que le client a la possibilité d'ajouter des tâches cron complètes.

Créez un fichier de démarrage :

cd ~/private/seafile
touchez startSeafile.sh
chmod +x startSeafile.sh

Collez le code suivant dans le script startSeafile.sh :

#!/bin/bash

# Remplacez la valeur de "seafile_dir" par votre chemin d'installation de 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

## La commande sleep est nécessaire pour éviter les erreurs MYSQL si
## ce script s'exécute avant que MYSQL ne soit complètement opérationnel
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} &
attendez %1
;;
restart)
${script_path}/seafile.sh restart>> ${seafile_init_log} &
attendez %1
${script_path}/seahub.sh redémarrez>> ${seahub_init_log} &
attendez %1
;;
stop )
${script_path}/seafile.sh $1>> ${seafile_init_log} &
${script_path}/seahub.sh $1>> ${seahub_init_log}
;;
*)
echo "Usage :/etc/init.d/seafile {start|stop|restart}"
exit 1
;;
esac


Afin de s'assurer que les fichiers cron sont écrits correctement, il y a quelques points à vérifier. Cliquez sur Client -> [votre client] -> Limites. Assurez-vous que les limites des tâches Cron sont définies sur Full Cron avec un délai de 0 entre les exécutions. Après cela, vous n'aurez plus qu'à ajouter la tâche cron startServer.sh dans la section Commandes à exécuter d'ISPConfig.

/var/www/clients/client1/web42/private/seafile/startSeafile.sh start





C'est tout !

  • ISPConfig
  • Seafile

Linux
  1. Caractères génériques à l'intérieur des guillemets ?

  2. Debian – Est-il possible de déterminer ce qu'il y a dans le paquet Debian sans l'installer ?

  3. Installation de PowerShell sur Kali Linux

  4. Installation de Maven 3.0.5 dans RedHat Linux

  5. Installer g++ 7.0.1 sur Debian 8.7

Mise à jour d'ISPConfig 3.1 vers ISPConfig 3.2

Installer Elgg sur un système ISPConfig 3

Installation d'OpenVZ + gestion des machines virtuelles via ISPConfig 3 (Debian 6.0)

Le nouvel Ubuntu 18.10 vaut-il la peine d'être installé ?

Comment installer ISPConfig sur Debian 10 ?

Installer Ubuntu sur votre ordinateur portable ou PC