如果您已经安装了Docker,可以使用以下命令来列出所有可用的MongoDB镜像
docker search mongo
这将显示所有与MongoDB相关的镜像及其版本信息。
拉取特定版本:
使用docker pull
命令来拉取特定版本的MongoDB镜像。例如,要拉取MongoDB 4.4版本,可以使用以下命令:
docker pull mongo:4.4
使用以下命令启动一个MongoDB 8.0的容器:
docker run -d \
--name mongodb \
-p 27017:27017 \
-e MONGO_INITDB_ROOT_USERNAME=root \
-e MONGO_INITDB_ROOT_PASSWORD=yourpassword \
mongo:8.0
参数说明:
-d:以后台模式运行容器。
--name mongodb:为容器指定名称为mongodb(可以根据需要更改)。
-p 27017:27017:将主机的27017端口映射到容器的27017端口,以便通过主机访问MongoDB。
-e MONGO_INITDB_ROOT_USERNAME=root:设置MongoDB的root用户名为root。
-e MONGO_INITDB_ROOT_PASSWORD=yourpassword:设置MongoDB的root用户密码为yourpassword(请将yourpassword替换为您自己的强密码)。
启动容器后,可以使用以下命令检查容器状态:
docker ps
使用Docker exec进入容器内部连接:
docker exec -it mongodb mongo -u root -p
持久化数据配置
为了确保MongoDB的数据在容器重启后不会丢失,建议将数据目录挂载到主机。例如:
docker run -d \
--name mongodb \
-p 27017:27017 \
-e MONGO_INITDB_ROOT_USERNAME=root \
-e MONGO_INITDB_ROOT_PASSWORD=yourpassword \
-v /path/on/host/mongodb-data:/data/db \
mongo:8.0
使用Docker Compose
可以创建一个docker-compose.yml
文件,如下所示:
version: '3.8'
services:
mongodb:
image: mongo:8.0
container_name: mongodb
restart: always
ports:
- "27017:27017"
environment:
MONGO_INITDB_ROOT_USERNAME: root
MONGO_INITDB_ROOT_PASSWORD: yourpassword
volumes:
- /path/on/host/mongodb-data:/data/db
然后,在文件所在目录运行以下命令启动MongoDB:
docker-compose up -d