首页 > 数据库 >docker部署mongodb

docker部署mongodb

时间:2024-04-17 14:34:19浏览次数:38  
标签:mongo 部署 mongodb db INITDB docker ROOT

docker部署mongodb

拉取镜像

docker pull mongo

启动mongo(docker run和docker compose)

  • docker run

--auth:需要密码才能访问容器服务。
-e MONGO_INITDB_ROOT_USERNAME:设置用户名
-e MONGO_INITDB_ROOT_PASSWORD:设置密码

docker run --restart=always --name mongodb -v ~/docker/mongo:/data/db -d -p 27017:27017 -e MONGO_INITDB_ROOT_USERNAME=admin -e MONGO_INITDB_ROOT_PASSWORD=Mongo,123456. mongo --auth
  • docker compose
version: '3.9'
services:
    mongo:
        command: '--auth'
        image: mongo
        environment:
            - 'MONGO_INITDB_ROOT_PASSWORD=Mongo,123456.'
            - MONGO_INITDB_ROOT_USERNAME=admin
        ports:
            - '27017:27017'
        volumes:
            - './data:/data/db'
        container_name: mongodb
        restart: always

进入容器,创建用户

  • 进入容器
    docker exec -it mongodb mongosh admin

  • 使用启动时设置的账号密码认证db.auth("用户名","密码")
    db.auth("admin","Mongo,123456.")

  • 创建一个名为 admin2,密码为 123456 的用户

db.createUser({ user:'admin02',pwd:'123456',roles:[ { role:'userAdminAnyDatabase', db: 'admin'},"readWriteAnyDatabase"]});

开启远程连接

  • 推出容器 exit
  • 进入容器bash docker exec -it mongodb bash
  • 更新源 apt-get update
  • 安装vim apt-get install vim -y
  • 修改mongo配置文件 vim /etc/mongod.conf.orig
    将其中的 bindIp: 127.0.0.1 注释掉# bindIp: 127.0.0.1
    或者改成bindIp: 0.0.0.0
    即可开启远程连接

标签:mongo,部署,mongodb,db,INITDB,docker,ROOT
From: https://www.cnblogs.com/wszzn/p/18140661

相关文章

  • Nginx部署安装
     #部署前准备工作#配置阿里云的yum源yum-yinstallwgetcd/etc/yum.repos.d/wgethttp://mirrors.aliyun.com/repo/Centos-7.repomvCentOS-Base.repoCentOS-Base.repo.bakmvCentos-7.repoCentOS-Base.repoyumcleanallyummakecacheyumupdate yum-y......
  • 解决.Net6 部署到ubuntu22.04中使用DotNetCore.NPOI 导出报 Could not open display (
    在Ubuntu22环境下,出现"Couldnotopendisplay(X-Serverrequired.CheckyourDISPLAYenvironmentvariable)"错误可能是由于缺少X服务器或未正确配置DISPLAY环境变量导致的。以下是你可以尝试的解决方法:检查DISPLAY环境变量:确保DISPLAY环境变量已正确设置。使......
  • 基于K8s+Docker+Openresty+Lua+SpringCloudAlibaba的高并发秒杀系统——与京东淘宝同
    ​介绍基于K8s+Docker+Openresty+Lua+SpringCloudAlibaba的高并发高性能商品秒杀系统,本系统实测单台(16核32G主频2.2GHz)openresty(nginx)的QPS可高达6w并发,如果您需要应对100w的并发,则需要100w/6w=17台openresty服务器,17台服务器同时接收并处理这100w的并发流量呢?当然是商业......
  • openGauss在kubernetes集群环境上的部署
    opengauss实践总结学习心openGauss是一款开源关系型数据库管理系统,深度融合华为在数据库领域多年的经验,结合企业级场景需求,持续构建竞争力特性;kubernetes也是一个开源的,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简单并且高效,Kuber......
  • web server apache tomcat11-03-deploy 如何部署
    前言整理这个官方翻译的系列,原因是网上大部分的tomcat版本比较旧,此版本为v11最新的版本。开源项目从零手写实现tomcatminicat别称【嗅虎】心有猛虎,轻嗅蔷薇。系列文章webserverapachetomcat11-01-官方文档入门介绍webserverapachetomcat11-02-setup启动web......
  • docker使用centos镜像创建的容器内使用systemctl重启sshd服务报错或者无法使用
    问题是这样的:如果镜像是ubuntu系统的,创建容器后使用systemctl启动sshd没有什么问题,但是如果镜像是centos,那就会报错failedtoconnecttobusnosuch原因:centos系统的的安全性较高,相比ubuntu一些底层无法映射到容器中,即使在创建容器时加上--security-optseccomp:unconfined --......
  • 如何在Ubuntu 22.04上用Docker安装Sentry
    Sentry是一个免费和开源的错误跟踪平台,可以实时监控和修复崩溃。它使软件开发人员能够看到重要的东西,更快地解决问题,并不断了解他们的应用程序。这个平台提供了对生产部署的实时洞察力,并提供了重现和修复崩溃的信息。Sentry支持所有主要的语言和框架,并与你喜欢的应用程序和服务集......
  • Docker-compose部署项目(Fastapi项目为例)
    1.有Dockerfile文件进行部署,Dockerfile内容参考FROM127.0.0.1:5000/py3.10-1COPYrequirements.txt.RUNpipinstall-ipip源-rrequirements.txt2.Docker-compose.yml文件env_file指定环境变量,看项目是否使用env环境变量volumes挂在工作目录映射,工作目录更改代码容......
  • Docker使用Dockerfile部署Fastapi应用
    1#使用官方的Python运行时作为基础镜像2FROMpython:3.9-slim34#设置工作目录5WORKDIR/app67#复制应用程序的依赖文件到工作目录8COPYrequirements.txt.910#安装应用程序的依赖11RUNpipinstall--no-cache-dir-rrequirements.txt12......
  • 使用 Docker 部署 SurveyKing 调查问卷系统
    1)SurveyKing介绍SurveyKing是一款功能强大、操作简便的开源问卷系统。它不仅满足了用户对问卷调查的基本需求,还提供了丰富的逻辑设置和灵活的问题设置,使得问卷制作更加智能化和个性化。此外,SurveyKing还具有快速部署和安全可靠等优点,使得用户能够轻松高效地开展问卷调查工作......