⚔️大學生掃盲: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