GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Installation von Seafile 6.3.2 in ISPConfig 3.1

Seafile ist ein Cloud-basiertes Open-Source-Dateispeichersystem, ähnlich wie Dropbox &Box. Der Unterschied besteht darin, dass Seafile auf dem eigenen System des Kunden bereitgestellt werden kann. Dies bietet einen größeren Sicherheitsfaktor, da die Passwörter nur zwischen dem Kunden, der das System eingerichtet hat, und seinen eigenen Benutzern und nicht zwischen einem Cloud-Hosting-Unternehmen eines Unternehmens ausgetauscht werden.


Es gibt ein paar Seafile-Server-Setup-Tutorials für ISPConfig, aber keines, das nicht eine gute Mehrheit der Bearbeitung der Dateien erforderte, die laut ISPConfig-Entwicklerempfehlungen wirklich in Ruhe gelassen werden sollten. Während dieses Setup für Ubuntu 18.04 LTS und ISPConfig 3 geschrieben wurde, kann es für andere Distributionen befolgt werden. Diese Lösung funktioniert für mich, aber es wird keine ausdrückliche oder stillschweigende Garantie oder Gewährleistung gegeben.

Es wird davon ausgegangen, dass der Leser Seafile mit MySQL und Apache (auch https) bereitstellen möchte. Es wird auch davon ausgegangen, dass Sie ISPConfig funktional verwenden können, da dies kein ISPConfig-Tutorial ist.

1 Setup-Website

Öffnen Sie Ihr ISPConfig-Hosting-Steuerungsfeld, klicken Sie auf die Registerkarte Sites und erstellen Sie eine neue Website. Stellen Sie sicher, dass Sie None für Auto-Subdomain, SSL, Let’s Encrypt SSL und Fast-CGI für PHP auswählen. Während Sie technisch gesehen eine vorhandene Website verwenden können, funktioniert das Erstellen einer neuen besser, da wir dadurch alle Cloud-Dateien von anderen Websites getrennt halten können. Dies ist auch erforderlich, um das ISPConfig-Panel für Konfigurationsänderungen zu verwenden.

Klicken Sie im Website-Konfigurationspanel auf die Registerkarte Optionen und fügen Sie Folgendes in den Abschnitt Apache-Direktiven ein:

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

RewriteEngine On

<Location /media>
Require all granted
</Location>

# 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/


Sie sollten auch einen Shell-Benutzer für diese Site erstellen, da dies in Kürze erforderlich sein wird.

2 Datenbanken erstellen

Wählen Sie im Bereich „Sites“ in ISPConfig „Database User“ und „Add new User“ aus. Erstellen Sie einen einzelnen Benutzer pro Client, der die Seafile-Datenbanken dieses Clients verwaltet.




Nachdem der Datenbankbenutzer erstellt wurde, klicken Sie auf Datenbanken und Neue Datenbank hinzufügen. Sie müssen drei separate Datenbanken hinzufügen: ccnetdb, seafiledb, seahubdb



3 Seafile-Software herunterladen und installieren

Es gibt einige erforderliche Pakete, die wir installieren müssen. Verbinden Sie sich mit einem Benutzer, der über ausreichende Berechtigungen zum Installieren von Software verfügt, per SSH mit Ihrem Server.

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

Ich ziehe es vor, dass alle meine Server im privaten Verzeichnis statt im Webverzeichnis laufen, also richten wir es so ein. SSH in den Server mit dem Benutzernamen, den wir oben erstellt haben.

cd private
mkdir seafile
cd seafile

wget https://download.seadrive.org/seafile-server_6.3.2_x86-64.tar.gz
    or for 32bit
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.sh

An dieser Stelle müssen Sie die angezeigten Fragen in Bezug auf Ihr System und Ihre Installation beantworten. Wenn Sie zu dem Abschnitt mit dem Titel „Bitte wählen Sie eine Methode zum Initialisieren von Seafile-Datenbanken“ gelangen, müssen Sie 2 auswählen und die Datenbankinformationen aus Ihrem ISPConfig-Setup eingeben.

4 Erster Lauf

Es ist an der Zeit, Seafile zu starten und sicherzustellen, dass die Ersteinrichtung funktioniert.

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

Öffnen Sie nach dem Starten der Dienste Ihren Webbrowser und navigieren Sie zu der oben erstellten Website-Adresse mit Port 8000.

http://192.168.1.111:8000/

5 Apache-Setup

Ändern Sie nun die SERVICE_URL in /path/to/seafile-server/ccnet/ccnet.conf

SERVICE_URL = https://www.myseafile.com

Wir müssen auch FILE_SERVER_ROOT in /path/to/seafile-server/seahub_settings.py

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

Starten Sie Apache neu.

sudo service apache2 restart

Seafile-Dienste neu starten.

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

6 Dienste automatisch starten 

Da das Ziel hier darin besteht, alles in ISPConfig enthalten zu halten, anstatt einen Startdienst zu erstellen, werden wir das Seafile-Skript zu den Cron-Jobs der Benutzer hinzufügen. Natürlich müssen Sie sicherstellen, dass der Client vollständige Cron-Jobs hinzufügen kann.

Startdatei erstellen:

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

Fügen Sie den folgenden Code in das Skript startSeafile.sh ein:

#!/bin/bash

# Change the value of "seafile_dir" to your path of seafile installation
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

## Sleep command is necessary to prevent MYSQL errors if
## this script runs before MYSQL is fully operational
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 "Usage: /etc/init.d/seafile {start|stop|restart}"
exit 1
;;
esac


Um sicherzustellen, dass Cron-Dateien richtig geschrieben werden, sollten einige Dinge überprüft werden. Klicken Sie auf Kunde -> [Ihr Kunde] -> Limits. Stellen Sie sicher, dass die Cron-Job-Limits auf Full Cron mit 0 Verzögerung zwischen den Ausführungen eingestellt sind. Danach müssen Sie nur noch den einzelnen Cron-Job startServer.sh zum Abschnitt „Auszuführende Befehle“ von ISPConfig hinzufügen.

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





Das war's!

  • ISPConfig
  • Seafile

Linux
  1. Installation von VirtualBox 4.2 unter Linux Mint 14

  2. Keine Typenliste in ISPConfig 3.1.11

  3. Installation von Wordpress auf einem Server mit ISPconfig 2.x

  4. Installation von Maven 3.0.5 unter RedHat Linux

  5. Installation von g++ 7.0.1 auf Debian 8.7

Aktualisieren von ISPConfig 3.1 auf ISPConfig 3.2

Installieren von Elgg auf einem ISPConfig 3-System

Installieren von OpenVZ + Verwaltung von VMs über ISPConfig 3 (Debian 6.0)

Lohnt es sich, das neue Ubuntu 18.10 zu installieren?

Wie installiere ich ISPConfig unter Debian 10?

Ubuntu auf Ihrem Laptop oder PC installieren