公司最近准备搭建私有文件存储服务,主要的需求点在团队协作,文件共享和权限控制,我又有机会冒充系统管理员啦。
一直对seafile很感兴趣,给L演示后,他也觉得不错,于是开始搭建。
首选方案当然是用docker。一搜github找到它: docker-seafile
剩下的就是细节啦。
安装seafile
- 安装docker,参考 我此前的文章
- docker run:
sudo docker run -t -i \ -p 10001:10001 \ -p 12001:12001 \ -p 8001:8000 \ -p 8080:8080 \ -p 8082:8082 \ -v /srv/seafile:/opt/seafile \ jenserat/seafile -- /bin/bash
mkdir seafile&cd seafile
,git clone https://github.com/JensErat/docker-seafile.git
- 在宿主机里
cd docker-seafile
,./download-seafile.sh
,sudo cp . /srv/seafile -R
- 进入容器:
/opt/seafile/seafile-server-4.3.2/setup-seafile.sh
,回答相应问题 /opt/seafile/seafile-server-latest/seafile.sh start
/opt/seafile/seafile-server-latest/seahub.sh start
- exit
运行seafile
docker run -d \ --name seafile \ -p 10001:10001 \ -p 12001:12001 \ -p 8001:8000 \ -p 8080:8080 \ -p 8082:8082 \ -v /srv/seafile:/opt/seafile \ -e autostart=true \ jenserat/seafile
使用
访问ip:8001
重新配置
进入到容器中 rm -rf /opt/seafile/ccnet rm -rf /opt/seafile/seafile-data /opt/seafile/seafile-server-4.3.2/setup-seafile.sh
定制开发(将其作为文件服务)
- web api : http://manual-cn.seafile.com/develop/web_api.html#file-share-link
- python api : http://manual-cn.seafile.com/develop/python_api.html
桌面端已经移动端下载
https://www.seafile.com/download/
接口调试
试了下缩略图功能:http://manual-cn.seafile.com/develop/web_api.html#get-thumbnail-image
- 获取token:
curl -d "username=MYUSERNAME&password=MYPASSWORD" http://murpfile.tunnel.mobi/api2/auth-token/
- 获取缩略图:
curl -H "Authorization: Token MYTOKEN" http://MYSERVER/api2/repos/{repo_id}/thumbnail/?p=echarts5.jpeg&size=123 > thumbnail.png
其中repo_id进入具体资料库,从url中可以看到