Mongodb 使用固定烧瓶时不知道名称或服务+;蒙哥达
我有一个由React、Flask和MongoDB组成的应用程序作为数据库 我的Mongodb 使用固定烧瓶时不知道名称或服务+;蒙哥达,mongodb,docker,docker-compose,Mongodb,Docker,Docker Compose,我有一个由React、Flask和MongoDB组成的应用程序作为数据库 我的docker compose.yml看起来像 version: '3.7' services: frontend: container_name: frontend build: context: frontend dockerfile: Dockerfile ports: - "3000:80" backend: build: ./back
docker compose.yml
看起来像
version: '3.7'
services:
frontend:
container_name: frontend
build:
context: frontend
dockerfile: Dockerfile
ports:
- "3000:80"
backend:
build: ./backend
ports:
- "5000:5000"
links:
- db
db:
image: mongo:latest
ports:
- "27017:27017"
from flask import Flask, render_template, request, jsonify
from flask_cors import CORS
from bson.objectid import ObjectId
import pymongo
import json
import ssh
import OpenSSL
import pprint
import os
application = Flask(__name__)
cors = CORS(application)
cors = CORS(application)
client = pymongo.MongoClient('mongodb://mongodb:27017/')
db = client["my_db"]
我的烧瓶app.py
的初始部分如下所示
version: '3.7'
services:
frontend:
container_name: frontend
build:
context: frontend
dockerfile: Dockerfile
ports:
- "3000:80"
backend:
build: ./backend
ports:
- "5000:5000"
links:
- db
db:
image: mongo:latest
ports:
- "27017:27017"
from flask import Flask, render_template, request, jsonify
from flask_cors import CORS
from bson.objectid import ObjectId
import pymongo
import json
import ssh
import OpenSSL
import pprint
import os
application = Flask(__name__)
cors = CORS(application)
cors = CORS(application)
client = pymongo.MongoClient('mongodb://mongodb:27017/')
db = client["my_db"]
然而,当我docker compse build
和docker compose up
时,我得到
backend_1|pymongo.errors.ServerSelectionTimeoutError:mongodb:27017:[Errno-2]名称或服务未知
当我向后端发出请求时
有什么帮助吗?我想主机名应该是“db”。你是说
mongodb://db:27017/“
”这应该行得通。该名称应与您添加的链接的名称相同。它仍然为我提供:pymongo.errors.ServerSelectionTimeoutError:db:27017:[Errno-2]名称或服务未知
谢谢!我还有一个问题。我想将mongoimport
ajson
文件导入到容器化数据库中。你能在这里回答这个问题吗,还是我再问一个问题?