Ubuntu 16.04 (Xenial Xerus) に Seafile をインストールする方法
このチュートリアルは、これらの OS バージョン用に存在します
- Ubuntu 15.04 (ビビッド ベルベット)
このページでは
- 前提条件
- Seafile のインストール
- ステップ 1 - 必要な依存関係をインストールする
- ステップ 2 - 新しい \seafile\ ユーザーを作成する
- ステップ 3 - Seafile アーカイブをダウンロードして解凍する
- ステップ 4 - データベースを作成する
- ステップ 5 - Seafile をインストールする
- ステップ 6 - Seafile および Seahub サービス ファイルを構成する
- ステップ 7 - Nginx をリバース プロキシとしてインストールして構成する
- ステップ 8 - Web ブラウザを使用したテスト
Seafile は、Dropbox、mega.co.nz などのプライベート クラウドです。 Seafile は python に基づいており、オープン ソースであるため、独自のプライベート クラウドを作成でき、より安全になります。
Seafile は、データをより安全にする暗号化ライブラリをサポートしています。ライブラリ内のファイルを暗号化するには、ライブラリの作成時にパスワードを設定する必要があります。パスワードは Seafile クラウドに保存されません。そのため、サーバーの管理者でさえ、パスワードがないと暗号化されたデータを表示できません。
このチュートリアルでは、Ubuntu 16.04 に Seafile をインストールする方法を示します。
前提条件
- 2 GB の RAM を搭載したサーバー
- Ubuntu 16.04 64 ビット
Seafile のインストール
ステップ 1 - 必要な依存関係をインストールする
インストールを実行するには、seafile にいくつかの依存関係が必要です。
- openjdk-8jre
- LibreOffice
- ポプラーユーティリティ
- mysql サーバー
- Python-pip など。
apt-get install openjdk-8-jre poppler-utils libreoffice libreoffice-script-provider-python libpython2.7 python-pip mysql-server python-setuptools python-imaging python-mysqldb python-memcache ttf-wqy-microhei ttf-wqy-zenhei xfonts-wqy python-pip
pip で boto をインストールします。
pip install boto
ロケール設定に関するエラーがある場合は、以下のすべてのコマンドを実行します。
export LANGUAGE=en_US.UTF-8
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8
locale-gen en_US.UTF-8
dpkg-reconfigure localesステップ 2 - 新しい「seafile」ユーザーを作成する
このステップでは、seafile インストール用の新しいユーザーを作成します。このユーザーとして seafile サーバーを実行します。
インストール用の新しい seafile ユーザーを作成します。
useradd -m -s /bin/bash seafile
passwd seafileステップ 3 - Seafile アーカイブをダウンロードして解凍する
Seafile は公式サイトからダウンロードできますので、必要に応じてダウンロードしてください。ここでは、Ubuntu 15.04 64 ビットを使用します。
wget で Seafile アーカイブをダウンロードします。
su - seafile
wget wget https://bintray.com/artifact/download/seafile-org/seafile/seafile-server_5.1.4_x86-64.tar.gzseafile-server_5.1.4_x86-64.tar.gz を抽出し、ディレクトリの名前を seafile-server に変更します。
tar -xzf seafile-server_5.1.4_x86-64.tar.gz
mv seafile-server-5.1.4/ seafile-server/したがって、seafile インストールのディレクトリは、seafile ユーザーのホーム ディレクトリにあります。
ステップ 4 - データベースを作成する
Seafile には 3 つのデータベースが必要です。
- ccnet サーバー
- シーファイル サーバー
- シーハブ
\exit\ で root ユーザーに戻り、mysql サーバーにログインします。
1 人のユーザーで 3 つのデータベースを作成し、そのユーザーをすべてのデータベースに付与します。
#Login to mysql
mysql -u root -p
#Create database
create database ccnet_db character set = 'utf8';
create database seafile_db character set = 'utf8';
create database seahub_db character set = 'utf8';
#Create user
create user identified by 'yourpassword';
flush privileges;ステップ 5 - Seafile をインストールする
seafile ユーザーにログインし、インストール ディレクトリ seafile-server/ に移動して、setup-seafile-mysql.sh ファイルを実行します。
su - seafile
cd seafile-server/
./setup-seafile-mysql.shEnter キーを押すだけで、次の質問が表示されます。
- サーバー名 - seafile-server を使用します。
- ドメイン/IP - cloud.mydomain.co.
- Seafile データ ディレクトリ - デフォルトのデータ ディレクトリ
- Seafile サーバーのポート構成。
次に、データベースのセットアップを求められます。手順 4 ですべてのデータベースが作成されているため、番号 2 を選択できます。
シーファイルがインストールされています。 seafile と seahub サーバーを起動します。
./seafile.sh start
./seahub.sh startseafile 管理者の電子メールとパスワードの管理者の電子メールとパスワードについて尋ねられます。
admin ユーザーが作成されている場合。ここで seafile を停止します。次に、seafile サーバー用のサービス ファイルを作成します。
./seafile.sh stop
./seahub.sh stopステップ 6 - Seafile および Seahub サービス ファイルを構成する
次に、seafile および seahub サービスを構成します。 seafile および seahub サーバー用の新しいサービス ファイルを作成します。
root ユーザーとして /lib/systemd/system/ ディレクトリに移動し、vim エディターで新しい seafile サービス ファイル seafile-server.service を作成します。
cd /lib/systemd/system/
vim seafile.service以下に seafile サービス構成を貼り付けます。
[Unit]
Description=Seafile Server
After=network.target mariadb.service
[Service]
Type=oneshot
ExecStart=/home/seafile/seafile-server/seafile.sh start
ExecStop=/home/seafile/seafile-server/seafile.sh stop
RemainAfterExit=yes
User=seafile
Group=seafile
[Install]
WantedBy=multi-user.target保存して終了。
新しい seahub サービス ファイル seahub.service を作成します。
vim seahub.service
以下に構成を貼り付けます。
[Unit]
Description=Seafile Hub
After=network.target seafile.target
[Service]
Type=oneshot
ExecStart=/home/seafile/seafile-server/seahub.sh start-fastcgi
ExecStop=/home/seafile/seafile-server/seahub.sh stop
RemainAfterExit=yes
User=seafile
Group=seafile
[Install]
WantedBy=multi-user.target保存して終了。
systemd サービスをリロードし、seafile と seahub を開始します。
systemctl daemon-reload
systemctl start seafile
systemctl start seahubエラーがないことを確認し、サービス ポートをチェックして seafile と seahub サーバーが実行されていることを確認します。
netstat -plntu
seafile ポート 8082 と seahub ポート 8000 が表示されます。
ステップ 7 - Nginx をリバース プロキシとしてインストールして構成する
このステップでは、Ubuntu リポジトリから nginx をインストールし、ポート 8000 と 8002 で seafile-server のリバース プロキシ サーバーとして構成します。
次の apt-get コマンドで nginx をインストールします。
apt-get install nginx -y
インストールが完了したら、nginx 仮想ホスト ディレクトリに移動し、vim を使用して新しい仮想ホスト ファイル cloud.mydomain.conf を作成します。
cd /etc/nginx/sites-available/
vim cloud.mydomain.conf以下に仮想ホスト構成を貼り付けます。
server {
listen 80;
server_name cloud.mydomain.co;
proxy_set_header X-Forwarded-For $remote_addr;# Reverse proxy for seafile
location / {
fastcgi_pass 127.0.0.1:8000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_script_name;
fastcgi_param SERVER_PROTOCOL $server_protocol;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_param SERVER_ADDR $server_addr;
fastcgi_param SERVER_PORT $server_port;
fastcgi_param SERVER_NAME $server_name;
fastcgi_param REMOTE_ADDR $remote_addr;
access_log /var/log/nginx/seahub.access.log;
error_log /var/log/nginx/seahub.error.log;
fastcgi_read_timeout 36000;
}# Reverse Proxy for seahub
location /seafhttp {
rewrite ^/seafhttp(.*)$ $1 break;
proxy_pass http://127.0.0.1:8082;
client_max_body_size 0;
proxy_connect_timeout 36000s;
proxy_read_timeout 36000s;
proxy_send_timeout 36000s;
send_timeout 36000s;
}#CHANGE THIS PATH WITH YOUR OWN DIRECTORY
location /media {
root /home/seafile/seafile-server/seahub;
}
}保存して終了。
ドメイン名として cloud.mydomain.co を使用します。
次に、サイト対応ディレクトリへのリンクを作成して新しい仮想ホストを有効にし、nginx を再起動します。
新しい仮想ホストを有効にします。
ln -s /etc/nginx/sites-available/cloud.mydomain.co
nginx ウェブサーバーをテストして再起動します。
nginx -t
systemctl restart nginxステップ 8 - Web ブラウザでのテスト
ブラウザー cloud.mydomain.co を開き、管理者アカウントでログインしてみてください。
Seafile 管理ダッシュボード:
結論
今日では多種多様なクラウド アプリケーションが存在するため、Seafile は今日の使用に適したプライベート クラウド ソリューションです。ライブラリ/フォルダーの暗号化機能を使用すると、データをより安全にすることができます。また、構成が簡単で、サーバーへの実装が簡単になります。
リンク
- シーファイル