简介
今天带大家通过docker利用Nextcloud搭建一套属于自己或团队的云同步网盘
Nextcloud介绍:
Nextcloud是一款开源免费的私有云存储网盘项目,可以让你快速便捷地搭建一套属于自己或团队的云同步网盘,从而实现跨平台跨设备文件同步、共享、版本控制、团队协作等功能。它的客户端覆盖了Windows、Mac、Android、iOS、Linux 等各种平台,也提供了网页端以及 WebDAV接口,所以你几乎可以在各种设备上方便地访问你的云盘。
其实,Nextcloud的服务端部署方式有很多种,今天以Docker方式部署是因为docker可以跨平台运行,可以确保执行环境的一致性,有利于应用的迁移和管理。
开始部署
1、安装并启动docker-ce
- [root@qll251 ~]# cat /etc/redhat-release
- CentOS Linux release 7.7.1908 (Core)
- ##本次实验以CentOS7.7 为例
- 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 -y install docker-ce
- systemctl start docker && systemctl enable docker
具体安装步骤,参考:Docker安装部署
2、拉取Nextcloud镜像
- docker pull nextcloud
3、启动nextcloud容器
- mkdir /nextcloud
- docker run -d --name nextcloud -p 2020:80 -v /nextcloud:/var/www/html nextcloud
简单解释下上述命令:
如果您的回显是这样的,忽略下面的解决办法
如果您提示如下错误:
解决办法:
-
- # 开启IPv4转发功能
- vim /etc/sysctl.conf
- net.ipv4.ip_forward=1 #配置转发
-
- systemctl restart network #重启服务,让配置生效
-
- #查看是否成功,如果返回为“net.ipv4.ip_forward = 1”则表示成功
- sysctl net.ipv4.ip_forward
4、指定容器开机自启动
- docker update --restart=always nextcloud
5、禁用防火墙或 宿主机放通2020端口
- //关闭防火墙
- [root@qll251 ~]# systemctl stop firewalld
- ==================================或者放通2020端口
- [root@qll251 ~]# firewall-cmd --permanent --zone=public --add-port=2020/tcp
- [root@qll251 ~]# firewall-cmd --reload
6、ECS云主机安全组配置
由于我使用的**云的ECS云主机,因此还需要在控制台上配置安全组
1)控制台-->"更多"-->“网络和安全组”--“安全组配置”
2)添加规则:允许所有人访问服务器的2020端口
7、访问Web端初始化
访问http://{你的服务器ip地址}:{端口},第一次访问要设置管理员用户名和密码,如果是单人使用,可以直接使用SQLite作为数据库,否则建议其他的数据库后端,点击安装完成完成部署。
客户端体验
本次实验,我是直接部署在互联网上。感兴趣的小伙伴,可点击最下方的原文链接或者在浏览器输入:
http://39.96.81.141:2020
用户名:test
密码:20200303
小提示:
本次实验使用的云主机网络带宽只有1M,访问人数过多时体验可能不是很友好哦。本文仅作搭建学习之用