惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

雷峰网
雷峰网
MongoDB | Blog
MongoDB | Blog
D
Docker
Martin Fowler
Martin Fowler
人人都是产品经理
人人都是产品经理
GbyAI
GbyAI
Jina AI
Jina AI
酷 壳 – CoolShell
酷 壳 – CoolShell
M
MIT News - Artificial intelligence
腾讯CDC
阮一峰的网络日志
阮一峰的网络日志
H
Hackread – Cybersecurity News, Data Breaches, AI and More
N
Netflix TechBlog - Medium
B
Blog RSS Feed
云风的 BLOG
云风的 BLOG
Blog — PlanetScale
Blog — PlanetScale
Vercel News
Vercel News
The Cloudflare Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
有赞技术团队
有赞技术团队
G
Google Developers Blog
Stack Overflow Blog
Stack Overflow Blog
I
InfoQ
U
Unit 42

少数派

派早报:Google 发布 Fitbit Air 等 - 少数派 「新人报到」確認需求,再開始 - 少数派 从 SOLO 独立开发者社区,我看到了越来越多开发者开始做自己的产品 - 少数派 我怎么管理那些"不常做,但总会忘"的生活事项 - 少数派 人形机器人量产元年,数据才是具身智能的“生死线” - 少数派 BuhoLaunchpad 高度还原 Mac 启动台:开发历程与思考 - 少数派 五年陪伴依然不舍,DIY 换壳后让罗技 MX Master 3 继续服役 - 少数派 新玩意 240|少数派的编辑们最近买了啥? - 少数派 一日一技|为什么你应该关闭 iOS 的键盘声音 - 少数派 我做了个插件和 Skills,一键提取任何网站的设计规范 Design.md - 少数派 住在三四线城市的你,该开始录播客了 - 少数派 甘南秘境,大白高国 - 少数派 AI的审美:谁让把我变成川内倫子 - 少数派 返工怎能不烦恼,打工人片单总有一部是你的「嘴替」 - 少数派 为了让「上厕所」更健康,我做了一个小工具 - 少数派 AI + Skill,能够让生成的文章去除 AI 味吗? - 少数派 新玩意|韶音OpenDots ONE 耳夹式耳机 - 少数派 《美满》| 在每一个春天的晚上相爱(362) - 少数派 新玩意|优篮子 PS01 MagSnap 磁吸支架 - 少数派 自我整合手记 | 我开始早睡了:用稳定规则,为自由托底 - 少数派 用龙虾(OpenClaw)两个多月,我最深的12个体会 - 少数派 听歌时间到,12 张你可能错过的 2025 华语乐坛好专辑 - 少数派 承诺能追吗 - 少数派 macOS 26启动台没了? 我做了个不一样的App启动器 - Keboard - 少数派 《四海为家的人》| INTJ对话INTJ(361) - 少数派 你发过的那些黑历史,是时候一次清干净了 - 少数派 新玩意:安安静静玩,越玩越专注:计客密码机 - 少数派 iPad 用户首次体验 Android 平板:vivo Pad6 Pro - 少数派 数据逻辑强 - 少数派 极北行+ | 一路向北,探访日本至北之地 | 001 - 少数派
Nextcloud:打造属于自己的网盘服务 Docker 版(附带视频) - ...
2019-06-17 · via 少数派

目前,国内的主流网盘服务商有百度网盘,微云以及坚果云。论使用频次最多,资源最多的当属百度网盘了。可问题是,百度网盘的口碑并不是很好,「限速,资源限制,监听隐私」等新闻时常出现(最近的百度输入法)。那么,对个人隐私有着较高要求的用户与不满于百度网盘限速的用户,可以尝试一种新的选择——搭建属于自己的网盘服务,一切都可控。

Nextcloud 是有商业软件 Owncloud 的一个分支开发而成,是一款开源和免费的自建网盘服务软件,支持 iOS、Android 以及桌面客户端。作为个人用户,可以在 VPS,树莓派,甚至在废弃的旧电脑上也能轻松地搭建起 Nextcloud 服务。

本篇文章使用 Docker 脚本一件部署 Nextcloud 服务,只需要一些简单的设置,即可使用。

可以前往 Nextcloud Demo 进行体验。

以 Centos 为例(其他系统可以参考 官方文档安装),输入下面的代码,

$ sudo yum install -y yum-utils device-mapper-persistent-data lvm2

$ sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

$ sudo yum install docker-ce docker-ce-cli containerd.io

依次运行后,可以输入命令 docker —versioin,通过是否有版本输出信息来确定是否安装成功。

Docker 安装完成后,需要安装 docker-compose,输入下面的命令,

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

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

同样,执行命令后,可以输入命令 docker-compse —version,通过是否有版本输出信息来确定是否安装成功。

2. 下载 Nextcloud-docker 脚本

因为官方的脚本有些问题,并且初学者并不好弄清楚,所以我自己做了一个 Docker 脚本,输入下面的命令,

$ git clone https://github.com/goawayit/Docker-Hub.git ~/Downloads/nextcloud

$ cd ~/Downloads/nextcloud

执行完上面的命令之后,便进入了脚本所在的目录。

目前,主要有四个文件:

  • docker-compose.yaml:Docker 部署脚本
  • app.env:Nextcloud 参数配置
  • mysql.env:MySQL 参数配置
  • nginx.conf:Nginx 配置文件

3. 安装 Letsencrpt 证书


首先需要安装 Certbot程序,该程序可以更加方便地申请到 Letsencrpt 证书。

同样,以 Centos 为例(其他系统可以参考 官方文档 安装),输入下面的命令,

$ yum -y install yum-utils

$ yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional

$ sudo yum install certbot python2-certbot-nginx

安装完成后,输入下面的命令开始申请 Letsencrpt 证书,

$ certbot certonly -d "*.example.com" --manual --preferred-challenges dns --server https://acme-v02.api.letsencrypt.org/directory

其中,需要将 *.example.com更改成你自己的域名地址,然后执行命令。需要注意的是,当如下的提示的时候,需要先暂停一下,

Please deploy a DNS TXT record under the name

_acme-challenge.example.com with the following value:

apQPzp-NYZ0md_D_2_fKr465Il3dDbdR_BlOSOJTYAo

Before continuing, verify the record is deployed.

此时,需要在域名服务商处,添加一行 TEXT 记录,记录为 _acme-challenge,值为上诉出现的(每个人均不一样)apQPzp-NYZ0md_D_2_fKr465Il3dDbdR_BlOSOJTYAo。添加记录成功之后,继续下一步。最后,可以看到出现如下信息:

Congratulations! Your certificate and chain have been saved at:

后面,便是申请到证书的路径,一般为 /etc/letsencrpt/live/example.com

证书申请完成后,接下来,只需要进行一些简单的设置。

4. 简单的设置

4.1 编辑 docker-compose.yaml文件

4.1.2 有域名

Nginx

将上诉的 path/to修改为你的 Letsecnrpt 证书地址,本例为 /etc/letsencrpt/live/example.com,其中,example.com为你的域名。

4.1.2 无域名

删除掉 nginx模块部分,并且,需要修改 app和 cron模块如下,

app-cron

4.2 编辑 app.env文件

其中,主要修改 NEXTCLOUD_ADMIN_USERNEXTCLOUD_ADMIN_PASSWORDNEXTCLOUD_TRUSTED_DOMAINS三个环境变量,分别对应登录账号,登录密码以及 Nextcloud 信任域名。

4.3 编辑 nginx.conf 文件

将文件中的 server_name修改为自己对应的域名地址即可。
到这里,需要修改的地方就已经修改好了,接下来,直接输入命令一键运行。

$ docker-compose up -d

执行上面的命令,如果成功安装,将会出现如下的输出信息,

docker-compose 输出信息

5. 简单的体验

安装完成后,可以通过访问域名进行体验。

总的来说,Nextcloud 有主流网盘该有的功能,并且在此基础上,极大地提升了流畅度以及更好的用户界面。如果有希望自建云盘的同学,可以值得一试。