我正在解释如何利用Docker来设置数据库并演示其实际应用程序。在本文中,我重点介绍使用MongoDB数据库并提供有关其利用率的说明。
使用Docker设置MongoDB有几个好处,而不是直接在本地PC上安装它:
-
Isolation
:Docker将MongoDB与您的本地系统分开,确保稳定性和一致性。 -
Deployment
:Docker使部署多个MongoDB实例并管理副本集或集群。 -
Consistency
:docker确保在不同机器上保持一致的环境,避免版本或配置冲突。 -
Cleanup and Portability
:docker允许轻松拆除mongodb容器并无缝迁移到不同的环境。 -
Dependency Management
:Docker简化了管理MongoDB版本和依赖项。
我准备帮助您在Docker容器中安装MongoDB。让我们开始!
在Docker中安装Mongo
docker pull mongo
要确定MongoDB是否安装在我们的Docker环境中,我们需要检查是否存在Mongo图像。如果找到图像,我们可以查看其ID,标签/版本和大小。但是,如果图像不可用,则不会显示任何信息。
docker images mongo
运行第一个mongodb容器:
docker run -d --name mongo-one -p 27017:27017 mongo
运行第二个MongoDB容器:
如果需要多个容器,则可以使用它
docker run -d --name mongo-two -p 27018:27017 mongo
在上面的示例中,容器是Mongo-One和Mongo-Two,以及-P选项映射端口27017/27018从主机机器到容器。您可以根据需要选择其他容器名称和端口映射。
显示当前运行的所有Docker容器
docker ps
执行运行的Docker容器:Mongo-One
docker exec -it mongo-one bash
执行Mongo的运行Docker容器后,我们必须启动MongoDB Shell并与在容器内运行的MongoDB数据库进行交互
mongosh
成功执行了MongoDB容器后,您将获得数据库URL,可以与Node.js,Python,Rust,Go等各种编程语言一起使用。该URL将使您能够从所选的编程环境中建立与MongoDB数据库的连接。
const DB_URL1='mongodb://localhost:27017/<db_name>';
const DB_URL2='mongodb://localhost:27018/<db_name>';
db_url1和db_url2都是数据库URL,在运行MongoDB的Docker容器时可以获得。如果执行如上所述执行的“ Mongo-One”和“ Mongo-Two”容器,则DB_URL1和DB_URL2都将运行,可用于建立与相应的MongoDB数据库的连接。
数据库启动并运行后,我可以通过Docker Shell共享一组命令与MongoDB进行交互。这些命令使我们能够执行各种操作并操纵Docker环境中的MongoDB数据库
显示所有数据库
show dbs
如果您发现自己感到困惑或不确定如何进行。
help
切换到store
数据库
use store
获取当前选择的数据库中存在的所有集合
show collections
在商店中创建多个水果
db.fruit.insertMany([
{name:"apple", price: 250, color: "red"},
{name:"banana", price: 120, color: "yellow"},
{name:"papaya", price: 150, color: "yellowish-orange"}
])
获得所有水果
db.fruit.find()
获取name
含有banana
的所有水果
db.fruit.find({name: "banana"})
获得name
的单一水果
db.fruit.findOne({name: "banana"})
根据匹配名称更新单个文档
db.fruit.findOneAndUpdate(
{ name: "banana" },
{ $set: { price : 100 } },
)
资源
谢谢。
记住要继续学习和探索新事物。