1.首先安装docker
在 Windows 上安装 Docker 需要遵循以下步骤:
-
首先,确保你的操作系统是 Windows 10 或 Windows Server 2016 及以上版本,并且具备 64 位的处理能力。
-
前往 Docker 的官方网站(www.docker.com/get-started… Docker Desktop for Windows 安装程序。
-
一旦下载完成,双击运行安装程序,然后按照安装向导的指示进行操作。
-
在安装过程中,你可能需要选择一些额外的组件,如启用 WSL 2(Windows Subsystem for Linux)和 Hyper-V。这些组件对于 Docker 在 Windows 上的正常运行非常重要,因此请根据安装程序的建议进行选择。
在 Windows 上启用 Hyper-V 和 WSL 2 的步骤如下:
- 首先,打开 "控制面板"(Control Panel)。
- 在 "控制面板" 中,选择 "程序"(Programs)。
- 在 "程序" 选项中,选择 "打开或关闭 Windows 功能"(Turn Windows features on or off)。
- 在弹出的窗口中,找到 "Hyper-V" 和 "Windows Subsystem for Linux" 两个选项,并勾选它们。
- 单击 "确定"(OK)保存更改。
- 系统将开始安装所需的组件,这可能需要一些时间。
- 安装完成后,重新启动你的计算机。
- 重新启动后,你可以启动 Docker,并使用 Hyper-V 和 WSL 2 来运行容器。 请注意,启用 Hyper-V 和 WSL 2 需要管理员权限,并且你的操作系统版本必须支持这些功能。如果你的操作系统不支持 Hyper-V 或 WSL 2,可能需要升级到更高版本。
(后面再次安装时发现WSL 2不是必须的,有的没有Windows Subsystem for Linux这个选项,如果打开docker提示需要更新WSL,可以在docker的设置里面关闭使用wsl,如图:
关闭以后再重新启动 )
-
安装完成后,打开 Docker Desktop for Windows。它将在系统托盘中显示一个 Docker 图标。
-
点击 Docker 图标,选择 "Settings"(设置)选项。在设置菜单中,你可以配置 Docker 的各种选项,如资源(CPU、内存等)限制和网络设置。
-
配置完成后,你可以在 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
}