在企业多元化协作场景中,我们采用SVN系统作为文档管理的核心工具,然而鉴于团队成员并非全员具备技术背景,传统SVN的使用方式可能无法满足所有人员的操作需求。为实现无缝且高效的文档访问与共享,我们将SVN资源转化为在线文档格式,使其可通过任何浏览器或移动设备便捷预览。
为此,我们引入了开源软件Filebrowser(地址filebrowser.org)这一强大解决方案。凭借Filebrowser的灵活性和智能加载机制,能够实时响应并展示SVN中的目录及文件更新。
根据自身的应用场景,我们设置每隔5分钟执行一次SVN更新(svn up)操作,以保持线上文档内容的及时刷新。而对于对实时性要求较高的场合,则巧妙利用SVN的hooks机制,实现实时触发更新,确保文档变更能够即时传达至线上平台。
通过上述精细化整合与定制化配置,我们成功搭建了一套兼顾效率与易用性的文档管理系统,让每一位团队成员都能够跨越技术壁垒,轻松使用SVN。
具体操作步骤:
1、涉及到的关键环境:
centos7、docker、svn
2、通过docker安装filebrowser:
- 关于docker如何安装,自己查找一下网络资料,这样的资料很全。
# -v 是指宿主机的目录,这样可以永久存储
# -p 根据自己的需求进行修改,这里的9991是宿主机的端口,即系统的访问端口
docker run --name filebrowser -itd \
-v /data/filebrowser/to/root:/srv \
-v /data/filebrowser/to/filebrowser.db:/database/filebrowser.db \
-v /data/filebrowser/to/settings.json:/config/settings.json \
-e PUID=$(id -u) \
-e PGID=$(id -g) \
-p 9991:80 \
--restart=always \
filebrowser/filebrowser
- 安装完成后,filebrowser呈现up状态说明成功
# 查看docker运行信息
docker ps --format "table {{.Names}}\t{{.Status}}\t{{.Ports}}" -a -f "name="
3、svn安装:
yum -y install subversion
4、svn获取目录:
# svn检出目录,ip和目录根据自己实际情况更换
# /data/filebrowser/to/root 为docker创建时的目录
svn co svn://ip/目录 /data/filebrowser/to/root
5、定时任务设置:
# 打开定时编辑
crontab -e
# 添加“*/5”代表每隔5分钟执行一次
*/5 * * * * svn up /data/filebrowser/to/root
# 输入“:wq!”,退出
6、打开filebrowser系统地址:
- 登陆:地址:http://ip:port 用户名/密码为admin / admin
- 设置中文及其它属性,因为是svn预览,所以尽可能的不要这里设置修改权限
- 根据自身情况,可以添加新的账号
- 操作习惯设置
- 目录&文件浏览
- 移动端