一步步教你如何搭建一个私人网盘

admin
admin
admin
56
文章
2
评论
2020年3月7日16:53:50 评论 140 1623字阅读5分24秒
简介 

今天带大家通过docker利用Nextcloud搭建一套属于自己或团队的云同步网盘

Nextcloud介绍:

Nextcloud是一款开源免费的私有云存储网盘项目,可以让你快速便捷地搭建一套属于自己或团队的云同步网盘,从而实现跨平台跨设备文件同步、共享、版本控制、团队协作等功能。它的客户端覆盖了Windows、Mac、Android、iOS、Linux 等各种平台,也提供了网页端以及 WebDAV接口,所以你几乎可以在各种设备上方便地访问你的云盘

其实,Nextcloud的服务端部署方式有很多种,今天以Docker方式部署是因为docker可以跨平台运行,可以确保执行环境的一致性,有利于应用的迁移和管理。

开始部署 

1、安装并启动docker-ce

[root@qll251 ~]# cat /etc/redhat-releaseCentOS Linux release 7.7.1908 (Core)##本次实验以CentOS7.7 为例yum install -y yum-utils device-mapper-persistent-data lvm2yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repoyum -y install docker-cesystemctl start docker && systemctl enable docker

 具体安装步骤,参考:Docker安装部署

2、拉取Nextcloud镜像

docker pull nextcloud

3、启动nextcloud容器

mkdir /nextclouddocker run -d --name nextcloud -p 2020:80 -v /nextcloud:/var/www/html nextcloud

简单解释下上述命令:

  • docker run :启动一个容器
  • -d:后台运行容器
  • --name nextcloud:命名容器的 name 为 nextcloud
  • -p 2020:80:将容器的 80 端口映射到服务器的 2020 端口
  • -v:将服务器的目录/nextcloud挂载到容器的/var/www/html
  • nextcloud:要启动的镜像名称

如果您的回显是这样的,忽略下面的解决办法

一步步教你如何搭建一个私人网盘

如果您提示如下错误:

一步步教你如何搭建一个私人网盘

解决办法:

# 开启IPv4转发功能vim /etc/sysctl.confnet.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作为数据库,否则建议其他的数据库后端,点击安装完成完成部署。

一步步教你如何搭建一个私人网盘

客户端体验

一步步教你如何搭建一个私人网盘

admin
  • 本文由 发表于 2020年3月7日16:53:50
  • 除非特殊声明,本站文章均为原创,转载请务必保留本文链接
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: