Docker 如何安装、启动、配置 MongoDB?

这篇具有很好参考价值的文章主要介绍了Docker 如何安装、启动、配置 MongoDB?。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


前提: 已安装docker和docker-compose

安装mongodb

# 此处我将mongodb安装在/home/mongotest下
cd /home/
mkdir mongotest
cd mongotest/

# 创建docker-compose.yml文件
vi docker-compose.yml
# 进入编辑状态
i
# 粘贴以下内容
version: '3.1'
services:
  mongo:
    image: mongo
    restart: always
    environment:
      MONGO_INITDB_ROOT_USERNAME: root   # 这里设置管理员账户为root
      MONGO_INITDB_ROOT_PASSWORD: example  # 密码example
    ports:
      - 27017:27017
    # mongo数据持久化
    volumes:
      - /home/mongotest:/data/db
# 退出编辑状态
esc 
# 保存
:wq

# 运行
docker-compose up -d

# 防火墙放行端口27017
# 查看firewalld状态,若为dead状态,则需要开启防火墙systemctl start firewalld
systemctl status firewalld
# 让防火墙永久放行27017端口
firewall-cmd --add-port=27017/tcp --permanent
# 重启防火墙
firewall-cmd --reload

初始化配置

cd mongotest/

# 连接数据库
# 注意:mongo5.0以下的版本使用mongo来替换mongosh,即docker exec -it mongotest_mongo_1 mongo
docker exec -it mongotest_mongo_1 mongosh

# 切换到管理员用户
use admin
db.auth('root','example') # 管理员授权登录
 
# 创建一个数据库testdb
use testdb

# 创建一个用户,用户名为test,密码123456。
db.createUser({user:'test',pwd:'123456',roles:[{role:'dbOwner',db:'testdb'}]})

# 测试下上面添加的用户是否可以登录数据库testdb
use testdb
db.auth('test','123456')

# 测试插入数据
db.users.insertOne({'name':'sue',age:30,email:'test@foxmail.com'})
show collections
db.users.find({})
db.users.insertOne({name:'soft',age:20})
db.users.find({})

# 测试更新
db.users.updateOne({name:'sue'},{$set:{email:'test1@foxmail.com'}})
db.users.find({})

# 测试删除
db.users.deleteOne({'name':'sue'})
db.users.find({})

GUI工具连接数据库(Robo 3T)

:连接之前,确保云服务器 端口27017已放行,详见《云服务设置端口放行》
docker mongo,docker,mongodb,容器

docker mongo,docker,mongodb,容器

docker mongo,docker,mongodb,容器

备份与恢复

备份方式:docker cp + mongodump
恢复方式:docker cp + mongorestore

# mongotest_mongo_1 容器
# mongodump 指令
# -h 连接的mongodb的host
# -u 用户
# -p 密码
# -d 指定备份哪个数据库,不接的话代表备份所有数据库
# -o 指定备份到哪个目录

# 1.备份
docker exec -it mongotest_mongo_1 mongodump -h localhost -u root -p example -o /tmp/test
cd /tmp/
docker cp e401dcb60416:/tmp/test /tmp/test

# 2.恢复
docker exec -it mongotest_mongo_1 mongorestore -h localhost -u root -p example --dir /tmp/test

Nodejs中的Mongoose库

  • 比较
分类 Oralce/Mysql MongoDB Mongoose
1 数据库实例 MongoDB实例 Mongoose
2 模式(schema) 数据库(database) mongoose
3 表(table) 集合(collection) 模板(Schema) 模型(Model)
4 行(row) 文档(document) 实例(instance)
5 Prinary key Object(_id) Object(_id)
6 表字段Column Field Field
  • 使用
    库:https://mongoosejs.com/
mkdir mongoose-demo
cd mongoose-demo
npm init -y
npm install -s mongoose
// app.js
const mongoose = require('mongoose')
mongoose.connect('mongodb://test:123456@121.199.33.98:27017/testdb',{useNewUrlParser: true})

// 连接数据库的Connection
const User = mongoose.model('users', {name: String, age: Number, email: String})

const imooc = new User({
  name: 'imooc-test',
  age:30,
  email: 'imooc@imooc.com'
})
imooc.save().then(() => {console.log('save OK!')})

node app.js文章来源地址https://www.toymoban.com/news/detail-655320.html

到了这里,关于Docker 如何安装、启动、配置 MongoDB?的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Docker 安装 MongoDB

            MongoDB 是一个基于分布式文件存储的数据库。是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。 这里使用docker来安装MongoD 创建外部挂载的文件并进行授权 然后,使用编辑器打开mongod.conf文件,并添加以下内

    2024年02月04日
    浏览(30)
  • docker-compose mongo 启动mongo容器后如何执行脚本创建用户数据库问题

    系统版本: 环境变量:Linux下必须export声明两个环境变量,注意这个账户同时也是创建的数据库的连接用户密码 目录:/home/user/docker-compose.yml 镜像:mongo:6.0.10 容器名:mongobss 挂载卷:data/db数据目录 start.sh后创建用户和库的脚本 环境变量:定义初始的mongo root角色用户 privil

    2024年02月04日
    浏览(66)
  • Docker 安装 MongoDb4

    注意: WARNING: MongoDB 5.0+ requires a CPU with AVX support, and your current system does not appear to have that! **hub官网(需要梯子):**https://hub.docker.com/_/mongo/tags?page=5 建议获取4;如果cpu不支持; 1. 搜索mongodb docker search mongodb 2. 获取镜像 docker pull mongo:4.4.27 3. 创建文件夹 4. 创建MongoDB容器 参数

    2024年01月20日
    浏览(74)
  • docker安装mongoDB及使用

    1.mongo的体系结构 SQL术语/概念 MongoDB术语/概念 解释/说明 database database 数据库 table collection 数据库表/集合 row document 数据记录行/文档 column field 数据字段/域 index index 索引 table joins 表连接,MongoDB不支持 primary key primary key 主键,MongoDB自动将_id字段设置为主键 2. mongoDB的特点(或使

    2024年02月02日
    浏览(46)
  • Docker安装MongoDB 7.0.2

    --auth :需要密码才能访问容器服务。 -e MONGO_INITDB_ROOT_USERNAME :设置用户名 -e MONGO_INITDB_ROOT_PASSWORD :设置密码 上述命令的意思如下: 使用交互的形式, 在 名字为 mongodb 的容器中实行 bash这个命令 将其中的 bindIp: 127.0.0.1 注释掉# bindIp: 127.0.0.1 或者改成bindIp: 0.0.0.0 即可开启远程连

    2024年02月08日
    浏览(27)
  • 使用 Docker 安装 MongoDB 数据库

    by emanjusaka from https://www.emanjusaka.top/2024/01/docker-create-mongo-db 彼岸花开可奈何 本文欢迎分享与聚合,全文转载请留下原文地址。 -d 后台运行 --restart=always 自动重新启动 --privileged 允许容器以特权模式运行 -v /opt/doc/data:/data/db 数据挂载 -p 27017:27017 端口挂载 --auth 启用了身份验证

    2024年01月18日
    浏览(48)
  • 05 Docker 安装常用软件 (mongoDB)

    目录 1. mongoDB简介 1.1 mongodb的优势 2. mongodb的安装 2.1 创建数据文件夹 2.2 备份+日志 2.3 配置文件夹  2.4 创建两个文件  --- 2.4.1 配置如下:  2.5 拉取mongodb 2.6 运行容器   2.7 进入mongodb容器 --- 2.7.0 高版本(6.0)以上是这样的 , 旧版的没研究  --- 2.7.1 查询版本 --- 2.7.2  进入amdin数据

    2024年02月16日
    浏览(37)
  • 解读MongoDB官方文档获取mongo7.0版本的安装步骤与基本使用

    mongo式一款NOSQL数据库,用于存储非结构化数据,mongo是一种用于存储 json 的数据数据,可以通过mongo提供的命令解析json获取想要的值。 了解关系数据库会很熟悉 database,table,row,column 的概念,分别是数据库,表,行,列所组成的二维表,而在mongo中没有存储的是json,在新的数据

    2024年04月16日
    浏览(41)
  • Mongo DB docker compose 安装配置

    docker-compose.yml /docker-entrypoint-initdb.d/mongo-init.js

    2024年02月09日
    浏览(29)
  • Docker 安装 MongoDB开启认证,创建只读用户权限。

    docker run -itd --name mongo -p 27017:27017 mongo --auth --auth 就是开启mongodb权限认证。如果不加 --auth 则是无权限认证,连接成功后任何用户都可以对数据库进行读写操作。 docker run -itd  --name mongo -p 27017:27017 mongo --auth   docker exec -it mongo mongo admin   db.createUser({ user:\\\'admin\\\',pwd:\\\'123456\\\',roles:[

    2024年02月17日
    浏览(62)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包