⚔️大学生扫盲:0基础搭建网站memos——跨平台随笔app

打造你自己的在线记事本: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