【Docker項目實戰】使用Docker部署輕量級Markdown文本編輯器
- 一、LetsMarkdown介紹
- 1.1 LetsMarkdown簡介
- 1.2 主要特點
- 二、本次實踐介紹
- 2.1 本地環境規劃
- 2.2 本次實踐介紹
- 三、本地環境檢查
- 3.1 檢查Docker服務狀態
- 3.2 檢查Docker版本
- 3.3檢查docker compose 版本
- 四、拉取容器鏡像
- 五、部署LetsMarkdown應用
- 5.1 編輯docker-compose.yaml文件
- 5.2 創建LetsMarkdown容器
- 5.3 查看容器狀態
- 5.4 關閉防火墻
- 六、訪問項目
- 6.1 訪問初始頁
- 6.2 編輯文章
- 6.3 分享鏈接
- 七、總結
一、LetsMarkdown介紹
1.1 LetsMarkdown簡介
- LetsMarkdown.com—— 快速、簡約的 Web 編輯器:
LetsMarkdown 是一款專注于提供高效、簡約的Markdown編輯體驗的Web編輯器。它支持實時協作編輯和預覽,讓Markdown編輯變得更加協作化和易于訪問。
1.2 主要特點
-
實時協作
- 實現多人在線編輯Markdown文檔,促進團隊成員之間的即時溝通與協作。
-
類似 VSCode 的編輯體驗
- 支持命令面板,提供語法高亮、自動完成等功能,并允許用戶自定義編輯器主題。
-
無需登錄的極簡設置
- 用戶無需登錄即可使用,避免了惡意跟蹤器和隱私侵犯,保障用戶隱私安全。
-
高效的技術架構
- 采用Rust語言和WebAssembly技術構建后端,確保編輯器的高性能和快速響應。
-
暗黑模式
- 提供暗黑主題選項,減少眼睛疲勞,提升在夜間或昏暗環境下的使用體驗。
-
快捷鍵支持
- 啟用快捷鍵后,支持快速插入表情符號,增強文檔的表現力和互動性。
二、本次實踐介紹
2.1 本地環境規劃
本次實踐為個人測試環境,操作系統版本為centos7.6。
hostname | IP地址 | 操作系統版本 | Docker版本 |
---|---|---|---|
ubuntu-001 | 192.168.3.251 | Ubuntu 22.04.1 LTS | 24.0.7 |
2.2 本次實踐介紹
1.本次實踐部署環境為個人測試環境,生產環境請謹慎;
2.在Docker環境下輕量級Markdown文本編輯器。
三、本地環境檢查
3.1 檢查Docker服務狀態
檢查Docker服務是否正常運行,確保Docker正常運行。
root@ubuntu-001:~# systemctl status docker
● docker.service - Docker Application Container EngineLoaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)Active: active (running) since Sun 2024-09-15 03:21:57 UTC; 4 days ago
TriggeredBy: ● docker.socketDocs: https://docs.docker.comMain PID: 24397 (dockerd)Tasks: 45Memory: 980.4MCPU: 1min 14.697sCGroup: /system.slice/docker.service├─24397 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
3.2 檢查Docker版本
檢查Docker版本,當前使用Docker版本為
24.0.7
。
root@ubuntu-001:~# docker -v
Docker version 24.0.7, build 24.0.7-0ubuntu2~22.04.1
3.3檢查docker compose 版本
檢查Docker compose版本,確保2.0以上版本。
root@ubuntu-001:~# docker compose version
Docker Compose version v2.19.1
四、拉取容器鏡像
拉取該項目的容器鏡像:
cveinnt/letsmarkdown:latest
root@ubuntu-001:~# docker pull cveinnt/letsmarkdown:latest
latest: Pulling from cveinnt/letsmarkdown
cad51567b51c: Pull complete
46bc9dfa4ed4: Pull complete
Digest: sha256:fec103899bcbfa5a5fe637013ed6e01b4958e341d720324b3186e95782a0f570
Status: Downloaded newer image for cveinnt/letsmarkdown:latest
docker.io/cveinnt/letsmarkdown:latest
五、部署LetsMarkdown應用
5.1 編輯docker-compose.yaml文件
可以使用docker-cli快速部署,也可以使用docker compose方式部署,本次實踐使用docker compose方式部署。
- docker-cli部署示例:
docker run --rm -dp 3030:3030 cveinnt/letsmarkdown
編輯docker-compose.yaml部署文件,內容如下:
vim docker-compose.yaml
version: '3.9'
services:letsmarkdown:image: cveinnt/letsmarkdownports:- '3030:3030'restart: alwayscontainer_name: markdownnote
5.2 創建LetsMarkdown容器
執行
docker compose up -d
命令,創建容器。注意需要保證宿主機端中的6223
沒有被占用,防止端口沖突。
root@ubuntu-001:/data/letsmarkdown# docker compose up -d
[+] Running 2/2? Network letsmarkdown_default Created 0.2s? Container markdownnote Started 0.6s
5.3 查看容器狀態
檢查LetsMarkdown容器狀態,確保LetsMarkdown容器正常啟動。
root@ubuntu-001:/data/letsmarkdown# docker compose ps
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS
markdownnote cveinnt/letsmarkdown "./letsmarkdown-serv…" letsmarkdown 42 seconds ago Up 40 seconds 0.0.0.0:3030->3030/tcp, :::3030->3030/tcp
5.4 關閉防火墻
在ubuntu系統下,關閉防火墻。
root@ubuntu-001:~/tower_game# ufw disable
防火墻在系統啟動時自動禁用
root@ubuntu-001:~/tower_game# ufw status
狀態:不活動
六、訪問項目
6.1 訪問初始頁
訪問地址:http://192.168.3.251:3030,將IP替換為自己服務器IP地址,進入進項目的初始頁。如果無法訪問,則檢查服務器防火墻是否設置,云服務器的安全組端口是否放行等。
6.2 編輯文章
點擊初始頁的“ENTER”選項,進入文本編輯器。
左側編輯文章內容,使用markdown語法,右側可以實時預覽。
6.3 分享鏈接
復制分享鏈接,瀏覽文章效果。
七、總結
LetsMarkdown 作為一款 Web 編輯器,專注于提供高效且簡約的 Markdown 編輯體驗。其支持的實時協作編輯功能,讓多人共同創作變得高效流暢,團隊成員能同時操作并即時看到更改。實時預覽功能方便用戶及時查看編輯效果,有助于發現錯誤和調整格式。界面的簡約設計避免干擾,使用戶專注于內容創作。而且作為 Web 編輯器易于訪問,無需安裝,在各種設備上憑借網絡即可使用。