部署Seafile专业版(三用户免费)

前言:是国内团队开发、国际领先的开源企业云存储软件,为企业提供私有云环境下的网盘解决方案,满足文件集中管理、多终端访问、共享协作等需求。普通版本的功能比较简单,与之相比专业版的强大自然是我们的首选。Seafile的专业版本实际上不需要付费也可以使用,只是在用户数上有所限制,三用户满足需求的情况下完全可以使用。

环境:CentOS 7及7.x版本,JAVA环境jdk1.7或更高版本

下载Seafile专业版server https://download.seafile.com/d/06d4ca0272/

wget https://bootstrap.pypa.io/get-pip.py
python get-pip.py
yum install java-1.7.0-openjdk poppler-utils python-setuptools python-imaging MySQL-python mariadb-server python-memcached python-ldap python-urllib3
pip install boto

安装mariadb

yum -y install mariadb mariadb-server
systemctl start mariadb

获取专业版许可证书,放置在顶层目录下
(Seafile专业版无许可证书的情况下允许最多创建三个用户)

现在的目录结构应该像如下这样:

haiwen
├── seafile-license.txt
└── seafile-pro-server_6.1.7/

安装NGINX(我使用了源码安装,可以参考这篇http://www.jianshu.com/p/4699bcb04633)

yum install -y apr* autoconf automake bison bzip2 bzip2*  cloog-ppl compat* cpp curl curl-devel fontconfig   fontconfig-devel freetype freetype* freetype-devel  gcc gcc-c++ gtk+-devel gd gettext gettext-devel   glibc kernel kernel-headers keyutils keyutils-libs-devel  krb5-devel libcom_err-devel libpng libpng-devel libjpeg*   libsepol-devel libselinux-devel libstdc++-devel libtool*   libgomp libxml2 libxml2-devel libXpm* libtiff libtiff* make  mpfr ncurses* ntp openssl openssl-devel patch pcre-devel   perl php-common php-gd policycoreutils telnet t1lib t1lib* nasm nasm* wget zlib-devel
mkdir /usr/local/src
mv * /usr/local/src
cd /usr/local/src
tar zxvf pcre-8.41.tar.gz 
mkdir /usr/local/pcre
cd pcre-8.41/
./configure --prefix=/usr/local/pcre
make
make install
cd ..
mkdir /usr/local/openssl
tar zxvf openssl-1.0.1h.tar.gz
cd openssl-1.0.1h
./config --prefix=/usr/local/openssl/
make
make install
vim /etc/profile
. /etc/profile
cd ..
mkdir /usr/local/zlib
tar zxvf zlib-1.2.11.tar.gz
cd zlib-1.2.11/
./configure --prefix=/usr/local/zlib
make
make install
cd ..
tar zxvf nginx-1.8.0.tar.gz
cd nginx-1.8.0
./configure --prefix=/usr/local/nginx --without-http_memcached_module --user=www --group=www --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-openssl=/usr/local/src/openssl-1.0.1h --with-zlib=/usr/local/src/zlib-1.2.11 --with-pcre=/usr/local/src/pcre-8.41
make
make install
/usr/local/nginx/sbin/nginx
groupadd www
useradd -g www www -s /bin/false
/usr/local/nginx/sbin/nginx
vim /etc/rc.d/init.d/nginx
chmod 775 /etc/rc.d/init.d/nginx
chkconfig nginx on

安装Seafile并使用MySQL数据库

mkdir haiwen
mv seafile-pro-server_6.1.7_x86-64.tar.gz haiwen/
cd haiwen
tar xf seafile-pro-server_6.1.7_x86-64.tar.gz
mkdir installed
mv seafile-pro-server_6.1.7_x86-64.tar.gz installed

现在,你的目录看起来应该像这样

├── installed
│   └── seafile-pro-server_6.1.7_x86-64.tar.gz
└── seafile-server-6.1.7
    ├── reset-admin.sh
    ├── runtime
    ├── seafile
    ├── seafile.sh
    ├── seahub
    ├── seahub.sh
    ├── setup-seafile.sh
    └── upgrade

这样设计目录的好处在于
和 seafile 相关的配置文件都可以放在 haiwen 目录下,便于集中管理.
后续升级时,你只需要解压最新的安装包到 haiwen 目录下.

yum install -y mariadb-server
yum install -y python-setuptools python-imaging python-ldap MySQL-python python-memcached python-urllib3
cd seafile-server-6.1.7
./setup-seafile-mysql.sh

该脚本会依次询问你一些问题,从而一步步引导你配置 Seafile 的各项参数:

1.seafile server name
seafile 服务器的名字,目前该配置已经不再使用
3 ~ 15 个字符,可以用英文字母,数字,下划线
2.seafile server ip or domain
seafile 服务器的 IP 地址或者域名
客户端将通过这个 IP 或者地址来访问你的 Seafile 服务
3.seafile data dir
seafile 数据存放的目录,用上面的例子,默认将是 /data/haiwen/seafile-data
seafile 数据将随着使用而逐渐增加,请把它放在一个有足够大空闲空间的分区上
4.seafile fileserver port
seafile fileserver 使用的 TCP 端口
该端口用于文件同步,请使用默认的 8082,不能更改。

在这里, 你会被要求选择一种创建 Seafile 数据库的方式:

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

[1] Create new ccnet/seafile/seahub databases
[2] Use existing ccnet/seafile/seahub databases

如果选择1, 你需要提供根密码. 脚本程序会创建数据库和用户。
如果选择2, ccnet/seafile/seahub 数据库应该已经被你(或者其他人)提前创建。

启动 Seafile 服务器
./seafile.sh start #启动 Seafile 服务
./seahub.sh start   #启动 Seahub 网站 (默认运行在8000端口上)
vim /usr/local/nginx/conf/nginx.conf
    server {
        listen       80;
        server_name  localhost;
        proxy_set_header X-Forwarded-For $remote_addr;
        location / {
        root   html;
        index  index.html index.htm;
        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;
    }

    location /media {
        root /seafile/seafile-server-latest/seahub;
    }
}
/usr/local/nginx/sbin/nginx -s reload
访问IP:8000即可
部署Seafile专业版(三用户免费)_第1张图片
seafile

写在结尾:非常有意思的是,Seafile支持更换logo,企业使用是非常不错的

你可能感兴趣的:(部署Seafile专业版(三用户免费))