官方提供两个版本
- 开源版
- 专业版
部署方式主要有两种
相关文章
- 安装脚本: Centos脚本安装Seafile私有云(开源版)
- 开源版-手动部署: Centos手动安装Seafile私有云(开源版)
- 开源版-手动部署 域名、SSL、Nginx反向代理: VPS-Centos手动安装Seafile私有云(开源版)
- 专业版-手动部署: VPS-Centos手动安装Seafile私有云(开源版)
- 专业版-手动部署 域名、SSL、Nginx反向代理: VPS-Centos手动安装Seafile私有云(专业版)
到官方下载页面下载最新服务器安装包
cd
yum -y install wget
wget http://seafile-downloads.oss-cn-shanghai.aliyuncs.com/seafile-server_6.2.5_x86-64.tar.gz
假设你公司的名称为haiwen
, 你也已经下载seafile-server_1.4.0_*
到你的root
目录下。
建议这样的目录结构:
mkdir haiwen
# 将 seafile-server_* 移动到 haiwen 目录下
mv seafile-server_* haiwen
cd haiwen
tar -xzf seafile-server_*
mkdir installed
mv seafile-server_* installed
现在,你的目录看起来应该像这样:
# 返回root根目录
cd
yum -y install tree
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
这样设计目录的好处在于
- 和
seafile
相关的配置文件都可以放在haiwen
目录下,便于集中管理. - 后续升级时,你只需要解压最新的安装包到
haiwen
目录下.
安装Seafile
服务器之前,请确认已安装以下软件
- MariaDB 或者 MySQL 服务器 (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)
执行以下代码进行安装
yum -y install epel-release
rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
yum -y install mariadb-server
yum -y install python-imaging MySQL-python python-memcached python-ldap python-urllib3 ffmpeg ffmpeg-devel
若提示没有可用没有可用软件包ffmpeg
ffmpeg-devel
执行以下操作
rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-1.el7.nux.noarch.rpm
yum install -y ffmpeg ffmpeg-devel
继续
pip install pillow moviepy
若提示-bash: pip
: 未找到命令,执行以下操作
yum install -y python-pip
pip install --upgrade pip
pip install pillow moviepy
systemctl start mariadb.service
systemctl enable mariadb.service
mysql_secure_installation
按照提示配置
Enter current password for root (enter for none):回车 #初次运行直接回车
Set root password? [Y/n] 回车 #是否设置root用户密码
New password: ****** #设置root用户密码
Re-enter new password: ****** #再输入一次
Remove anonymous users? [Y/n] 回车 #是否删除匿名用户,生产环境建议删除,所以直接回车
Disallow root login remotely? [Y/n] 回车 #是否禁止root远程登录
Remove test database and access to it? [Y/n] 回车 #是否删除test数据库,直接回车
Reload privilege tables now? [Y/n] 回车 #是否重新加载权限表,直接回车
cd haiwen/seafile-server-*
./setup-seafile-mysql.sh
安装过程会引导配置Seafile
的各项参数
[ server name ] seafile212
#服务器名称,随意设置
[ This server's ip or domain ] 192.168.1.212
#域名或ip
[ default "/root/haiwen/seafile-data" ] 回车
#设置数据存放目录,默认就好
[ default "8082" ] 回车
#tcp端口,默认8082不能改
Please choose a way to initialize seafile databases:
[1] Create new ccnet/seafile/seahub databases
[2] Use existing ccnet/seafile/seahub databases
[ 1 or 2 ] 1
#选择创建数据库方式,1现在创建,2使用之前创建过的
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用户的密码
Enter the name for mysql user of seafile. It would be created if not exists.
[ default "seafile" ] 回车
#为数据库seafile创建用户,填写用户名,默认为seafile
Enter the password for mysql user "seafile":
[ password for seafile ] ******
#为数据库用户seafile设置密码,随意设置,记住就好
Enter the database name for ccnet-server:
[ default "ccnet-db" ] 回车
#设置ccnet-server数据库名称,默认默认就好
Enter the database name for seafile-server:
[ default "seafile-db" ] 回车
#设置seafile-server数据库名称,默认就好
Enter the database name for seahub:
[ default "seahub-db" ] 回车
#设置seahub数据库名称,默认就好
---------------------------------
This is your configuration
---------------------------------
server name: seafile212
server ip/domain: 192.168.1.212
seafile data dir: /root/haiwen/seafile-data
fileserver port: 8082
database: create new
ccnet database: ccnet-db
seafile database: seafile-db
seahub database: seahub-db
database user: seafile
#输出设置详情,回车继续安装,直至结束
systemctl start firewalld
systemctl enable firewalld
firewall-cmd --zone=public --add-port=8000/tcp --permanent
firewall-cmd --zone=public --add-port=8082/tcp --permanent
firewall-cmd --reload
./seafile.sh start
./seahub.sh start
在执行seahub.sh
过程中,会被要求设置seafile
管理员帐号(邮箱注册)、密码。
What is the email for the admin account?
[ admin email ] [email protected]
#输入管理员邮箱
What is the password for the admin account?
[ admin password ] ******
#管理员密码
Enter the password again:
[ admin password again ] ******
#再次输入密码
完成后,可以在浏览器打开服务器地址192.168.1.212:8000
,进行测试。
需要先停止seafile
及seahub
./seafile.sh stop
./seahub.sh stop
vi /etc/systemd/system/seafile.service
内容如下
[Unit]
Description=Seafile
# add mysql.service or postgresql.service depending on your database to the line below
Before=seahub.service
After=network.target mariadb.service
[Service]
Type=oneshot
ExecStart=/root/haiwen/seafile-server-latest/seafile.sh start
ExecStop=/root/haiwen/seafile-server-latest/seafile.sh stop
RemainAfterExit=yes
# User 和 Group 如果未建立seafile用户和用户组,则修改为root,否则无法启动.
User=root
Group=root
[Install]
WantedBy=multi-user.target
vi /etc/systemd/system/seahub.service
内容如下
[Unit]
Description=Seafile hub
After=network.target seafile.service mariadb.service
[Service]
# change start to start-fastcgi if you want to run fastcgi
ExecStart=/root/haiwen/seafile-server-latest/seahub.sh start
ExecStop=/root/haiwen/seafile-server-latest/seahub.sh stop
User=root
Group=root
Type=oneshot
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
保存退出
systemctl daemon-reload
systemctl start seafile
systemctl enable seafile
systemctl start seahub
systemctl enable seahub