Docker部署安装MongoDB数据库

本文涉及的产品
云数据库 MongoDB,独享型 2核8GB
推荐场景:
构建全方位客户视图
简介: Docker部署安装MongoDB数据库

MongoDB是一个高性能的非关系型数据库,今天就来分享一下使用Docker部署MongoDB的方式。

1,拉取镜像

通过以下命令:

docker pull mongo

2,创建数据卷

同样地,我们需要为其配置文件数据以及集群元数据目录创建数据卷,因为这些数据较为重要,需要持久化到宿主机:

docker volume create mongo-config
docker volume create mongo-data
docker volume create mongo-cluster

这样就完成了具名数据卷的创建。

3,编写配置文件

按照上述命令完成数据卷配置之后,配置文件数据卷目录位于:/var/lib/docker/volumes/mongo-config/_data,进入这个目录,新建配置文件mongod.conf,配置文件为YAML格式,并自行按需加入配置。

配置文件选项可以参考:官方文档

如果不需要定义配置文件则可以不创建上述的 mongo-config数据卷,同样地下面启动命令也不需要挂载配置目录。

4,创建并启动容器

通过下列命令:

docker run -id --name=mongodb -v mongo-config:/etc/mongo -v mongo-data:/data/db -v mongo-cluster:/data/configdb -p 27017:27017 -e LANG=C.UTF-8 mongo mongod -f /etc/mongo/mongod.conf

此时,容器就成功创建并运行了!上述参数意义如下:

  • -v 用于挂载数据卷,可见配置文件数据卷mongo-config对应的是容器内/etc/mongo目录,因此末尾的容器启动命令中指定配置文件的位置和这里是对应的
  • -p 暴露其默认端口27017
  • -e 指定语言环境变量为C.UTF-8,防止中文乱码

主要是注意最后的启动命令:

mongod -f /etc/mongo/mongod.conf

这里指定的配置文件位置和前面-v挂载配置文件数据卷的时候对应的容器内目录是一致的。

如果说你没有指定配置文件,且未创建mongo-config数据卷,则启动命令如下:

docker run -id --name=mongodb -v mongo-data:/data/db -v mongo-cluster:/data/configdb -p 27017:27017 -e LANG=C.UTF-8 mongo

5,登入MongoDB

除了远程连接之外,还可以直接在服务器终端上进行连接:

docker exec -it mongodb mongosh
相关文章
|
2月前
|
存储 关系型数据库 数据库
附部署代码|云数据库RDS 全托管 Supabase服务:小白轻松搞定开发AI应用
本文通过一个 Agentic RAG 应用的完整构建流程,展示了如何借助 RDS Supabase 快速搭建具备知识处理与智能决策能力的 AI 应用,展示从数据准备到应用部署的全流程,相较于传统开发模式效率大幅提升。
附部署代码|云数据库RDS 全托管 Supabase服务:小白轻松搞定开发AI应用
|
2月前
|
数据可视化 BI API
无缝对接云数据库:自定义报表生成工具在混合云环境下的部署指南
自定义报表生成工具通过拖拽设计、多数据源整合及自动化输出,帮助业务人员零代码创建个性化报表,解决传统工具灵活性不足、技术门槛高的问题。文章对比其与传统报表差异,列举行业应用场景(如财务、零售),并给出选型建议与主流工具(如FineReport、Power BI、板栗看板)的优劣势分析。
110 0
|
2月前
|
NoSQL MongoDB 数据库
数据库数据恢复—MongoDB数据库数据恢复案例
MongoDB数据库数据恢复环境: 一台操作系统为Windows Server的虚拟机上部署MongoDB数据库。 MongoDB数据库故障: 工作人员在MongoDB服务仍然开启的情况下将MongoDB数据库文件拷贝到其他分区,数据复制完成后将MongoDB数据库原先所在的分区进行了格式化操作。 结果发现拷贝过去的数据无法使用。管理员又将数据拷贝回原始分区,MongoDB服务仍然无法使用,报错“Windows无法启动MongoDB服务(位于 本地计算机 上)错误1067:进程意外终止。”
|
2月前
|
缓存 NoSQL Linux
在CentOS 7系统中彻底移除MongoDB数据库的步骤
以上步骤完成后,MongoDB应该会从您的CentOS 7系统中被彻底移除。在执行上述操作前,请确保已经备份好所有重要数据以防丢失。这些步骤操作需要一些基本的Linux系统管理知识,若您对某一步骤不是非常清楚,请先进行必要的学习或咨询专业人士。在执行系统级操作时,推荐在实施前创建系统快照或备份,以便在出现问题时能够恢复到原先的状态。
266 79
|
10天前
|
Ubuntu 安全 关系型数据库
安装与配置MySQL 8 on Ubuntu,包括权限授予、数据库备份及远程连接指南
以上步骤提供了在Ubuntu上从头开始设置、配置、授权、备份及恢复一个基础但完整的MySQL环境所需知识点。
147 7
|
2月前
|
存储 NoSQL MongoDB
MongoDB数据库详解-针对大型分布式项目采用的原因以及基础原理和发展-卓伊凡|贝贝|莉莉
MongoDB数据库详解-针对大型分布式项目采用的原因以及基础原理和发展-卓伊凡|贝贝|莉莉
163 8
MongoDB数据库详解-针对大型分布式项目采用的原因以及基础原理和发展-卓伊凡|贝贝|莉莉
|
1月前
|
运维 NoSQL 容灾
告别运维噩梦:手把手教你将自建 MongoDB 平滑迁移至云数据库
程序员为何逃离自建MongoDB?扩容困难、运维复杂、高可用性差成痛点。阿里云MongoDB提供分钟级扩容、自动诊断与高可用保障,助力企业高效运维、降本增效,实现数据库“无感运维”。
|
4月前
|
关系型数据库 MySQL 数据库
【赵渝强老师】数据库不适合Docker容器化部署的原因
本文介绍了在Docker中部署MySQL数据库并实现数据持久化的方法,同时分析了数据库不适合容器化的原因。通过具体步骤演示如何拉取镜像、创建持久化目录及启动容器,确保数据安全存储。然而,由于数据安全性、硬件资源争用、网络带宽限制及额外隔离层等问题,数据库服务并不完全适合Docker容器化部署。文中还提到数据库一旦部署通常无需频繁升级,与Docker易于重构和重新部署的特点不符。
288 18
【赵渝强老师】数据库不适合Docker容器化部署的原因
|
5月前
|
Ubuntu 关系型数据库 Linux
Linux数据库安装
本文介绍了在CentOS 8.0和Ubuntu 22.04系统上安装、配置和启动MariaDB数据库服务器的详细步骤。包括通过`yum`和`apt`包管理器安装MariaDB服务,启动并检查服务运行状态,设置root用户密码以及连接数据库的基本操作。此外,还展示了如何在Ubuntu上更新软件包列表、安装依赖项,并验证MariaDB的版本和运行状态。通过这些步骤,用户可以成功部署并初始化MariaDB环境,为后续数据库管理与应用开发奠定基础。
255 61