Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用docker compose通过pymonogo应用程序设置mongodb?_Mongodb_Docker_Docker Compose_Pymongo - Fatal编程技术网

如何使用docker compose通过pymonogo应用程序设置mongodb?

如何使用docker compose通过pymonogo应用程序设置mongodb?,mongodb,docker,docker-compose,pymongo,Mongodb,Docker,Docker Compose,Pymongo,我正在尝试使用docker composer使用mongodb服务器启动python应用程序,但出现以下错误: pymongo.errors.ServerSelectionTimeoutError:localhost:27017:[Errno 111]连接被拒绝 我真的不明白我的设置中缺少了什么: version: '3.6' services: web: build: . ports: - "5000:5000" - "9000:9000" li

我正在尝试使用docker composer使用mongodb服务器启动python应用程序,但出现以下错误:

pymongo.errors.ServerSelectionTimeoutError:localhost:27017:[Errno 111]连接被拒绝

我真的不明白我的设置中缺少了什么:

version: '3.6'
services:
  web:
    build: .
    ports:
     - "5000:5000"
     - "9000:9000"
    links:
      - db
  db:
    image: mongo:latest
    container_name: "mongodb"
    ports:
        - 27017:27017
    command: mongod --smallfiles # --quiet    

  redis:
    image: "redis:alpine"
我不确定为什么无法连接到似乎已启动的服务器(
docker ps
):


您需要将python应用程序配置为在
db:27017
上连接mongo,而不是
localhost:27017

当您“在”一个容器中时
localhost
指的是容器本身,而不是主机。@tgogos如果我从带有本地主机的主机使用Robonogo,它就可以工作。您确定吗?这是因为您发布了端口
27017
。这实际上意味着您正在将
mongodb容器端口27017
绑定到主机端口27017。您必须通过使用容器的IP或名称来配置python容器以与mongo通信。
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                                            NAMES
fb5a00bb8867        composedir_web      "python app.py"          20 seconds ago      Up 19 seconds       0.0.0.0:5000->5000/tcp, 0.0.0.0:9000->9000/tcp   composedir_web_1
56aeae245ad5        mongo:latest        "docker-entrypoint.s…"   14 minutes ago      Up 20 seconds       0.0.0.0:27017->27017/tcp                         mongodb
51c64650bab8        redis:alpine        "docker-entrypoint.s…"   14 minutes ago      Up 21 seconds       6379/tcp                                         composedir_red