Docker 【安装MongoDB】

文章目录


前言

MongoDB是一个非关系型数据库,它主要的应用场景有这些

  • 显示

相比mysql,MongoDB没有事务,索引之类的东西。最小单位是文档。

可能有人说,为什么这个场景我要用mongoDB,mysql同样也能实现。确实,没有说某个场景必须要使用MongoDB而mysql不能实现的,但是对于特定的场景,非重要而量大的数据的处理,MongoDB相对于mysql来说,它有更小的开销和更方便的操作。

一、安装

本文默认你已经安装了docker,如果安装docker不太了解,请查看我这篇文章

  • 建立本地数据储存目录

    为了防止在容器重启后的数据丢失,需要把mysql、mongoD等数据存储的目录指定到本地目录。这里我们先在本地建好

    c 复制代码
    mkdir -p /mydata/mongodb/data
  • 下载并run镜像,这里使用latest版本

    查看更多mongo镜像版本

    c 复制代码
    docker pull mongo
  • 启动镜像

    直接运行run命令也可以,docker识别到本地没有mongo镜像会自动去pull

    c 复制代码
    docker run -d --name mongo -p 27017:27017 -v/mydata/mongodb/data:/data/db --restart=always mongo --auth

    参数详解

    命令 描述 例子
    --restart 容器启动方式 --restart=always # 开机启动,失败也会一直重启,一般不用可能,无限重启--restart=on-failure:10 : 表示最多重启10次; 立即生效需要重启docker systemctl restart docker,否则下次生效
    --privileged 赋予容器权限 --privileged=true # 赋予容器与主机一样的权限; 可能带来安全隐患,是容器突破限制影响到主机,可以使用--cap-add--device参数来分别添加必要的capabilities或设备访问权限
  • 查看容器是否启动成功

    C 复制代码
    docker ps -a
  • 进入容器,增加账户

    c 复制代码
    #进入容器
    docker exec -it mongo /bin/bash
    #登录mobodb
    mongo admin 
    #创建一个名为 root,密码为 123456 的用户。
    db.createUser({ user:'root',pwd:'123456',roles:[{ role:'userAdminAnyDatabase', db: 'admin'},"readWriteAnyDatabase"]});
  • 本地测试是否可以连接

    c 复制代码
    #尝试使用上面创建的用户信息进行连接。
    db.auth('root', '123456')
    #选择admin库
    use admin
    #创建集合users
    db.createCollection('users')
    #插入数据
    db.users.insert({"name":"小李","age": NumberInt(33)})
    #查看数据
    db.users.find()
  • 远程使用mongodb管理工具测试是否可以远程连接(navicat mongo)

    如果不能远程连接,则可能是端口没有放开


二、使用

CRUD

三、mongodb常用指令

总结

提示:这里对文章进行总结:

例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

相关推荐
yannan201903134 小时前
Docker容器
运维·docker·容器
小宁爱Python5 小时前
Windows Docker Desktop占用C盘空间过大解决办法集合
运维·docker·容器
JAVA学习通5 小时前
发布自己的 jar 包到 Maven 中央仓库 ( mvnrepository.com )
人工智能·docker·自然语言处理·容器·rocketmq
点灯小铭8 小时前
基于单片机的智能洗碗机设计
单片机·嵌入式硬件·mongodb·毕业设计·课程设计
木亦汐丫8 小时前
Docker 镜像版本Alpine、Slim、Bookworm、Bullseye、Stretch、Jessie
运维·docker·容器·debian·alpine·slim·bullseye
中草药z10 小时前
【Docker】零基础上手:原理+Ubuntu/Windows GUI 安装 + 镜像源 / 目录优化
运维·ubuntu·docker·容器·gui·安装·cgroups
勇往直前plus11 小时前
如何利用docker部署springboot应用
spring boot·docker·容器
有谁看见我的剑了?14 小时前
k8s storageclasses nfs-provisioner 部署
docker·容器·kubernetes
忧郁的橙子.15 小时前
安装插件遇到报错时间错误导致签证失败 Errors during downloading metadata for repository ‘baseos‘:
docker
济南java开发,求内推15 小时前
mongodb一个服务器部署多个节点
服务器·数据库·mongodb