第十四章 安裝 MongoDB

Docker 安裝 MongoDB 教學

1. 前言介紹

MongoDB 是一個流行的 NoSQL 資料庫,廣泛用於大數據、IoT、即時分析等現代應用場景。利用 Docker,可以快速建立 MongoDB 容器環境,方便開發、測試與部署。


2. 環境需求

  • 已安裝 Docker (適用 Windows、macOS、Linux)

  • 基本 Command Line 操作能力


3. 拉取 MongoDB Docker 映像檔

# 適用於 Windows PowerShell、Mac/Linux Terminal
docker pull mongo

4. 建立 MongoDB 容器

(1)一般啟動範例

# 適用於 Windows PowerShell、Mac/Linux Terminal
docker run -d \
  --name mongodb \
  -p 27017:27017 \
  -e MONGO_INITDB_ROOT_USERNAME=mongoadmin \
  -e MONGO_INITDB_ROOT_PASSWORD=secret123 \
  mongo

5. 資料持久化 (可選)

(1)Mac / Linux 指令

docker run -d \
  --name mongodb \
  -p 27017:27017 \
  -e MONGO_INITDB_ROOT_USERNAME=mongoadmin \
  -e MONGO_INITDB_ROOT_PASSWORD=secret123 \
  -v ~/mongo-data:/data/db \
  mongo
  • ~/mongo-data 是你家目錄下的 mongo-data 資料夾

(2)Windows 指令

docker run -d `
  --name mongodb `
  -p 27017:27017 `
  -e MONGO_INITDB_ROOT_USERNAME=mongoadmin `
  -e MONGO_INITDB_ROOT_PASSWORD=secret123 `
  -v E:\Database\mongo-data:/data/db `
  mongo
  • 請將 你的帳號 換成自己的 Windows 使用者名稱

  • 路徑格式為 C:\Users\...

  • 反引號 (`) PowerShell 用於換行,也可寫成單行


6. 連線測試

(1) 使用 mongo shell

docker exec -it mongodb mongosh -u mongoadmin -p secret123

(2) 使用 MongoDB GUI (如 Compass)

連線字串:

mongodb://mongoadmin:secret123@localhost:27017/

7. 常用指令

  • 查看容器狀態

    docker ps -a
  • 停止容器

    docker stop mongodb
  • 啟動容器

    docker start mongodb
  • 刪除容器

    docker rm -f mongodb

8. 小結與補充

  • 可用 Docker Compose 自動化管理多個服務

  • 更多設定請參考 MongoDB 官方 Docker 文件


MongoDB Compass 圖形化操作教學


1. 安裝 MongoDB Compass

  1. 選擇你的作業系統下載安裝(Windows、macOS、Linux)

  2. 安裝完成後啟動 Compass


2. 連線到本地 MongoDB

  1. 開啟 Compass,會看到連線畫面

  2. 輸入連線字串(如果是 Docker 預設帳密):

    mongodb://mongoadmin:secret123@localhost:27017/
  3. 點擊「Connect」按鈕


3. 建立新的資料庫與集合

  1. 點左側「Create Database」按鈕

  2. Database Name 輸入:testdb

  3. Collection Name 輸入:users

  4. 按下「Create Database」完成建立


4. 新增文件(新增一筆資料)

  1. 點左側選單展開 testdb → 選擇 users

  2. 右側會出現集合內容,點上方「Insert Document」

  3. 直接填寫資料(可修改預設 JSON,例如):

    {
      "name": "Alice",
      "age": 30,
      "email": "alice@example.com"
    }
  4. 點擊「Insert」即可新增


5. 查詢資料

  1. users 集合畫面,可以直接看到所有文件

  2. 如要條件查詢(搜尋),在上方「Filter」輸入:

    { "age": { "$gt": 25 } }

    按 Enter,即可篩選出年齡大於 25 歲的資料


6. 編輯資料

  1. 點想要編輯的那筆資料右上角的「Edit」按鈕(鉛筆圖示)

  2. 修改欄位內容,例如把 age 改成 31

  3. 按「Update」即可儲存


7. 刪除資料

  1. 點想要刪除的資料右上角「Delete」按鈕(垃圾桶圖示)

  2. 會跳出確認視窗,按「Delete」即可


8. 新增欄位(欄位動態擴充)

  1. 在「Edit」模式下,點「Add Field」

  2. 新增欄位名稱與數值,例如 "phone": "0912-345678"

  3. 儲存後,所有文件欄位可自由變動


9. 匯入/匯出資料

  • 上方功能列有「Import」和「Export」按鈕

  • 支援 JSON、CSV 格式資料進出


10. 小結

  • MongoDB Compass 提供直觀操作介面,完全不用寫指令

  • 資料欄位可動態增減,結構彈性

  • 適合新手入門、原型開發、管理 MongoDB

Last updated