====== Seafile ======
===== Installation =====
Um den Datenbereich später leicht erweitern zu können, empfiehlt es sich
für Seafile eine dedizierte Platte zu verwenden.
Abhängigkeiten installieren
apt-get install apache2 mariadb-server memcached sudo
Python-Abhängigkeiten (TODO noch nicht vollständig verifiziert)
apt-get install python3-setuptools python3-pip
apt-get install python3-pillow python3-jinja2 python3-pylibmc python3-ldap python3-lxml python3-memcache python3-wheel
pip3 install --timeout=3600 pylibmc captcha sqlalchemy==1.4.3 django-pylibmc django-simple-captcha
Falls die Versionen nicht passen und etwas neu gebaut werden muß, ''python3-dev'' installieren.
Vorarbeiten
adduser --system --group --uid 500 --disabled-password --gecos 'Seafile server' \
--home /srv/seafile seafile
chmod 750 /srv/seafile
cd /srv/seafile
wget seafile-server_8.0.7_x86-64.tar.gz
tar xzf seafile-server_8.0.7_x86-64.tar.gz
mkdir installed
mv seafile-server_* installed
cd /srv/seafile/seafile-server-8.0.7
./setup-seafile-mysql.sh
chown -R seafile. /srv/seafile
Die Standardinstallation ist auf der Projektseite relativ gut erklärt.
Hier sind die nachfolgenden, vermutlich sinnvollen Schritte aufgeführt.
* Manueller Start
sudo -u seafile /srv/seafile/seafile-server-latest/seafile.sh start
sudo LC_ALL=de_DE.utf8 -u seafile /srv/seafile/seafile-server-latest/seahub.sh start
* Init-Script benutzen ''/etc/init.d/seafile-server''
* Sorgt dafür, daß der Server unter einem eingeschränkten Benutzer (z.B. //seafile//) läuft.
* Apache mit SSL als Proxy verwenden
a2enmod rewrite
a2enmod proxy_fcgi
a2enmod proxy_http
* ''LOGO_PATH'' ?
Sicherheit: Seahub nur auf localhost laufen lassen.
Dazu die Datei ''seahub.sh'' anpassen:
$PYTHON $gunicorn_exe seahub.wsgi:application -c "${gunicorn_conf}" -b "127.0.0.1:${port}" --preload
==== MySQL Datenbank ====
Falls von SQLite zu MySQL migriert wird, muß ggf. ein Datenbankbenutzer angelegt werden:
CREATE USER 'seafile'@'localhost' IDENTIFIED BY '********';
GRANT ALL PRIVILEGES ON `ccnet\-db`.* to 'seafile'@'localhost';
GRANT ALL PRIVILEGES ON `seafile\-db`.* to 'seafile'@'localhost';
GRANT ALL PRIVILEGES ON `seahub\-db`.* to 'seafile'@'localhost';
==== Libreoffice / PDF ====
apt-get install libreoffice libreoffice-script-provider-python poppler-utils
[OFFICE CONVERTER]
enabled = true
TODO [[LibreOffice Online]]
===== Upgrade =====
==== Maintenance Upgrade ====
z.B. 6.0.5 -> 6.0.7
- Neue Version herunterladen
cd /srv/seafile
wget https://download.seadrive.org/seafile-server_6.0.7_x86-64.tar.gz
- Archiv auspacken
tar xzf seafile-server_6.0.7_x86-64.tar.gz
- Server stoppen
/etc/init.d/seafile-server stop
- in neu erstelltes Verzeichnis wechseln
- Minor-Upgrade Script laufen lassen
upgrade/minor-upgrade.sh
- Server wieder starten
/etc/init.d/seafile-server start
==== Minor Upgrade ====
z.B. 7.0.5 -> 7.1.5
- Neue Version herunterladen
cd /srv/seafile
wget https://download.seadrive.org/seafile-server_7.1.5_x86-64.tar.gz
- Archiv auspacken
tar xzf seafile-server_7.1.5_x86-64.tar.gz
- Server stoppen
/etc/init.d/seafile-server stop
- in das neue Verzeichnis wechseln und das Upgrade-Script laufenlassen
cd seafile-server-7.1.5
upgrade/minor-upgrade.sh
- Server wieder starten
/etc/init.d/seafile-server start
==== Major Version Upgrade ====
Z.B. von 8 -> 9
- Neue Version herunterladen
cd /srv/seafile
wget https://download.seadrive.org/seafile-server_9.0.10_x86-64.tar.gz
- Archiv auspacken
tar xzf seafile-server_9.0.10_x86-64.tar.gz
- Server stoppen
/etc/init.d/seafile-server stop
- Update durchführen
upgrade/upgrade_8.0_9.0.sh
/etc/init.d/seafile-server start
- Memcached neu starten
- Server wieder starten
/etc/init.d/seafile-server start