记录在windows下使用docker安装mongodb过程

618 阅读3分钟

1.首先安装docker

在 Windows 上安装 Docker 需要遵循以下步骤:

  1. 首先,确保你的操作系统是 Windows 10 或 Windows Server 2016 及以上版本,并且具备 64 位的处理能力。

  2. 前往 Docker 的官方网站(www.docker.com/get-started… Docker Desktop for Windows 安装程序。

  3. 一旦下载完成,双击运行安装程序,然后按照安装向导的指示进行操作。

  4. 在安装过程中,你可能需要选择一些额外的组件,如启用 WSL 2(Windows Subsystem for Linux)和 Hyper-V。这些组件对于 Docker 在 Windows 上的正常运行非常重要,因此请根据安装程序的建议进行选择。

    在 Windows 上启用 Hyper-V 和 WSL 2 的步骤如下:
    1. 首先,打开 "控制面板"(Control Panel)。
    2. 在 "控制面板" 中,选择 "程序"(Programs)。
    3. 在 "程序" 选项中,选择 "打开或关闭 Windows 功能"(Turn Windows features on or off)。
    4. 在弹出的窗口中,找到 "Hyper-V" 和 "Windows Subsystem for Linux" 两个选项,并勾选它们。
    5. 单击 "确定"(OK)保存更改。
    6. 系统将开始安装所需的组件,这可能需要一些时间。
    7. 安装完成后,重新启动你的计算机。
    8. 重新启动后,你可以启动 Docker,并使用 Hyper-V 和 WSL 2 来运行容器。 请注意,启用 Hyper-V 和 WSL 2 需要管理员权限,并且你的操作系统版本必须支持这些功能。如果你的操作系统不支持 Hyper-V 或 WSL 2,可能需要升级到更高版本。

    (后面再次安装时发现WSL 2不是必须的,有的没有Windows Subsystem for Linux这个选项,如果打开docker提示需要更新WSL,可以在docker的设置里面关闭使用wsl,如图: 13318-20250818174912220-1061692098.png 关闭以后再重新启动 )

  5. 安装完成后,打开 Docker Desktop for Windows。它将在系统托盘中显示一个 Docker 图标。

  6. 点击 Docker 图标,选择 "Settings"(设置)选项。在设置菜单中,你可以配置 Docker 的各种选项,如资源(CPU、内存等)限制和网络设置。

  7. 配置完成后,你可以在 Windows 上使用 Docker 了。可以通过 PowerShell 或命令提示符(cmd)来运行 Docker 命令,例如 docker run

请注意,安装 Docker 时可能需要管理员权限。如果安装过程中遇到问题,可以参考 Docker 官方文档或社区支持。

希望这些步骤能够帮助你在 Windows 上成功安装 Docker。

2. 安装完成并启动docker,然后安装mongodb社区版。

1.拉取MongoDB Docker镜像

docker pull mongodb/mongodb-community-server

2.将映像作为容器运行

docker run --name mongo -d mongodb/mongodb-community-server:latest

安装特定版本的MongoDB 要安装特定版本的MongoDB,请在以下位置指定版本:在Docker run命令中Docker拉取并运行指定的版本。 例如,要运行MongoDB 5.0:

docker run --name mongo -d mongodb/mongodb-community-server:5.0-ubi8

有关可用MongoDB Community Server映像的完整列表,请参阅: Docker Hub官方页面

3.检查容器是否正在运行

docker container ls

4.使用mongosh连接到MongoDB部署

打开一个Mongo的交互式容器实例,并用Mongosh连接到部署

docker exec -it mongo mongosh

5.验证您的部署

要确认MongoDB实例正在运行,请运行Hello命令:

db.runCommand(
   {
      hello: 1
   }
)

此命令的结果返回一个描述mongod部署的文档:

{
   isWritablePrimary: true,
   topologyVersion: {
      processId: ObjectId("63c00e27195285e827d48908"),
      counter: Long("0")
},
   maxBsonObjectSize: 16777216,
   maxMessageSizeBytes: 48000000,
   maxWriteBatchSize: 100000,
   localTime: ISODate("2023-01-12T16:51:10.132Z"),
   logicalSessionTimeoutMinutes: 30,
   connectionId: 18,
   minWireVersion: 0,
   maxWireVersion: 20,
   readOnly: false,
   ok: 1
}