Seafile: setting up your own private cloud

From Alpine Linux
Revision as of 10:53, 17 November 2023 by Sertonix (talk | contribs) (replace /etc/init.d with rc-service)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
This material is obsolete ...

seafile* and seahub* packages are not in any current version of Alpine (Discuss)

Seafile

Seafile is like ownCloud, but with client side encryption. There are clients for Linux, Windows, OSX, Android, IOS and web. Seahub is the web interface but for some other functions (like setup, management, etc.) seafile needs seahub.

Installation

Currently seafile, seahub and some of their dependencies are still in testing, so you will need to add testing to your repo.

install everything (highly recommended)

apk add seahub

install only seafile-server (not recommended, unless you know what you are doing)

apk add seafile-server

Setup

Using the default instance

cd /var/lib/seafile/default

sudo -u seafile seafile-admin setup

sudo -u seafile seafile-admin create-admin

check the options in

 /etc/conf.d/seahub

Using non default instance

 export SEA_USER=clouduser
 export SEA_INSTANCE=mycloud
 sudo -u $SEA_USER mkdir /var/lib/seafile/"$SEA_INSTANCE"
 sudo -u $SEA_USER mkdir /var/lib/seafile/"$SEA_INSTANCE"/seafile-server
 sudo cp -aR /usr/share/seafile/scripts /var/lib/seafile/"$SEA_INSTANCE"
 sudo cp -u $SEA_USER -aR /usr/share/seahub /var/lib/seafile/"$SEA_INSTANCE"/seafile-server
 cd /var/lib/seafile/"$SEA_INSTANCE"
 sudo -u $SEA_USER seafile-admin setup
 sudo -u $SEA_USER seafile-admin create-admin

make init.d script and conf.d

 cd /etc/init.d/
 sudo ln -s seafile seafile."$SEA_INSTANCE"
 sudo ln -s seahub seahub."$SEA_INSTANCE"
 cd /etc/conf.d/
 sudo cp seafile seafile."$SEA_INSTANCE"
 sudo cp seahub seahub."$SEA_INSTANCE"

change user and group and check options in

 /etc/conf.d/seafile
 /etc/conf.d/seahub

Starting

with seahub

sudo rc-service seahub start

seafile server only

sudo rc-service seafile start

or append ."$SEA_INSTANCE" if you are using a non default instance.