部署 Seafile 服務(wù)器(使用 MySQL/MariaDB)

2018-11-11 12:02 更新

本文檔用來說明通過預(yù)編譯好的安裝包來安裝并運行基于 MySQL/MariaDB 的 Seafile 服務(wù)器。(MariaDB 是 MySQL 的分支)

下載

下載頁面下載最新的服務(wù)器安裝包.

部署和目錄設(shè)計

假設(shè)你公司的名稱為 haiwen, 你也已經(jīng)下載 seafile-server_1.4.0_* 到你的 home 目錄下。 我們建議這樣的目錄結(jié)構(gòu):

mkdir haiwen
mv seafile-server_* haiwen
cd haiwen
#將 seafile-server_* 移動到 haiwen 目錄下后
tar -xzf seafile-server_*
mkdir installed
mv seafile-server_* installed

現(xiàn)在,你的目錄看起來應(yīng)該像這樣:

#tree haiwen -L 2
haiwen
├── installed
│   └── seafile-server_1.8.2_x86-64.tar.gz
└── seafile-server-1.8.2
    ├── reset-admin.sh
    ├── runtime
    ├── seafile
    ├── seafile.sh
    ├── seahub
    ├── seahub.sh
    ├── setup-seafile.sh
    └── upgrade

這樣設(shè)計目錄的好處在于

  • 和 seafile 相關(guān)的配置文件都可以放在 haiwen 目錄下,便于集中管理.
  • 后續(xù)升級時,你只需要解壓最新的安裝包到 haiwen 目錄下.

安裝 Seafile 服務(wù)器

安裝前的準備工作

安裝 Seafile 服務(wù)器之前,請確認已安裝以下軟件

  • MariaDB 服務(wù)器 (MariaDB 是 MySQL 的分支)
  • python 2.7 (從 Seafile 5.1 開始,python 版本最低要求為2.7)
  • python-setuptools
  • python-imaging
  • python-mysqldb
  • python-ldap
  • python-urllib3
  • python-memcache (或者 python-memcached)
# 在Debian/Ubuntu系統(tǒng)下
apt-get update
apt-get install mariadb-server
apt-get install python2.7 python-setuptools python-imaging python-ldap python-mysqldb python-memcache python-urllib3
# 在 CentOS 7 下
yum install mariadb-server
yum install python-setuptools python-imaging python-ldap MySQL-python python-memcached python-urllib3

安裝

cd seafile-server-*
./setup-seafile-mysql.sh  #運行安裝腳本并回答預(yù)設(shè)問題

如果你的系統(tǒng)中沒有安裝上面的某個軟件,那么 Seafile初始化腳本會提醒你安裝相應(yīng)的軟件包.

該腳本會依次詢問你一些問題,從而一步步引導(dǎo)你配置 Seafile 的各項參數(shù):

參數(shù)作用說明

seafile server name

seafile 服務(wù)器的名字,目前該配置已經(jīng)不再使用

3 ~ 15 個字符,可以用英文字母,數(shù)字,下劃線

seafile server ip or domain

seafile 服務(wù)器的 IP 地址或者域名

客戶端將通過這個 IP 或者地址來訪問你的 Seafile 服務(wù)

seafile data dir

seafile 數(shù)據(jù)存放的目錄,用上面的例子,默認將是 /data/haiwen/seafile-data

seafile 數(shù)據(jù)將隨著使用而逐漸增加,請把它放在一個有足夠大空閑空間的分區(qū)上

seafile fileserver port

seafile fileserver 使用的 TCP 端口

該端口用于文件同步,請使用默認的 8082,不能更改。

在這里, 你會被要求選擇一種創(chuàng)建 Seafile 數(shù)據(jù)庫的方式:

-------------------------------------------------------
Please choose a way to initialize seafile databases:
-------------------------------------------------------

[1] Create new ccnet/seafile/seahub databases
[2] Use existing ccnet/seafile/seahub databases
  • 如果選擇1, 你需要提供根密碼. 腳本程序會創(chuàng)建數(shù)據(jù)庫和用戶。
  • 如果選擇2, ccnet/seafile/seahub 數(shù)據(jù)庫應(yīng)該已經(jīng)被你(或者其他人)提前創(chuàng)建。

如果安裝正確完成,你會看到下面這樣的輸出 (新版本可能會有所不同)

server-setup-succesfully

現(xiàn)在你的目錄結(jié)構(gòu)看起來應(yīng)該是這樣:

#tree haiwen -L 2
haiwen
├── conf                # configuration files
│   ├── ccnet.conf
│   └── seafile.conf
│   └── seahub_settings.py
│   └── seafdav.conf
├── ccnet
│   ├── mykey.peer
│   ├── PeerMgr
│   └── seafile.ini
├── installed
│   └── seafile-server_1.8.2_x86-64.tar.gz
├── seafile-data
├── seafile-server-1.8.2  # active version
│   ├── reset-admin.sh
│   ├── runtime
│   ├── seafile
│   ├── seafile.sh
│   ├── seahub
│   ├── seahub.sh
│   ├── setup-seafile.sh
│   └── upgrade
├── seafile-server-latest  # symbolic link to seafile-server-1.8.2
├── seahub-data
│   └── avatars

seafile-server-latest文件夾為指向當前 Seafile 服務(wù)器文件夾的符號鏈接. 將來你升級到新版本后, 升級腳本會自動更新使其始終指向最新的 Seafile 服務(wù)器文件夾.

啟動 Seafile 服務(wù)器

啟動 Seafile 服務(wù)器和 Seahub 網(wǎng)站

在 seafile-server-1.8.2 目錄下,運行如下命令

  • 啟動 Seafile:
./seafile.sh start # 啟動 Seafile 服務(wù)
  • 啟動 Seahub
./seahub.sh start <port>  # 啟動 Seahub 網(wǎng)站 (默認運行在8000端口上)

小貼士: 你第一次啟動 seahub 時,seahub.sh 腳本會提示你創(chuàng)建一個 seafile 管理員帳號。

服務(wù)啟動后, 打開瀏覽器并輸入以下地址

http://192.168.1.111:8000/

你會被重定向到登陸頁面. 輸入管理員用戶名和密碼即可。

恭喜! 現(xiàn)在你已經(jīng)成功的安裝了 Seafile 服務(wù)器.

在另一端口上運行 Seahub

如果你不想在默認的 8000 端口上運行 Seahub, 而是想自定義端口(比如8001)中運行,請按以下步驟操作:

  • 關(guān)閉 Seafile 服務(wù)器
./seahub.sh stop # 停止 Seafile 進程
./seafile.sh stop # 停止 Seahub
  • 更改haiwen/conf/ccnet.conf文件中SERVICE_URL 的值(假設(shè)你的 ip 或者域名時192.168.1.100), 如下 (從 5.0 版本開始,可以直接在管理員界面中設(shè)置。注意,如果同時在 Web 界面和配置文件中設(shè)置了這個值,以 Web 界面的配置為準。):
SERVICE_URL = http://192.168.1.100:8001
  • 重啟 Seafile 服務(wù)器
./seafile.sh start # 啟動 Seafile 服務(wù)
./seahub.sh start 8001 # 啟動 Seahub 網(wǎng)站 (運行在8001端口上)

關(guān)閉/重啟 Seafile 和 Seahub

關(guān)閉

./seahub.sh stop # 停止 Seahub
./seafile.sh stop # 停止 Seafile 進程

重啟

./seafile.sh restart # 停止當前的 Seafile 進程,然后重啟 Seafile
./seahub.sh restart  # 停止當前的 Seahub 進程,并在 8000 端口重新啟動 Seahub

如果停止/重啟的腳本運行失敗

大多數(shù)情況下 seafile.sh seahub.sh 腳本可以正常工作。如果遇到問題:

  • 使用pgrep命令檢查 seafile/seahub 進程是否還在運行中
pgrep -f seafile-controller # 查看 Seafile 進程
pgrep -f "seahub" # 查看 Seahub 進程
  • 使用pkill命令殺掉相關(guān)進程
pkill -f seafile-controller # 結(jié)束 Seafile 進程
pkill -f "seahub" # 結(jié)束 Seafile 進程

OK!

查看seafile更多信息請訪問:

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號