軟件名稱:MongoDB
操作系統支持:Linux、Windows、macOS(Docker版全平臺通用!)
軟件介紹:
MongoDB是一個基于分布式架構的NoSQL數據庫,擅長處理復雜數據類型(如嵌套對象、數組),查詢語言強大到能實現類似關系型數據庫的單表操作。用它就像在玩“動態表格”,可以靈活存儲JSON格式的數據,且支持索引加速檢索——比Excel聰明100倍!
MongoDB誰在用?
- 開發者:需要快速搭建靈活數據模型的Web應用或API。
- 數據分析團隊:處理半結構化/非結構化數據(如日志、實時監控)。
- 學生黨:想“玩轉”NoSQL但被傳統安裝流程勸退的人。
為什么用?
MongoDB × Docker = “數據管理界的隨身瑞士軍刀”**
核心功能亮點:
- 靈活的數據模型:告別僵化的表結構,直接存JSON對象(如用戶信息+訂單詳情嵌套)。
- 強大的查詢語言:支持類似SQL的聚合操作、條件篩選、分組統計。
- 索引自由度拉滿:不只是主鍵索引,還能給數組字段、地理位置甚至表達式建索引!
MongoDB的爽點:
- 用嵌套文檔存儲商品信息,配合復合索引(如
{"color": 1, "size": 1}
),秒級返回所有符合“紅色L碼”的庫存。 - 用時間戳索引快速篩選最近5分鐘的數據,并通過聚合管道統計平均溫度、異常波動——比Excel函數快100倍!
為什么需要cpolar?
cpolar內網穿透——讓數據庫“上天入地”自由訪問
- 開發測試時,本地MongoDB默認只監聽
localhost
,外網無法直接連接。 - 團隊協作時,想遠程調試數據卻苦于公司防火墻限制?
cpolar將內網穿透簡單到只要三步!
1.下載安裝 → 2. 輸入要穿透的端口號 → 3. 立刻獲得專屬訪問鏈接。
MongoDB + Docker + Cpolar = 開發者的“三件套神器”
- 為什么這套組合能打?
- Docker:安裝像搭積木,環境零沖突。
- MongoDB:數據存儲靈活,查詢能力逆天。
- Cpolar:打破局域網枷鎖,全球隨時訪問!
- 一句話總結:“用Docker玩轉部署,靠MongoDB征服數據,拿cpolar解鎖自由——這才是現代開發的快樂三角!”
現代開發得快樂三角介紹完了,當然還有告訴各位如何安裝嘍。要不然不久成了光說不練得假把式!
教程新鮮出爐,看下面👇
1. 安裝Docker
本教程操作環境為Linux Ubuntu系統,在開始之前,我們需要先安裝Docker。
在終端中執行下方命令:
添加Docker源
# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg# Add the repository to Apt sources:
echo \"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
安裝Dokcer包
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
通過運行映像來驗證 Docker 引擎安裝是否成功
sudo docker run hello-world
2. 使用Docker拉取MongoDB鏡像
sudo docker pull mongo
然后執行查看鏡像命令:
sudo docker images
可以看到成功拉取了MongoDB鏡像。
3. 創建并啟動MongoDB容器
成功拉取MongoDB鏡像后,我們可以使用該鏡像創建并運行一個MongoDB容器。
首先在宿主機上創建存儲目錄/docker_mount/mongodb/data,用于持久化MongoDB數據。
您可以使用以下命令進行創建:
sudo mkdir -p /docker_mount/mongodb/data
然后在終端執行以下命令運行容器:
sudo docker run -d -p 27017:27017 --name mongodb -v /docker_mount/mongodb/data:/data/db -e MONGO_INITDB_ROOT_USERNAME=root -e MONGO_INITDB_ROOT_PASSWORD=password mongo
參數說明:
- –name excalidraw:本例容器名稱為mongodb,大家可以自己起名。
- **-e MONGO_INITDB_ROOT_USERNAME=root:**初始化一個root角色的用戶root
- **-e MONGO_INITDB_ROOT_PASSWORD=password:**密碼是password,大家可以自己設置。
- -p 27017:27017: 端口進行映射,將本地27017端口映射到容器內部的27017端口。
- **-d ** :設置容器在在后臺一直運行。
然后執行下方命令查看容器是否正在運行:
sudo docker ps
可以看到剛才創建的MongoDB容器正在運行中。
4. 本地連接測試
OK,經過以上過程,docker部署 mongodb 就完成了,現在我們可以通過Navicat進行連接測試。
我使用的 Navicat 的版本是 16,如下圖新建 mongodb 的連接:
主機填寫宿主機ip,大家可以在終端中輸入 ip addr
命令進行查看。
端口填寫:27017
驗證填寫:admin
用戶名和密碼填寫剛才啟動容器時設置的賬號密碼:root和password
然后點擊測試連接,可以看到連接成功!
5. 公網遠程訪問本地MongoDB容器
不過我們目前只能在本地連接剛剛使用docker部署的MongoDB服務,如果身在異地,想要遠程訪問在本地部署的MongoDB容器,但又沒有公網ip怎么辦呢?
我們可以使用cpolar內網穿透工具來實現無公網ip環境下的遠程訪問需求。
5.1 內網穿透工具安裝
下面是安裝cpolar步驟:
cpolar官網地址: https://www.cpolar.com
- 使用一鍵腳本安裝命令
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
- 向系統添加服務
sudo systemctl enable cpolar
- 啟動cpolar服務
sudo systemctl start cpolar
cpolar安裝成功后,在外部瀏覽器上訪問Linux 的9200端口即:【http://服務器的局域網ip:9200】,使用cpolar賬號登錄,登錄后即可看到cpolar web 配置界面,結下來在web 管理界面配置即可。
5.2 創建遠程連接公網地址
登錄cpolar web UI管理界面后,點擊左側儀表盤的隧道管理——創建隧道:
- 隧道名稱:可自定義,注意不要與已有的隧道名稱重復,本例使用了:mongo1
- 協議:tcp
- 本地地址:27017
- 域名類型:隨機域名
- 地區:選擇China VIP
點擊創建
然后打開在線隧道列表,查看并且復制tcp協議的公網地址,注意tcp://無需復制
打開navicat或者其他連接工具,主機選項輸入上面我們cpolar中創建的公網地址,端口號對應地址冒號后面生成的公網端口號。
然后點擊測試連接,可以看到連接成功!
小結
為了方便演示,我們在上邊的操作過程中使用了cpolar生成的TCP公網地址隧道,其公網地址是隨機生成的。
這種隨機地址的優勢在于建立速度快,可以立即使用。然而,它的缺點是網址是隨機生成,這個地址在24小時內會發生隨機變化,更適合于臨時使用。
如果有長期遠程訪問本地MongoDB服務的需求,但又不想每天重新配置公網地址,還想地址好看又好記,那我推薦大家選擇使用固定的TCP地址來遠程訪問。
5.3 使用固定TCP地址遠程訪問
登錄cpolar官網后臺,點擊左側的預留,找到保留的tcp地址,我們來為遠程連接MongoDB數據庫保留一個固定tcp地址。
- 地區:選擇China vip
- 描述:即備注,可自定義
點擊保留
地址保留成功后,系統會生成相應的固定公網地址,將其復制下來
本例中地址為:6.tcp.vip.cpolar.cn:13644
然后在瀏覽器上訪問Linux局域網ip地址+:9200端口
,登錄cpolar web ui管理界面。
點擊左側儀表盤的隧道管理——隧道列表,找到我們上面創建的遠程數據庫隧道,點擊右側的編輯
修改隧道信息,將保留成功的固定tcp地址配置到隧道中
- 端口類型:修改為固定tcp端口
- 預留的tcp地址:填寫官網保留成功的地址,
點擊更新
隧道更新成功后,點擊左側儀表盤的狀態——在線隧道列表,可以看到公網地址已經更新成為了固定tcp地址。
打開連接工具,輸入官網保留的固定tcp地址,端口為地址后面對應的公網端口號,點擊測試連接。
出現連接成功表示成功,現在這個公網地址不會再隨機變化,只要保持隧道正常在線,我們在外就可以通過這個公網地址遠程連接到局域網內的MongoDB數據庫。
以上就是如何在Ubuntu系統使用Docker部署MongoDB容器,并結合cpolar內網穿透工具實現公網遠程訪問內網本地服務的全部流程,感謝您的觀看。