部署Seafile搭建自己的網盤

小弟調調™發表於2016-12-22

Seafile 是一個開源的檔案雲端儲存平臺,解決檔案集中儲存、同步、多平臺訪問的問,允許使用者建立“群組”,在群組內共享和同步檔案,方便了團隊協同工作。

原文在這裡

安裝依賴

# 在 CentOS 7 下
# (MariaDB 是 MySQL 的分支)
yum install mariadb-server

# 如果以來有問題 
# 嘗試在後面加上引數  --skip-broken
yum install python-setuptools python-imaging python-ldap MySQL-python python-memcached python-urllib3複製程式碼

yum 安裝 mysqldb-python 後面seafile安裝報錯,需要通過 python 的工具pip來安裝MySQL-python pip install MySQL-python

下載

在這裡下載seafile-server_6.0.7_x86-64.tar.gz,你可以選擇你需要的版本

# 檢視系統版本
cat /proc/version
wget http://download-cn.seafile.com/seafile-server_6.0.7_x86-64.tar.gz

# 解壓
tar -zxvf seafile-server_6.0.7_x86-64.tar.gz

# 解壓放到一個目錄
cd seafile-server-*複製程式碼

安裝

我的資料庫使用MySQL,你需要先在資料庫中建立一個 MySQL 使用者 seafile

# 登入MySQL建立一個使用者
mysql -uroot -p

# 建立使用者設定密碼
mysql> Create USER 'seafile'@'%' IDENTIFIED BY '123456';
# 執行下面語句立即生效
mysql> flush privileges;複製程式碼

執行./setup-seafile-mysql.sh安裝指令碼並回答預設問題

./setup-seafile-mysql.sh
  Checking python on this machine ...
  Checking python module: setuptools ... Done.
  Checking python module: python-imaging ... Done.
  Checking python module: python-mysqldb ... Done.

-----------------------------------------------------------------
This script will guide you to setup your seafile server using MySQL.
Make sure you have read seafile server manual at

        https://github.com/haiwen/seafile/wiki

Press ENTER to continue
-----------------------------------------------------------------

What is the name of the server? It will be displayed on the client.
3 - 15 letters or digits
[ server name ] <填寫 seafile 伺服器的名字>

What is the ip or domain of the server?
For example: www.mycompany.com, 192.168.1.101
[ This server's ip or domain ] <seafile 伺服器的 IP 地址或者域名>

Where do you want to put your seafile data?
Please use a volume with enough free space
[ default "/home/www/jinpans/seafile-data" ]

Which port do you want to use for the seafile fileserver?
[ default "8082" ]  [ seafile fileserver 使用的 TCP 埠 ]

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

[1] Create new ccnet/seafile/seahub databases
    你需要提供根密碼. 指令碼程式會建立資料庫和使用者。
[2] Use existing ccnet/seafile/seahub databases
    ccnet/seafile/seahub 資料庫應該已經被你(或者其他人)提前建立。
[ 1 or 2 ] <選擇一種建立 Seafile 資料庫的方式>

What is the host of mysql server?
[ default "localhost" ]

What is the port of mysql server?
[ default "3306" ]

What is the password of the mysql root user?
[ root password ] <輸入root密碼>

verifying password of user root ...  done

Enter the name for mysql user of seafile. It would be created if not exists.
[ default "seafile" ] <預設seafile的MySQL使用者名稱,可以使用預設>

Enter the password for mysql user "seafile":
[ password for seafile ] <輸入seafile密碼>

verifying password of user seafile ...  done

Enter the database name for ccnet-server:
[ default "ccnet-db" ]

Enter the database name for seafile-server:
[ default "seafile-db" ]

Enter the database name for seahub:
[ default "seahub-db" ]

---------------------------------
This is your configuration
---------------------------------

    server name:            seafile 伺服器的名字
    server ip/domain:       192.168.1.101

    seafile data dir:       /home/www/jinpans/seafile-data
    fileserver port:        8082

    database:               create new
    ccnet database:         ccnet-db
    seafile database:       seafile-db
    seahub database:        seahub-db
    database user:          seafile

---------------------------------
Press ENTER to continue, or Ctrl-C to abort
---------------------------------

Generating ccnet configuration ...

done
Successly create configuration dir /home/www/jinpans/ccnet.
Generating seafile configuration ...

Done.
done
Generating seahub configuration ...

----------------------------------------
Now creating seahub database tables ...

----------------------------------------

creating seafile-server-latest symbolic link ...  done

-----------------------------------------------------------------
Your seafile server configuration has been finished successfully.
-----------------------------------------------------------------

run seafile server:     ./seafile.sh { start | stop | restart }
run seahub  server:     ./seahub.sh  { start <port> | stop | restart <port> }

-----------------------------------------------------------------
If you are behind a firewall, remember to allow input/output of these tcp ports:
-----------------------------------------------------------------

port of seafile fileserver:   8082
port of seahub:               8000

When problems occur, Refer to

        https://github.com/haiwen/seafile/wiki複製程式碼

上面算是結束了,然後在 seafile-server_6.0.7 目錄下面,執行如下命令

啟動 Seafile:

./seafile.sh start # 啟動 Seafile 服務複製程式碼

啟動 Seahub

./seahub.sh start <port>  # 啟動 Seahub 網站 (預設執行在8000埠上)
# 你第一次啟動 seahub 時,seahub.sh 指令碼會提示你建立一個 seafile 管理員帳號。

LC_ALL is not set in ENV, set to en_US.UTF-8
Starting seahub at port 8000 ...

----------------------------------------
It's the first time you start the seafile server. Now let's create the admin account
----------------------------------------

What is the email for the admin account?
[ admin email ] <這裡輸入郵箱地址>

What is the password for the admin account?
[ admin password ] <這裡輸入密碼>

Enter the password again:
[ admin password again ] <這裡確認輸入密碼>
----------------------------------------
Successfully created seafile admin
----------------------------------------
Seahub is started
Done.複製程式碼

然後你可以開啟它了:

http://192.168.1.111:8000/複製程式碼

服務管理

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

./seafile.sh start     # 啟動 Seafile 服務
./seahub.sh start 8001 # 啟動 Seahub 網站 (執行在8001埠上)

./seafile.sh restart   # 停止當前的 Seafile 程式,然後重啟 Seafile
./seahub.sh restart    # 停止當前的 Seahub 程式,並在 8000 埠重新啟動 Seahub複製程式碼

參考資料

相關文章