Docker搭建个人网盘NextCloud并接入雨云对象存储的教程

雨云服务器使用Docker搭建私有云盘NextCloud并接入雨云对象存储ROS的教程。

NextCloud简介

NextCloud由原ownCloud联合创始人Frank Karlitschek创建的,继承原ownCloud的核心技术又有不少的创新。在功能上NextCloud和ownCloud差不多,甚至还要丰富一些,在用户使用体验方面,NextCloud安装与使用都非常地顺手,最重要的是NextCloud完全开源免费。

NextCloud不仅是一个私人云网盘平台,也支持多用户同步协作使用。NextCloud支持账号注册,可以为账号开启两步验证,以确保账号安全。同时,NextCloud对于公开分享的文件可以设置有效期,对于上传的视频、音乐、Office文档等直接支持在线预览和播放。

NextCloud还提供了上百种的免费应用和插件,这些NextCloud应用与插件可以将NextCloud打造成为一个在线文档共享与编辑平台、音乐与视频娱乐平台以及文件存储下载平台。当然,如果是自己手动安装的NextCloud的话,那么这些插件也得自己配置好环境才行。

NextCloud服务端开源地址:https://github.com/nextcloud/server

Docker版开源地址:https://github.com/nextcloud/all-in-one

准备

首先需要一台云服务器和一个域名,服务器要有公网IP,推荐雨云的:

雨云优惠注册地址:https://www.rainyun.com/zeruns_?s=csdn

优惠码:zeruns

使用优惠码注册后绑定微信可获得5折优惠券

雨云账号注册&云服务器购买和使用教程:https://www.bilibili.com/video/BV1Kj411x7G6/

注册完账号后进到雨云控制台,云服务器 入口可以在后台的 总览云产品 部分找到:

点击购买云服务器,接着选择服务器区域,如果你域名已备案建议选择宿迁或十堰的,如果你域名没有备案就选择香港或美国,我这里选择香港。

配置选择2核2G一般够用了。

系统选择Debian12 ,预安装APP选择Docker环境(选了这个可以跳过下面安装Docker的步奏)。如果所选区域没有Debian12就选择Debian11,如果没有预安装Docker就需要执行下面教程安装Docker那步。

都选好后就可以点击立即购买了,也可以选择1元试用1天。

购买后即可在我的云服务器这里看到你买的云服务器,点击管理

接着就可以看到云服务器的信息了,在这里重装/切换系统,可以升级配置。

等待服务器创建完成以及预安装APP安装完成。

连接服务器

下载安装并打开ssh客户端软件,ssh客户端软件推荐putty或mobaxterm。

我这里用mobaxterm,在SSH客户端中输入你的服务器的IP地址(雨云控制台获取),还有SSH端口(一般默认是22),然后点击好的或者打开。

然后输入账号并按回车,账号一般默认为root,接着输入密码并按回车确定,输入密码时不会显示出来。

温馨提示:在SSH终端中按住鼠标左键选择文字,然后松开鼠标,再在空白处单击一下,这样就把选中的文字复制了;在SSH终端单击右键即为粘贴。

安装Docker

如果选择了预安装Docker环境就直接跳过安装这一步,直接Docker换国内源那一步。

在ssh终端,输入下面的指令。

用apt包管理器来安装:

bash 复制代码
# 安装docker,如果遇到问是否继续的就输入y来确定
apt install docker.io

# 设置docker开机自启和启动docker
systemctl enable docker && systemctl start docker

# 检查是否安装成功,若安装成功会显示 Docker version x.x.x
docker -v

若没安装成功就试试下面的安装脚本:

bash 复制代码
# 安装docker
curl -sSL https://get.daocloud.io/docker | sh

# 设置docker开机自启和启动docker
systemctl enable docker && systemctl start docker

# 检查是否安装成功,若安装成功会显示 Docker version x.x.x
docker -v

如果还是不行就尝试下面链接的手动安装教程吧

docker手动安装教程:https://www.runoob.com/docker/ubuntu-docker-install.html

Docker换国内源

bash 复制代码
# 创建或修改 /etc/docker/daemon.json 文件
apt install nano && nano /etc/docker/daemon.json

# 然后输入下面内容:(输入完后按Ctrl+O,然后回车保存,接着按Ctrl+X退出编辑器)
{
  "registry-mirrors": ["https://docker.nju.edu.cn"]
}

# 重启docker服务
systemctl restart docker.service

设置域名解析

将一个域名解析到你服务器IP

安装NextCloud

执行下面命令运行Nextcloud AIO:

bash 复制代码
docker run \
    --sig-proxy=false \
    --name nextcloud-aio-mastercontainer \
    --restart always \
    --publish 80:80 \
    --publish 8080:8080 \
    --publish 8443:8443 \
    --publish 3478:3478 \
    --volume nextcloud_aio_mastercontainer:/mnt/docker-aio-config \
    --volume /var/run/docker.sock:/var/run/docker.sock:ro \
    --env NEXTCLOUD_DATADIR=/data/nextcloud \
    nextcloud/all-in-one:latest

上面命令中的/data/nextcloud是Nextcloud网盘数据文件夹,你可以自行更改放在你想放的地方。

会在以下端口开启服务:

  • 80:Nextcloud HTTP服务,用于重定向到HTTPS
  • 8080:Nextcloud AIO HTTPS服务,使用自签名证书
  • 8443:Nextcloud AIO HTTPS服务,自动签发Let's Encrypt证书

在后续安装时,还会在443端口开启Apache的HTTPS服务,自动签发Let's Encrypt证书。

将域名绑定到公网IP 后,访问https://你的域名:8443进入Nextcloud AIO。如果无法访问或证书错误,请检查80端口是否正常开放。

进入NextCloud

复制下面这串密码,这个只会在第一次进入时显示。

输入刚刚复制的密码然后点log in

登录之后AIO会提示输入域名,这里输入你的域名就行。

到达下一步container页面后,我们先把时区改成上海的。 输入Asia/Shanghai 提交即可。

然后是安装你所需要的插件,如果不安装,则直接点击下载并且启动容器,如果要安装的话,请确保符合最低配置要求。下面有写:

看到这个页面就是搭建成功了。

点击Open your Nextcloud 跳转到登陆页面,输入刚刚页面显示的初始账号密码,然后登陆。

创建对象存储存储桶

雨云对象存储介绍:https://forum.rainyun.com/t/topic/6107

回到雨云控制台,点击云产品 ,点击对象存储右边的立即购买

选择一个套餐并购买,目前雨云对象存储刚发布一周内活动价5折。

接着进到对象存储控制台,点击创建存储桶

接着输入要创建的存储桶名称,选择刚刚购买的实例,点击创建。

点击存储桶右边的管理按钮,进入的存储桶的管理页面

点击信息与监控,这里的信息等会要用到

挂载雨云对象存储ROS

点击右上角头像 ,点击应用

在精选应用这里找到External storage support(外部存储支持),点击启用。

点击头像,点击管理设置

点击左边栏这里的外部存储

选择存储类型Amazon S3

参照下面图片填写,

  • 目录名称自己定一个,
  • 认证选Access key,
  • Bucket填你刚刚创建的存储桶的桶名称,
  • 主机名填对象存储控制台显示的API端点,只用填域名就行,前面的https和后门的桶名称不用填进去,
  • 勾选启用SSL
  • 勾选启用Path Style
  • 如果需要所有用户都能访问这个文件夹就勾选所有用户
  • 下面两个框填你的Access Key和Secret Key

点击最右边的钩√

点击文件这里就可以看到刚刚挂载的目录

推荐阅读

相关推荐
大树883 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠3 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
霸道流氓气质3 天前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务
Inhand陈工3 天前
基于台达PLC与映翰通IG502的智慧水产养殖精准投喂与远程运维解决方案
运维·人工智能·物联网·阿里云·信息与通信
Alsn863 天前
等待学习-学习目录:Docker 容器安全攻防
学习·安全·docker
酣大智3 天前
ARP代理--工作原理
运维·网络·arp·arp代理
shushangyun_3 天前
2026年快消品B2B系统推荐:支持终端门店订货、促销政策自动化的工具?
java·运维·网络·数据库·人工智能·spring·自动化
施努卡机器视觉3 天前
SNK施努卡侧滑门锁上滑轮总成自动化装配线,从零件到组件,全流程精密制造方案
运维·自动化·制造
AC赳赳老秦3 天前
用 OpenClaw 搭建服务器故障应急响应系统,自动处理 80% 常见运维故障
android·运维·服务器·python·rxjava·deepseek·openclaw
2601_961875243 天前
决战申论100题2026|最新|范文
linux·容器·centos·debian·ssh·fabric·vagrant