Docker部署Seafile服务

背景
作为一台半AIO的NAS,除了使用SMB挂在外,还需要有一个云盘管理软件。
常见的有
- owncloud
- nextcloud
以上两个服务太重了,不太适合我。需要一个轻量级的服务。尽可能少的占用资源。最后选择了seafile
其可以做到文件夹无感同步。这点对于我来说比较重要。
先决条件
因为采用docker部署,所以需要安装docker, docker-compose。
如果采用自己的mysql服务,则需要准备一个mysql服务。并需要root账户密码。
部署脚本
1 | version: '2.0' |
等待拉取镜像,启动。
因为一些原因,会导致admin账号创建失败
1 | Seahub is started |
碰到这个报错不要慌。因为seafile自动生成的数据库密码有问题,导致的
- 查询seafile生成的密码
1 | docker exec -it seafile cat /shared/seafile/conf/seafile.conf | grep password |
1 | password = 5b1fd1f4-f8f2-45a8-aa4e-***** |
这里显示的就是seafile生成的密码
- 把数据库密码替换掉
注意把密码换成查到的
1 | ALTER USER 'seafile'@'%.%.%.%' IDENTIFIED BY '5b1fd1f4-f8f2-45a8-aa4e-***' PASSWORD EXPIRE NEVER; |
- 创建管理员账号
1 | docker exec -it seafile /opt/seafile/seafile-server-latest/reset-admin.sh |
按照提示,输入邮箱,密码(需要两遍)
然后打开 http://ip:85
使用创建的管理员账号登陆即可。