打造你自己的在线记事本:Memos 从零搭建指南(小白友好)
记录灵感不再靠微信“文件传输助手”!让我们用 Docker 搭个开源、轻量、的 Memos 卡片式笔记簿!适合记灵感、写读后感、记流水账……也可分享给你的好朋友使用
相关文档:https://jinruncheng.blog/archives/set_memos
相关视频:https://www.bilibili.com/video/BV1iq7dzjEnn/
Memos 是什么?
这是一个开源的碎片化知识卡片管理系统,支持私有部署,可以本地存储数据,UI简洁!🐳 一条 Docker 命令搞定部署!
能干嘛?
①耍酷:让你的朋友下载memos一起用
②替代:微信传输助手,传输学习资料
③ 记随笔 / 灵感火花/私密文件
官方 Demo:https://demo.usememos.com/
准备工作(参考这篇博客https://jinruncheng.blog/archives/head)
步骤 ①拥有1台服务器
②拥有一个域名
③下载Moabxterm
④开始连接
⑤先赞后看,养成习惯
第一课:更新你的 VPS 系统(正式开始之前,先来一次保养)
你的 VPS 就像一辆刚开来的二手车——跑是能跑,但谁知道有没有什么陈年旧货或补丁没打?
所以第一步我们要给系统 检查一下更新,顺手再装几个常用的工具。只要做一次,不会很复杂。
1.1 执行命令(任选其一)
方法一:推荐组合(更新系统 + 安装常用工具)
apt update
apt install wget curl sudo vim git -y
方法二:直接升级整个系统(暴力全更)
sudo apt update && sudo apt upgrade -y
1.2 拆词解释(小白速通、老鸟可跳)
1.2.1 第一句拆解
1.2.1.1 什么是 apt?
apt 是 Linux 系统用来安装、管理软件的命令行工具
全名是 Advanced Packaging Tool(高级打包工具)
你可以把它当成:
Linux 里的“命令行 App Store”
我们用它来:
apt update 更新一下“商店里的目录”
apt install 安装软件
apt upgrade 把你已经装的软件统统更新一遍
1.2.1.2 那 apt update 干了啥?
apt update
就像打开 App Store 然后手动下拉刷新一样。它:
不会装东西
不会更新系统
只是去“拉一份最新版目录”
所以:
apt update 的意思就是:“我看看现在仓库里都有哪些新版本软件,先做个准备。”
1.2.2 第二句拆解
方法二的 apt install wget curl sudo vim git -y 是在干嘛?
wget curl sudo vim git是5个常用工具,后续教程里会经常用到
install字面意思:安装
1.2.2.1 wget:下载小能手
全称:Web Get
用来从网页上“抓取文件”
你可以理解成命令行里的浏览器 → 但它只管下,不预览
例子:
wget https://xxx.com/abc.sh
就等于用浏览器点了一下“下载”按钮。
1.2.2.2 curl:网络万能胶
全称:Client URL
比 wget 更强大,可下载、上传、发接口请求……
是很多脚本里的必备工具(你看到一堆 curl | bash,就是它)
curl 更适合开发者调接口,wget 更适合普通下载。
1.2.2.3 sudo:授权大法
全称:Superuser Do
让你“以管理员身份”执行操作
比如:
sudo apt install docker
意思是:“我知道这事需要管理员权限,来,让我以超级用户身份执行。”
没有 sudo,很多命令都权限不够。
1.2.2.4 vim:终端里的记事本
是一个文本编辑器
可以用来写配置文件、写脚本、改文档
虽然操作有点反人类,但学一点点就够了:
→ 输入 vim xxx.txt 就能编辑文件。
1.2.2.5 git:版本管理工具
用来管理代码版本,也能 clone 代码仓库
我们等下部署 Memos,可能就会用它下载 GitHub 上的项目文件
git 之于程序员,就像 Excel 之于会计。
1.2.2.6 -y 是啥?
意思是 “yes to all”
安装过程中遇到“你确定要继续吗?(Y/n)” → 自动回答:是!继续!别问了!
1.2.3 第三句拆解
sudo apt update && sudo apt upgrade -y
你可以理解成:
sudo apt update:去看看仓库有什么新版本
&&:并且的意思,其他各种语言基本都是这个符号。效果:如果上一步没出错,继续执行下一步
apt upgrade -y:就把我系统里所有老旧的软件都更新一下
1.2.4 俩种方式对比
你的目标 推荐命令
装几个常用工具就好 apt update && apt install wget curl sudo vim git -y
顺手把系统也一起升级 sudo apt update && sudo apt upgrade -y
你是 root,不用 sudo 可以去掉 sudo,写法更简单
🎯 建议第一次玩 VPS 的同学选 方法一:能装工具,也不太容易出错。
第二节课(1/3):安装 Docker & Docker Compose
这一节我们来解决最关键的一件事:装上 Docker!
2.1、执行命令(非大陆 VPS)
如果你用的是非大陆 VPS(比如 Racknerd纽约,腾讯云香港 等),下面这几条命令直接复制运行就行:
# Docker 一键安装
curl -fsSL https://get.docker.com | bash
# Docker Compose 安装
sudo curl -L "https://github.com/docker/compose/releases/download/v2.36.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
# 设置 Docker 开机自启
sudo systemctl enable docker
2.2、拆词解释(小白速通、老鸟可跳)
我们还是来“逐词拆解”,看看这些命令到底做了啥!
2.2.0 Docker 是什么?
一句话解释:
Docker 就是一种“打包好了一切的万能软件盒子”。
你可以把 Docker 想象成是一个“快餐打包盒”,把软件程序、它需要的环境(比如系统依赖、库、配置等)全都打包在一起,放进一个小盒子里。这种小盒子我们叫做 容器(Container)。
这个容器你拿到哪台机器上运行都行 —— 不怕“依赖装不上”,也不怕“系统版本不对”。
2.2.1.1 举个例子:
比如你想在 Ubuntu 服务器上运行一个网站,它需要:
Python 3.11
某个版本的 Flask 框架
某些 Linux 系统依赖包
一个配置好的 nginx 网页服务器
用传统方式,你要手动安装、调试这些东西,很容易出错、版本不兼容,搞起来非常麻烦。
但如果别人把整个网站 + 所有环境都“打包”成了一个 Docker 容器,你只要一条命令就能跑起来:
docker run example/website
就像点了一份外卖,热好了就能吃,完全不用自己炒菜!
2.2.1.2 Docker 在 Linux(比如 Ubuntu)里到底干了什么?
在 Ubuntu 中,Docker 起到了两个主要作用:
“虚拟厨房”功能:
它让每个软件都在“自己的隔离空间”运行,互不干扰,像是一个个微型系统。
—— 这样你可以在一台机器上同时运行 10 个服务,它们之间互不打架。
“一键部署神器”:
Docker 容器是标准化的,一份镜像在任何一台装了 Docker 的机器上都能跑。
—— 极大地方便了部署和备份。
2.2.1.3 为什么大家都在用 Docker?
好处 解释
✅ 轻量 跑得快,不像传统虚拟机那么重。
✅ 隔离性强 一个服务崩了,不会影响别的。
✅ 快速部署 一条命令搞定整个网站或项目。
✅ 开发友好 团队都用一样的容器,不用再“你这能跑,我这报错”。
总之,Docker 就是帮你“打包”和“跑程序”的神器,适合把一个服务一键部署在服务器上,尤其是 Linux 服务器如 Ubuntu。
2.2.1 第一句拆解
curl -fsSL https://get.docker.com | bash
2.2.1.1 curl 是什么?
curl 是一个用来从互联网下载内容的命令行工具。
你可以把它当成“命令行版的浏览器”:
输入网址,它就能下载页面
支持 HTTPS、FTP 等协议
常用于下载脚本、API 请求等
在这条命令里:
curl -fsSL https://get.docker.com | bash
它就是从 https://get.docker.com 下载一个 自动安装 Docker 的脚本,并交给 bash 执行。
2.2.1.2 -fsSL 是啥意思?
这是四个常见的 curl 参数缩写:
参数 意义
-f 出错时不输出错误页面(fail silently)
-s 安静模式,不显示进度条(silent)
-S 和 -s配合,在出错时才显示错误信息
-L 遇到重定向(302/301)时自动跟随(location)
所以,这段命令的意思就是:
“从 get.docker.com 安静地下载脚本,如果遇到重定向也能顺利跳转,然后交给 bash 执行。”
2.2.1.3 bash 又是干嘛的?
这是 Linux 默认的命令解释器,常见的 shell。
你可以简单理解为“命令行的大脑”,它负责:
接收你的命令
按顺序执行脚本里的命令
报错 / 提示 / 输出结果
所以整个命令翻译成中文就是:
“请从 Docker 官网下载官方安装脚本,然后交给系统自动执行,给我装好 Docker。”
2.2.2 第二句拆解:
sudo curl -L "https://github.com/docker/compose/releases/download/
v2.36.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
这一大串其实就是:
下载 对应你系统版本 的 docker-compose 二进制文件
放到 /usr/local/bin/ 路径下(这是默认可以执行的路径)
✅ $(uname -s) 是获取你当前系统的类型(比如 Linux)
✅ $(uname -m) 是获取你当前的 CPU 架构(比如 x86_64)
它们组合起来后,自动匹配适合你服务器的版本,不用手动挑!
2.2.2.1 sudo 是啥意思?
sudo 是 “Super User DO” 的缩写。
📢 就是“以管理员身份执行命令”的意思。
有点像 Windows 的“以管理员身份运行”。
为什么要用 sudo?
因为 /usr/local/bin/ 是系统级路径,普通用户没权限往里写文件,所以得提权。
2.2.2.2 chmod +x 又是干嘛的?
chmod 是 “change mode”,改权限的意思。
+x 是加上可执行权限。
也就是说:我们把下载下来的 docker-compose 文件设为“可以运行的程序”。
没有这一句的话,文件是死的,不能运行!
我建议你先把这些命令复制粘贴跑一遍,然后回来再细品上面的解释 😎
第三节课我们将正式开始创建memos文件夹,开始拉取memos部署到服务器上,然后别人就可以通过 www.你的名字.com 访问你的memos啦!
我的博客已更新,小黑盒1天2更
更多游戏资讯请关注:电玩帮游戏资讯专区
电玩帮图文攻略 www.vgover.com