Docker部署NextCloud
集成环境
CentOS7+Docker CE(社区版)+NextCloud社区版
Docker安装(已安装可跳过)
yum update //安装yum-utils yum install -y yum-utils device-mapper-persistent-data lvm2 //添加镜像源 yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo //安装具体版本 yum install docker-ce-18.03.1.ce //也可先查看版本列表再选择 $ yum list docker-ce --showduplicates | sort -r //开启启动(可选) systemctl start docker
安装NextCloud
docker pull nextcloud //启动与配置本机端口:容器端口映射(http端口) docker run -it -d -p3002:80 --name nextcloud nextcloud //查看container是否启动 docker ps
NextCloud数据库初始化
NextCloud支持SQLite/MySql等方式进行存储,首次初始化使用web进行访问
http://xxx.com:8088/
若当前服务器已安装相应数据库,如mysql,你可以使用相应账号和密码进行初始化。或者选择其它数据库,再点击install,随后会自动安装依赖。
注意安全组需先放开此端口(如示例中的3002)
NextCloud配置修改
1.进入镜像
先使用docker ps查找到nextcloud的container id,再使用如下命令进入:
docker exec -it 实际ID /bin/bash
2.更改Trusted_Domains配置
NextCloud默认只允许一开始开启的端口(如3002)访问,因此需要移除端口限制,更改成我们自身域名即可.
3.配置https
https的配置主要有两步,第一步为nginx使用443反向代理转发到nextcloud端口,同时配置子路径,与其它服务隔离开。另外因为通过nginx进行了转发,因此也要设置缓存值和请求体大小等,避免上传失败;第二步为重写nextcloud配置,同步nginx子路径,同时强制重定向走https协议。
当前https也可使用其它配置方式,详见官方文档
开启Server-side encryption
使用默认加密模块,开启服务端加密已加密上传文件。
加密app默认disable,开启server-side encryption后同时也应当启用,前往Disabled apps/Default encryption module启用即可.
注意加密开启会增大文件体积等,开启时可详细阅读提示内容.
webdav测试
Mac通过Finder可以直接connect测试
iOS可通过infuse视频播放器
智能盒子可以安装nPlayer等apk进行测试
NextCloud本身优势之一就是跨平台,也可下载nextcloud app/desk client进行管理.
NextCloud性能优化
如网页访问卡顿等,TODO。