【问题标题】:Docker Meteor development setup still connecting to local databaseDocker Meteor 开发设置仍连接到本地数据库
【发布时间】:2018-06-10 13:37:48
【问题描述】:

我正在尝试为我的流星应用程序设置一个 docker-compose 设置。 docker-compose 就是这个

version: '2'
services:
  web:
    build: docker/web
    ports:
      - "3000:3000"
    volumes:
      - .:/home/meteor/app
    container_name: newkeyz-web
    links:
      - mongo
    environment:
      - MONGO_URL=mongodb://mongo:27017/meteor
    command: ["meteor","npm","start"]
  mongo:
    image: mongo
    volumes:
      - ./data:/data/db
    ports:
      - "27017:27017"

当容器启动时,它确实以正确的命令启动 -

newkeyz-web | > newkeyz@1.9.5 start /home/meteor/app
newkeyz-web | > MONGO_URL=mongodb://mongo:27017/meteor meteor --settings settings.json

但流星应用仍然尝试连接到本地 mongodb 实例

MongoError: failed to connect to server [127.0.0.1:3001]

我已经尝试了在命令中指定 mongo_url 的所有不同方法

export MONGO_URL=mongodb://mongo:27017/meteor && meteor --settings settings.json

MONGO_URL=mongodb://mongo:27017/meteor meteor --settings settings.json

meteor --settings settings.json

我什至在 Dockerfile 中有一个 ENV,但没有运气

ENV MONGO_URL mongodb://mongo:27017/meteor

我做错了什么?任何指针将不胜感激。

【问题讨论】:

    标签: mongodb meteor docker-compose


    【解决方案1】:

    我发现了问题。议程 npm 初始化代码试图基于不同的环境变量连接到本地数据库。

    export const agenda = new Agenda({
      maxConcurrency: 1,
      db: {
        address: process.env.MONGODB_URI,
      },
    });
    

    将其更改为正确的变量后,它起作用了。

    【讨论】:

    • 我不认为这是一个答案。您必须对您未指定的代码和配置示例进行详细描述和深入了解。很高兴你找到了答案,但你的答案对任何人都没有帮助。
    猜你喜欢
    • 2019-01-10
    • 2021-09-03
    • 2021-05-22
    • 1970-01-01
    • 2020-02-03
    • 1970-01-01
    • 2018-10-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多