百度云盘必须会员,否则速度慢到你怀疑人生,同步盘也不知道哪年就取消了;自己有服务器,空间足够存放资料;想自己建设一个云盘实现资料统一存放,各种终端实时同步,那么不放了解下Seafile云盘系统,重要的是开源、免费、用户体验好!
提示:以下是seafile云盘服务器的安装过程,系统选择Centos 7 ,基于Docker部署,下面过程可供参考
Seafile 是一款开源的企业云盘,注重可靠性和性能。支持 Windows, Mac, Linux, iOS, Android 平台。支持文件同步或者直接挂载到本地访问。 官网:
https://www.seafile.com/
升级现有系统
sudo yum update
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine
安装一些必要的系统工具:
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
安装 pip :
yum -y install epel-release
yum -y install python-pip
#升级
pip install --upgrade pip
添加软件源信息:
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
更新 yum 缓存:
sudo yum makecache fast
安装 Docker-ce:
sudo yum -y install docker-ce
启动 Docker 后台服务
sudo systemctl start docker
镜像加速
vim /etc/docker/daemon.json
请在该配置文件中加入(没有该文件的话,请先建一个):
{
"registry-mirrors": ["http://hub-mirror.c.163.com"]
}
重新启动 Docker 后台服务
sudo systemctl restart docker
代码如下(示例):
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import warnings
warnings.filterwarnings('ignore')
import ssl
ssl._create_default_https_context = ssl._create_unverified_context
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
vi /etc/selinux/config
#SELINUX=enforcing #注释掉
#SELINUXTYPE=targeted #注释掉
SELINUX=disabled #增加
:wq! #保存退出
setenforce 0 #使配置立即生效
安装docker-compose
yum install docker-compose -y
//安装pip中已经完成
检查是是否成功:
docker-compose -version
下载docker-compose.yml文件
yum install wget
cd /home //下载至home目录 ,后面启动容器 要在此目录
wget https://cloud.seafile.com/seafhttp/files/ffc5088e-6863-44b3-93e5-03765325d5f1/docker-compose.yml (文件路径会变化)
注意下载最新的文件,根据实际情况下载
https://docs.seafile.com/d/cb1d3f97106847abbf31/files/?p=/docker/docker-compose.yml
修改密码和持久化
MySQL root 用户的密码 (MYSQL_ROOT_PASSWORD and DB_ROOT_PASSWD)
(两处修改)
持久化存储 MySQL 数据的 volumes 目录 (volumes)
-v 宿主目录:容器目录
/home/seafile-data:/shared
持久化存储 Seafile 数据的 volumes 目录 (volumes)
/home/seafile-mysql/db:/var/lib/mysql
设定管理员账号密码
- SEAFILE_ADMIN_EMAIL=me@example.com(初始化一个管理员账号)
- SEAFILE_ADMIN_PASSWORD=seafile28 (初始化一个管理员密码,默认为asecret)
修改端口
ports:
- “80:80”
- “443:443”
启用SSL
**重要提示:**
如果需要证书,推荐使用阿里云证书,可以申请个人免费版版
申请后,下载apache版本证书 将文件修改为***.com.crt 和 ***.com.key (public的) 上传存放于/home/seafile-data/ssl目录下,SEAFILE_SERVER_LETSENCRYPT=false 改为true即可。
启动docker
systemctl start docker
systemctl enable docker(设为开机启动)
不开机启动或先启动docker,运行时会报错:docker error Couldn’t connect to Docker daemon at http+docker://localunixsocket - is it running?
在docker-compose.yml所在文件夹运行:
docker-compose up -d
常见docker-compose命令
docker-compose up -d 后台方式建构启动容器
docker-compose down 删除所有容器,镜像 (除了被持久的部分,会删除所有配置)
docker-compose ps 显示所有容器
docker-compose stop 停止容器
docker-compose start 启动容器
docker-compose restart 重启容器
代码如下(示例):
data = pd.read_csv(
'https://labfile.oss.aliyuncs.com/courses/1283/adult.data.csv')
print(data.head())
查看日志
系统日志存放在 /shared/logs/var-log 目录下,或者宿主机目录 /home/seafile-data/logs/var-log。
log日志不要随意删除,删除后会造成无法启动问题。
修改seafile服务配置
Seafile 的配置文件存放在 shared/seafile/conf 目录下,您可以根据Seafile 手册的指导来修改这些配置项。修改后需要重启 :
docker-compose restart
采用docker方式安装的seafile,升级是最简单的,需要升级时,运行
docker pull seafileltd/seafile-mc:latest
docker-compose down
docker-compose up -d
出现问题 尝试 清空 /tmp/seahub_cache 目录
安装完成后,访问域名,通过初始化建立的账号密码登录,在系统管理中添加或者批量导入用户。
seafile提供了丰富的客户端种类,windows、linux、mac、iphone、android基本都有,可以在官网自行下载。官网下载网址“https://www.seafile.com/download/”。