Seafile[^1] is a next-generation open source cloud storage system, with advanced support for file syncing, privacy protection and teamwork.
Collections of files are called libraries, and each library can be synced separately. A library can be encrypted with a user chosen password. This password is not stored on the server, so even the server admin can't view your file contents.
Seafile lets you create groups with file syncing, wiki, and discussion enabling easy collaboration around documents within a team.
Choose to use existing databases and credentials when it is asked to you. The 1 choice can be used but as I encountered issues, that's why I did it manually.
Ccnet
Regarding the ccnet configuration, there is nothing to do especially instead of if you want SSL instead. If you want https, modify the SERVICE_URL like this (ccnet/ccnet.conf):
server{includelisten_port.conf;server_nameseafile.deimos.fr;# Force redirect http to httpsrewrite^https://$http_host$request_uri?permanent;}server{includessl/deimos.fr_ssl.conf;includepagespeed.conf;server_nameseafile.deimos.fr;root/usr/share/nginx/www/deimos.fr/seafile;access_log/var/log/nginx/seafile.deimos.fr_access.log;error_log/var/log/nginx/seafile.deimos.fr_error.log;# Max upload sizeclient_max_body_size1G;location/{fastcgi_pass127.0.0.1:8090;fastcgi_paramSCRIPT_FILENAME$document_root$fastcgi_script_name;fastcgi_paramPATH_INFO$fastcgi_script_name;fastcgi_paramSERVER_PROTOCOL$server_protocol;fastcgi_paramQUERY_STRING$query_string;fastcgi_paramREQUEST_METHOD$request_method;fastcgi_paramCONTENT_TYPE$content_type;fastcgi_paramCONTENT_LENGTH$content_length;fastcgi_paramSERVER_ADDR$server_addr;fastcgi_paramSERVER_PORT$server_port;fastcgi_paramSERVER_NAME$server_name;fastcgi_paramREMOTE_ADDR$remote_addr;fastcgi_paramHTTPSon;fastcgi_paramHTTP_SCHEMEhttps;}# Webdavlocation/seafdav{fastcgi_pass127.0.0.1:8080;fastcgi_paramSCRIPT_FILENAME$document_root$fastcgi_script_name;fastcgi_paramPATH_INFO$fastcgi_script_name;fastcgi_paramSERVER_PROTOCOL$server_protocol;fastcgi_paramQUERY_STRING$query_string;fastcgi_paramREQUEST_METHOD$request_method;fastcgi_paramCONTENT_TYPE$content_type;fastcgi_paramCONTENT_LENGTH$content_length;fastcgi_paramSERVER_ADDR$server_addr;fastcgi_paramSERVER_PORT$server_port;fastcgi_paramSERVER_NAME$server_name;fastcgi_paramHTTPSon;}location/seafhttp{rewrite^/seafhttp(.*)$$1break;proxy_passhttp://127.0.0.1:8082;client_max_body_size0;}location/media{root/var/www/deimos.fr/seafile/seafile-server-latest/seahub;}}
Init script
Regarding the init script, add it and adapt the highlighted lines (/etc/init.d/seafile-server):
#!/bin/sh### BEGIN INIT INFO# Provides: seafile-server# Required-Start: $local_fs $remote_fs $network# Required-Stop: $local_fs# Default-Start: 2 3 4 5# Default-Stop: 0 1 6# Short-Description: Starts Seafile Server# Description: starts Seafile Server### END INIT INFO# Change the value of "user" to your linux user nameuser=www-data
# Change the value of "script_path" to your path of seafile installationseafile_dir=/usr/share/nginx/www/deimos.fr/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
# Change the value of fastcgi to true if fastcgi is to be usedfastcgi=true# Set the port of fastcgi, default is 8000. Change it if you need different.fastcgi_port=8090case"$1"instart)sudo-u${user}${script_path}/seafile.shstart>>${seafile_init_log}if[$fastcgi=true];thensudo-u${user}${script_path}/seahub.shstart-fastcgi${fastcgi_port}>>${seahub_init_log}elsesudo-u${user}${script_path}/seahub.shstart>>${seahub_init_log}fi;;restart)sudo-u${user}${script_path}/seafile.shrestart>>${seafile_init_log}if[$fastcgi=true];thensudo-u${user}${script_path}/seahub.shrestart-fastcgi${fastcgi_port}>>${seahub_init_log}elsesudo-u${user}${script_path}/seahub.shrestart>>${seahub_init_log}fi;;stop)sudo-u${user}${script_path}/seafile.sh$1>>${seafile_init_log}sudo-u${user}${script_path}/seahub.sh$1>>${seahub_init_log};;*)echo"Usage: /etc/init.d/seafile {start|stop|restart}"exit1;;esac
I've changed the default port as mine was already used.