若你使用的是比較新的 Seafile 版本, 請閱讀此篇提示 :《新版本下的 Seafile》
Seafile 企业版的安装会比社区版要麻烦, 所以这里给大家社区版的安装教程先, 不过社区版是可以迁移到企业版的
本文是建立在已经安装好 MySQL 的情况下进行安装 Seafile, 并且本文图片都为 Seafile 企业版的安装图片, 社区版和企业版安装相差不大(MySQL 的安装详情请见 -> 点击进入)
首先大家要去 Seafile 英文官网寻找下载地址
https://www.seafile.com/en/download/
看到 Linux 这边有 32 位和 64 位的下载地址
因为 CentOS 7 基本都是 64 位, 所以截止发稿时间, 最新的下载地址是
https://download.seadrive.org/seafile-server_6.1.1_x86-64.tar.gz
首先我们登录我们的 VPS
我们定位到我们要下载的目录, 因为 Seafile 安装后主目录下会多出额外的目录和文件, 所以这边不建议直接建在 ~ 目录
这边我们建立一个 cloud 目录, 建在 /www 目录下
mkdir -p /www/cloud
然后我们进入这个目录
cd /www/cloud
进入这个目录之后, 就可以下载了
wget https://download.seadrive.org/seafile-server_6.1.1_x86-64.tar.gz
下载完之后需要解压
tar zxvf seafile-server_6.1.1_x86-64.tar.gz
解压完之后, 就需要安装基本的依赖软件
yum install -y python-setuptools python-imaging python-ldap MySQL-python python-memcached python-urllib3
安装完成之后就可以正式安装 Seafile 了
首先, 进入 Seafile 的目录
cd seafile-server-6.1.1
开始安装
./setup-seafile-mysql.sh
首先会对环境进行检查, 如果有哪个依赖软件没有安装的, 安装就不能继续进行
如果依赖安装没有问题的, 就会显示如下界面
可以直接按 Enter 键进入安装

seafile server name//这个可以随意填写, 因为这个配置已经不再使用了
seafile server ip or domain//填写服务器的 IP 或者 Seafile 绑定的域名
seafile data dir//Seafile 存放的目录, 请保证有足够的空间
seafile fileserver port//Seafile 文件同步的端口, 默认8082, 不建议更改
其他的直接按 Enter 键默认配置即可

之后是数据库的问题
如果你之前有为 Seafile 创建过的选择 2, 否则请选择 1
这里我们选择 1
如果按照本站的 MySQL 安装方式, 前面直接默认并且输入数据库 root 用户密码即可

这里会让你为 seafile 这个数据库用户创建一个独立的密码, 建议和 root 用户不同

之后直接全部默认即可
完成设置之后, 下面会有一个设置总览

确定没有问题之后按 Enter 键继续安装
安装成功就会提示如下图片中的内容

我们的目的是在 Nginx 下配置 Seafile, 所以接下来我们为 Seafile 创建 Nginx 的 conf 配置文件
下面是一份没有开启 HTTPS 的示例
server {
listen 80;
server_name www.myseafile.com;
proxy_set_header X-Forwarded-For $remote_addr;
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;
}
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_request_buffering off;#关闭之后可以上传 4G 以上的大文件
}
location /media {
root /www/cloud/seafile-server-latest/seahub;#这里替换成你 Seahub 的目录
}
}
下面是一份开启了 HTTPS 的示例配置
server {
listen 80;
server_name cloud.jonny.vip;
rewrite ^ https://$http_host$request_uri? permanent;
}
server {
listen 443;
server_name cloud.jonny.vip;
ssl on;
ssl_certificate /home/Jonny/SSL/Nginx/1_www.jonny.vip_bundle.crt;#这里替换成证书 .crt 文件的地址
ssl_certificate_key /home/Jonny/SSL/Nginx/2_www.jonny.vip.key;#这里替换成证书 .key 文件的地址
proxy_set_header X-Forwarded-For $remote_addr;
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;
fastcgi_param HTTPS on;
fastcgi_param HTTP_SCHEME https;
access_log /var/log/nginx/seahub.access.log;
error_log /var/log/nginx/seahub.error.log;
}
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_request_buffering off;#关闭之后可以上传 4G 以上的大文件
}
location /media {
root /www/cloud/seafile-server-latest/seahub;#这里替换成你 Seahub 的目录
}
}
配置好 Nginx 之后, 因为是在 Nginx 下运行 Seafile, 所以还要对 Seafile 的一些配置文件进行修改
首先进入 Seafile 的配置目录
cd /www/cloud/conf
找到 ccnet.conf 文件, 并且编辑修改
vim ccnet.conf
找到 SERVICE_URL
, 并且修改为
SERVICE_URL = https://cloud.jonny.vip
如果你没有开启 HTTPS, 就修改为
SERVICE_URL = http://cloud.jonny.vip
后面不需要加端口了
保存退出之后, 找到 seahub_settings.py, 编辑修改
vim seahub_settings.py
在最后加上
FILE_SERVER_ROOT = 'https://cloud.jonny.vip/seafhttp'
如果你没有开启 HTTPS, 就修改为
FILE_SERVER_ROOT = 'http://cloud.jonny.vip/seafhttp'
注意单引号
然后启动 Seafile, 首先进入 Seafile 主目录
cd ../seafile-server-6.1.1
上面的 .. 是返回上一层的意思
./seafile.sh start
./seahub.sh start-fastcgi
首次运行的时候, 会提示让你创建管理员账号, 按照提示创建即可
然后输入域名, 就可以访问了


自創文章, 原著 : Jonny, 如若需要轉發, 在已經授權的情況下請註明出處 :《在 CentOS 7 下安装 Seafile 社区版》https://jonny.vip/2017/07/07/%e5%9c%a8-centos-7-%e4%b8%8b%e5%ae%89%e8%a3%85-seafile-%e7%a4%be%e5%8c%ba%e7%89%88/
Leave a Reply