开源私有云盘python_使用Seafile搭建个人专属私有云盘

文章介绍

Seafile是一款强大优秀的云同步软件,拥有跨平台文件同步、移动端文件访问、挂载盘、文件共享和权限控制、文件锁定、文件版本管理和资料库镜像、在线编辑和协同编辑、审计日志等功能。下面演示一下该软件安装步骤。

环境介绍

该安装演示过程使用的是CentOS7系统。

安装步骤

安装依赖环境

使用 yum 安装 Python 及 MySQL:

yum install python python-setuptools python-imaging python-ldap python-memcached MySQL-python mariadb mariadb-server

启动 MariaDB 服务:

sudo systemctl start mariadb.servicea

sudo systemctl enable mariadb.service

配置 MySQL:

/usr/in/mysql_secure_installation

配置过程输入参数如截图所示,其中 New password 和 Re-enter new password 字段都设置为 Password,其他字段一路回车使用默认值:

安装 Seafile

下载 Seafile 安装包:

wget https://mc.qcloudimg.com/static/archive/3d8addbe52be88df4f6139ec7e35b453/seafile-server_5.1.4_x86-64.tar.gz

解压 Seafile 安装包:

tar -zxvf seafile-server_5.1.4_x86-64.tar.gz

安装 Seafile 安装包:

sudo mkdir -p /opt/seafile/installed

sudo mv seafile-server_5.1.4_x86-64.tar.gz /opt/seafile/installed

sudo mv seafile-server-5.1.4/ /opt/seafile

cd /opt/seafile/seafile-server-5.1.4

sudo ./setup-seafile-mysql.sh

执行过程输入参数如截图所示,[server name] 字段输入 Seafile,[ This server's ip or domain ] 字段输入教程第一步申请的域名,[ 1 or 2 ] 字段选择 1,mysql 的 [ root password ] 字段输入 Password,其他字段一路回车使用默认值:

启动 Seafile 及修改防火墙规则

启动 Seafile

sudo ./seafile.sh start

sudo ./seahub.sh start

执行过程输入参数如截图所示,其中 [ admin email ] 设置为您登录网盘的帐号,如 [email protected],[ admin password ]和[ admin password again ]设置为登录网盘的密码,如admin_Password:

修改防火墙规则

sudo firewall-cmd --zone=public --permanent --add-port=8082/tcp

sudo firewall-cmd --zone=public --permanent --add-port=8000/tcp

sudo firewall-cmd --reload

CentOS在默认的情况下,防火墙是关闭的。需要开启。使用如下命令:

systemctl start firewalls.service

效果预览

通过上面的配置,此时就可以通过服务器的IP+端口号进行访问了。效果如下:

域名配置

如果你希望通过域名访问该系统。可以使用Nginx的反向代理功能。事先你需要去解析一个域名到当前搭建的服务器上。配置格式如下:

upstream seafile  {

# 云盘系统启动的服务端口

server 127.0.0.1:8000;

}

server {

# 监听端口

listen 80;

# 绑定的域名,填写您的域名

server_name proxy.xxxx.io;

location / {

# 将客户端的 Host 和 IP 信息一并转发到对应节点

proxy_set_header Host $http_host;

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

# 转发Cookie,设置 SameSite

proxy_cookie_path / "/; secure; HttpOnly; SameSite=strict";

# 执行代理访问真实服务器

proxy_pass http://seafile;

}

}

你可能感兴趣的:(开源私有云盘python)