Seafileサーバーのセットアップチュートリアルがいくつかあります。 ISPConfigですが、ISPConfig開発者の推奨に従って、実際にそのままにしておく必要のあるファイルの編集の大部分を必要としなかったものはありません。このセットアップはUbuntu14.04LTSおよびISPConfig3用に作成されていますが、他の配布用にフォローすることができます。このソリューションは私には有効ですが、保証または保証は明示または黙示されていません。
読者がMySQLとApache(httpsも)を使用してSeafileをデプロイしたいと考えていることを前提としています。また、これはISPConfigチュートリアルではないため、機能的にISPConfigを使用できることも前提としています。
1セットアップWebサイト
ISPConfigホスティングコントロールパネルを開き、[サイト]タブをクリックして、新しいウェブサイトを作成します。既存のウェブサイトを技術的に使用することはできますが、新しいウェブサイトを作成すると、すべてのクラウドファイルを他のサイトから分離できるため、より効果的に機能します。これは、構成を変更するためにISPConfigパネルを使用する場合にも必要です。Webサイト構成パネルで、[オプション]タブをクリックし、[Apacheディレクティブ]セクションに次を挿入します。
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
#
RewriteRule ^/(media.*)$ /$1 [QSA,L,PT]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /seahub.fcgi$1 [QSA,L,E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

また、まもなく必要になるため、このサイトのシェルユーザーを作成する必要があります。

2データベースの作成
ISPConfigの[サイト]パネルから、[データベースユーザー]を選択し、[新しいユーザーを追加]を選択します。クライアントごとに、そのクライアントのseafiledatabasesを管理する単一のユーザーを作成します。
データベースユーザーが作成されたら、[データベース]をクリックし、[新しいデータベースを追加]をクリックします。 ccnetdb、seafiledb、seahubdbの3つの個別のデータベースを追加する必要があります



3Seafileソフトウェアをダウンロードしてインストールします
インストールする必要のある必須パッケージがいくつかあります。 WebサイトにSSHで接続し、次のコマンドを実行します。apt-get install python2.7 python-setuptoolspython-simplejson python-imaging python-mysqldb python-flup
すべてのサーバーをウェブディレクトリではなくプライベートディレクトリ内で実行したいので、そのように設定します。
cd private
mkdir seafile
cd seafile
wgethttps://bitbucket.org/haiwen/seafile/downloads/seafile-server_3.1.6_x86-64.tar.gz
または32ビットの場合
wgethttps://bitbucket.org/haiwen/seafile/downloads/seafile-server_3.1.6_i386.tar.gz
tar zxvf seafile-server_3.1.6_x86- 64.tar.gz
mkdirインストール済み
mvseafile-server_*インストール済み
cd seafile-server-*
./setup_seafile_mysql.sh
4初期実行
seafileを起動し、初期設定が機能していることを確認します。
./seafile.sh start
./seahub.sh start
http://192.168.1.111:8000/
5Apacheセットアップ
Apacheのセットアップのほとんどは、実際には上記のWebサイトのセットアップ内で行われます。ただし、すべてをスムーズに機能させるには、apache.confに行を追加する必要があります。残念ながら、この1つのファイルを編集せずにこれを追加する方法は見つかりませんでした。
sudo echo"##Seafile外部サーバー">>/ etc / apache2 / apache.conf
sudo echo "FastCGIExternalServer / var / www / seafile.myDomainHere.com / web / seahub.fcgi -host127.0.0.1: 8000 ">> /etc/apache2/apache.conf
SERVICE_URL = http://www.myseafile.comまた、/ path / to / seafile-server/seahub_settings.pyのFILE_SERVER_ROOTを変更する必要があります
FILE_SERVER_ROOT ='http://www.myseafile.com/seafhttp'
Apacheを再起動します。sudo service apache2 restartSeafileサービスを再起動します。
./seafile.sh start
./seahub.sh start-fastcgi
6HTTPSを有効にする
実行する必要があるのは、ISPConfigの[サイト]タブ内からSSLキーを生成することだけです。 ISPConfigのインストールと動作の方法により、他のすべてはすでにセットアップされている必要があります。ただし、Apacheが再起動されることを確認する必要がある場合があります。
7サービスを自動的に開始します
ここでの目標は、スタートアップサービスを作成するのではなく、すべてをISPConfigに含めることであるため、ユーザーのcronジョブにseafilescriptを追加します。当然、クライアントが完全なcronジョブを追加できることを確認する必要があります。 /var/www/clients/client1/web42/private/seafile/seafile-server-3.1.6/seahub shstart-fastcgi
および
/var/www/clients/client1/web42/private/seafile/seafile-server-3.1.6/seafile_start
更新(2014年11月23日):seafileおよびseahubサーバーの起動に時間がかかるため、前のスクリプトが終了する前に2番目のスクリプトが実行される場合がありました。したがって、サーバーは起動しません。 ISPConfigで正しく動作するように、originalseafile起動スクリプトを更新しました。おそらくwaitコマンドでやりすぎましたが、スクリプトはそれらを使用してうまく機能します。次のコマンドを実行する前に、theseafileユーザーとしてログインしていることを確認してください。
スタートアップファイルを作成します:
cd〜/ private / seafile
touch startSeafile.sh
chmod + x startSeafile.sh
#!/ bin / bash
#「seafile_dir」の値をseafileインストールのパスに変更します
seafile_dir =/ var / www / clients / client1 / web42 / 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
#fastcgiを使用する場合はfastcgiの値をtrueに変更します
fastcgi =true
#fastcgiのポートを設定します。デフォルトは8000です。必要に応じて変更してください。
fastcgi_port =8000
##MYSQLが完全に機能する前にこのスクリプトが実行される場合
##このスクリプトがMYSQLエラーを防ぐためにスリープコマンドが必要です
sleep60&
wait%1
case "$ 1" in
start)
$ {script_path} /seafile.sh start>> $ {seafile_init_log}&
wait%1
if [$ fastcgi =true];
then
$ {script_path} / seahub.sh start-fastcgi $ {ログ}&
待つ%1
他の$ {} script_path /seahub.sh開始>> $ {} seahub_init_log&
待つ%1
Fiの
;;
restart)
$ {script_path} /seafile.sh restart>> $ {seafile_init_log}&
fast />そして
$ {} script_path /seahub.sh再起動-fastcgiの$ {} fastcgi_port>> $ {} seahub_init_log&
$ {} script_path
他%1を待ちます/ seahub.sh restart>> $ {seahub_init_log}&
$1を待つ
fi
{seafile_init_log}
$ {script_path} /seahub.sh $ 1>> $ {seahub_init_log}
;;
*)
etc "{start | stop | restart} "
exit 1
;;
esac
これで、単一のstartServer.shcronジョブをISPConfigのコマンド実行セクションに追加するだけで済みます:
/ var / www / clients / client1 / web42 / private / seafile/startSeafile。 shstart

それだけです!