NextCloud自建家用网盘

简介: 在阿里云ECS(2核2G,SSD40G,3M带宽)上,安装Ubuntu 22.04,然后配置FRPs,设置权限,开放端口。本地服务器拉取 `NextCloud` Docker镜像,并通过docker-compose进行容器部署,容器启动成功,通过FRPc链接到云主机,到这里就已经实现本地网盘服务可以通过公网访问。

一、准备工作

1.1. 准备一台云服务器

我选择的是阿里云ECS,配置:2核2G,SSD40G,3M固定带宽(今年销冠)。

服务器的操作系统选用ubuntu 22.04。

1.2. 准备一台家用服务器

宝子们有淘汰下来的笔记本就可以拿来当家庭服务器来用,我用的是10年前的小黑,跑起linux同样丝滑不减当年。


二、安装docker容器化工具

2.1. docker容器安装

2.2. docker-compose工具安装

2.2.1. 通过docker-compose部署的优势

  • 应用环境自定义灵活

需要依赖容器环境的应用,可以一次性配置,应用服务、数据库、web服务器等均可以通过参数自定义配置。

  • 运维便捷

运维的应用服务只要通过yml文件拉去最新镜像就可以完成更新。

通过这次项目实操配置yml文件完成应用部署,宝子们一定会爱上它。

2.2.2. github拉取资源

sudo curl -L "https://github.com/docker/compose/releases/download/v2.26.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose


到这一步,我相信所有的宝子们已经被github喜感的下载速度给惊呆了,并且下载中途发现报错一定会让你们无比抓狂,直接FC爆粗有没有?现在大可不必了,解决方案送给你们!

免费的福利送大家,送我免费的赞也让我知道大家都顺利避坑了。

#拉取过程出现报错curl: (92) HTTP/2 stream 1 was not closed cleanly: PROTOCOL_ERROR (err 1) # HTTP/2 调整为 HTTP/1.1sudo git config --system http.version HTTP/1.1


2.2.3. 验证docker-compose拉取是否成功

docker-compose --version


2.2.4. 修改docker-compose执行权限

docker-compose拉取下来并修改操作权限。

sudo chmod +x /usr/local/bin/docker-compose

三、部署Nextcloud

3.1. 配置yml文件

#创建yml文件vim ./docker-compose.yml #配置容器环境参数 version: "3"services:  nextcloud:    container_name: app-nextcloud    image: nextcloud:latest    restart: unless-stopped    ports:      - xxx:80    environment:      - MYSQL_HOST=mysql      - MYSQL_DATABASE=nextcloud      - MYSQL_USER=nextcloud      - MYSQL_PASSWORD=xxx    volumes:      - /home/forrest/Data/docker_data/nextcloud/data:/var/www/html   mysql:    container_name: db-nextcloud    image: mysql:latest    environment:      - MYSQL_DATABASE=nextcloud      - MYSQL_USER=nextcloud      - MYSQL_PASSWORD=xxx      - MYSQL_ROOT_PASSWORD=nextcloud    volumes:      - /home/forrest/Data/docker_data/nextcloud/db:/var/lib/mysql


敲黑板,两个重要的避坑点,请当心!!!

  • port端口配置

9100(本地主机端口号):80 (容器端口号,默认80)

本地主机端口号是后面配置frp穿透工具时还会配置使用的参数,请牢记!!!

  • volumes卷的配置

/path/to/data(本地文件夹):/var/www(lib)/html(mysql)(容器内对应文件夹),本地文件夹就看宝子们自己的喜欢命名来,容器对应文件夹是nextcloud默认的。

3.2. 启动容器

#启动nextcloud容器,mysql容器docker-compose up -d

四、配置frp内网穿透模式

4.1. 内网穿透工具frp下载

有篇专门写frp工具的使用,可以参考这一篇:《自建家用服务器》

4.2. 云主机端下载frp工具并配置frps服务器参数

#通过vim对配置文件进行修改 $ vim ./frps.toml #绑定端口号bindport=9200

4.3. 本地主机下载frp工具并配置frpc客户端参数

# 通过vim进行配置文件修改 $ vim frpc.toml # frpc.toml配置文件内容serverAddress = "云服务器公网ip"serverPort = 9200 [[proxies]]name = "nextcloud"type = "tcp"localIP = "127.0.0.1"localPort = 9100remotePort = 9020

4.4. 启动frps以及frpc

4.4.1. 安全组配置

frps和frpc的配置文件中,serverPort:9200,remotePort:9020,这两个端口号需要在云主机上放通才可以正常通讯,路径:阿里云账号进入控制台->安全组

4.4.2. 启动内网穿透模式

#云主机启动frps进程nohup ./frps -c ./frps.toml >/dev/null 2>&1 & #本地启动frpc进程nohup ./frpc -c ./frpc.toml >/dev/null 2>&1 & #通过ps查看进程ps -ef | grep frps(frpc)


宝子们看到截图是不是被整迷糊了,nextcloud_nohup.out是什么鬼,其实,这是我的运行日志,不需要的可以直接丢进黑洞(/dev/null)。

五、 登录Nextcloud

5.1. 通过公网ip登录nextcloud网盘

通过阿里云公网ip:9020,宝子们可以看到nextcloud的登录界面,第一次登录会让你创建管理员并配置密码。

到这里,后面的操作就是大家再熟悉不过的了,我也就不再啰嗦了!

5.2. 测试网盘

从我的工作电脑上传了照片到网盘,上传的速度非常满意。接下来,我准备把某度盘的资料通通迁移过来,有需要我出一期迁移资料篇给大家,有需要的宝子们可以留言。



相关实践学习
自建数据库迁移到云数据库
本场景将引导您将网站的自建数据库平滑迁移至云数据库RDS。通过使用RDS,您可以获得稳定、可靠和安全的企业级数据库服务,可以更加专注于发展核心业务,无需过多担心数据库的管理和维护。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
存储 Ubuntu 网络协议
NAS个人云存储 - 手把手教你搭建Nextcloud个人云盘并实现公网远程访问(上)
NAS个人云存储 - 手把手教你搭建Nextcloud个人云盘并实现公网远程访问
|
存储 Ubuntu 网络协议
Ubuntu本地部署Nextcloud并结合内网穿透实现远程访问搭建个人云盘
Ubuntu本地部署Nextcloud并结合内网穿透实现远程访问搭建个人云盘
926 1
|
数据安全/隐私保护 Docker 容器
【Docker】使用docker安装部署NextCloud私人网盘
【Docker】使用docker安装部署NextCloud私人网盘
5101 0
【Docker】使用docker安装部署NextCloud私人网盘
|
存储 Ubuntu 网络协议
轻松搭建Nextcloud私有云盘并实现远程访问【内网穿透】
轻松搭建Nextcloud私有云盘并实现远程访问【内网穿透】
|
2月前
|
人工智能 安全 机器人
OpenClaw傻瓜部署教程——阿里云无影云电脑OpenClaw(Clawdbot)安装图文流程
本教程详解如何在阿里云无影云电脑上一键部署OpenClaw(Clawdbot)机器人:3步分钟级启动,内置多款AI技能;支持钉钉、QQ、飞书等IM平台快速接入,仅需配置密钥即可唤醒;含百炼API对接、7×24运行设置及镜像变更指南。
2653 4
|
编解码 前端开发
Element el-row el-col 布局组件详解
本文目录 1. 背景 2. 分栏布局 3. 分栏间隔 4. 分栏偏移 4. 对齐方式 5. 响应式布局 6. 小结
7598 0
Element el-row el-col 布局组件详解
|
9月前
|
关系型数据库 应用服务中间件 nginx
Docker一键安装中间件(RocketMq、Nginx、MySql、Minio、Jenkins、Redis)
本系列脚本提供RocketMQ、Nginx、MySQL、MinIO、Jenkins和Redis的Docker一键安装与配置方案,适用于快速部署微服务基础环境。
|
8月前
|
Ubuntu 安全 定位技术
ubuntu桌面版安装教程
完成 Ubuntu 22.04.1 LTS 安装 重启后,看到如下界面,请按【回车】键 使用之前设置的用户名和密码登录系统
|
运维 网络安全 数据安全/隐私保护
Nextcloud一键部署:快速搭建如企业钉钉或飞书的团队协作平台
Nextcloud Hub 是一款来自德国的完全开源的云上托管内容协作平台。团队内成员可以通过移动、桌面和 Web 界面访问、共享和编辑文档,聊天和参与视频通话以及管理邮件、日历和项目。目前,Nextcloud的产品定位是在保障数据安全下的完整协作平台,功能类似国内的企业钉钉或飞书。Nextcloud官网:[https://nextcloud.com/](https://nextcloud.com/) 。
Nextcloud一键部署:快速搭建如企业钉钉或飞书的团队协作平台
|
网络安全 开发工具 数据安全/隐私保护
自建内网穿透服务器
本文介绍了如何使用FRP实现内网穿透。首先准备一台具有公网IP的云服务器和一台内网服务器,接着在云服务器上安装Docker和FRP服务端,配置`frps.ini`文件并启动服务。在内网服务器上手动安装FRP客户端,配置`frpc.ini`文件并启动服务。最后通过FRP控制台验证连接状态,确保可以通过公网IP访问内网服务。
4532 10
自建内网穿透服务器

热门文章

最新文章