Windows中使用Docker部署并使用MongDB

Posted y_bccl27

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Windows中使用Docker部署并使用MongDB相关的知识,希望对你有一定的参考价值。

一、Docker部署MongoDB

第一步:使用下述命令先拉取MongDB的镜像:

docker pull mongo

第二步:创建并启动MongDB容器,同时配置好数据挂载目录

docker run -id --name mongo -v E:\\\\mongo\\\\data:/data/db -p 27017:27017 mongo:latest

第三步:由于当前mongo的版本为6.0.5,已经是属于大于6.0版本,所以如果想进入到 mongo shell 中,需要在容器内部使用 mongosh 命令。对于6.0以下的版本,还是使用 mongo 命令。

第四步:使用 show dbs 命令查看所有的数据库

二、用户操作

2.1 查看用户

如果想查看MongoDB中的所有用户,需要进入到 mongo shell 中,然后使用下述命令:

show users

如果当前没有创建任何用户,则显示内容如下: 

2.2 创建用户

进入到 mongo shell 中,使用下述命令去创建一个用户时,不需要做任何的切库操作: 

db.createUser(
    
        user:"root",
        pwd:"123456",
        roles:[role:"root",db:"admin"]
    
)

以下为创建一个用户时各个参数的说明: 

user:表示用户名

pwd:表示密码

role:表示角色设置,其值为“root”时表示是超级用户

db:表示指定使用的数据库 

2.3 删除指定用户

如果想删除某一个用户,可以使用下述命令:

db.dropUser('用户名')

使用 Docker 的开发环境并部署到 AWS Elastic Beanstalk

【中文标题】使用 Docker 的开发环境并部署到 AWS Elastic Beanstalk【英文标题】:Development environment with Docker and deploying to AWS Elastic Beanstalk 【发布时间】:2015-04-03 03:56:17 【问题描述】:

我正在编写一个 PHP 应用程序,并希望开发环境是一个 Docker 容器。为此,我在项目的根目录中创建了一个Dockerfile,它安装了我的应用程序所需的所有包,将配置文件复制到容器中,然后安装我的应用程序。

这工作正常,但现在我需要告诉我的 PHP 应用程序它所处的环境,developmentproduction。这也很简单,我可以将其添加到我的Dockerfile

ENV environment development

现在,当我构建图像时,我的 PHP 应用程序以 development 模式运行。太好了,现在我可以在 Docker 容器中构建我的应用程序了!

但是当我想将此应用程序部署到生产服务器(具体来说是 AWS Elastic Beanstalk)时会发生什么?如果我在Dockerfile 中指定环境为development,我的应用程序在部署到 Elastic Beanstalk 时是否不会在开发模式下运行?

【问题讨论】:

【参考方案1】:

设置环境变量是个好办法;但是,通过在 Dockerfile 中执行此操作,您可以为从该映像派生的任何容器设置它。您真正想要做的是在逐个容器的基础上设置它。方法是在运行容器时进行设置:

用于开发:

docker run --env environment=development my-image

对于生产:

docker run --env environment=production my-image

请注意,即使您在 Dockerfile 中设置了环境变量,这也会起作用 - 使用 docker run --env 设置的变量将覆盖 Dockerfile 中设置的值。

【讨论】:

现在我查看了 --env 标志,发现它就在文档中……我一定是跳过了它。 :/ 谢谢! :)

以上是关于Windows中使用Docker部署并使用MongDB的主要内容,如果未能解决你的问题,请参考以下文章

win7安装docker并打开srscsdn

Windows下使用docker部署.Net Core

使用Docker部署RabbitMQ集群

使用Docker部署RabbitMQ集群

.NetCore + Docker在Windows系统中的安装与部署

windows下的docker部署Mysql和Navicate连接docker数据库