首先我拉了mongoDb图像
sudo docker pull mongo
Run Code Online (Sandbox Code Playgroud)
并运行docker mongodb容器:
sudo docker run --name database -d -p 27017:27017 mongo --noauth --bind_ip=0.0.0.0
Run Code Online (Sandbox Code Playgroud)
我看到我的Docker容器可以工作了:
300b779a63a9 mongo "docker-entrypoint..." 30 minutes ago Up 30 minutes
Run Code Online (Sandbox Code Playgroud)
现在我正在尝试通过我的docker app连接到它
sudo docker run -v ~/Desktop/Template/universal_skillskill -it --link 300b779a63a9:300b779a63a9 alexa
Run Code Online (Sandbox Code Playgroud)
和...我收到一条消息,拒绝连接:(
Uncaught exception: MongoError: failed to connect to server [0.0.0:27017] on first connect [MongoError: connect ECONNREFUSED 0.0.0.0:27017]
MongoError: failed to connect to server [0.0.0:27017] on first connect [MongoError: connect ECONNREFUSED 0.0.0.0:27017]
Run Code Online (Sandbox Code Playgroud)
我检查了一下,我的应用程序可以在本地安装的mongodb上使用,但是它无法与docker mongoDb容器通信:(我在做什么错?有人可以请我帮忙吗:)
小智 7
如果您使用这些附加参数启动容器进行身份验证,请添加到以前的答案
- MONGO_INITDB_ROOT_USERNAME=user
- MONGO_INITDB_ROOT_PASSWORD=password
Run Code Online (Sandbox Code Playgroud)
然后也使用authSource=admin参数,仅传递凭据是行不通的。
mongodb://<user>:<password>@<container_name>:27017/$<DB>?authSource=admin
我遇到了这个问题。我想,这可能对某人有帮助。
您需要连接到,300b779a63a9:27017因为这是您为mongodb指定的链接名称。
| 归档时间: |
|
| 查看次数: |
2768 次 |
| 最近记录: |