gpt4 book ai didi

ruby-on-rails - 无法使用Docker Compose将mongodb与Rails容器连接

转载 作者:行者123 更新时间:2023-12-02 20:19:13 32 4
gpt4 key购买 nike

通过Rails控制台在Model中插入值时出现此错误。

"Mongo::Error::NoServerAvailable: No server is available matching preference: # using server_selection_timeout=30 and local_threshold= 0.015 "



两个容器都运行良好,但是Rails无法连接mongodb。
我只有一个Dockerfile。

我的docker-compose.yml文件内容为:
 version: '2'

services:
mongo:
image: mongo:3.0
command: mongod --smallfiles --quiet
environment:
- RAILS_ENV=production
- RACK_ENV=production
ports:
- "27017:27017"

app:
depends_on:
- 'mongo'
# - 'redis'
build: .
ports:
- '3000:3000'
volumes:
- '.:/app'
command: rails s -b '0.0.0.0'
env_file:
- '.env'

volumes:
mongo:

我的Dockerfile:
FROM ruby:2.3.0
RUN apt-get update -qq && apt-get install -y build-essential libpq-dev nodejs

ENV APP_HOME /app

RUN mkdir $APP_HOME
WORKDIR $APP_HOME


ADD Gemfile* $APP_HOME/
RUN bundle install


ADD . $APP_HOME

最佳答案

您是否使用mongo(与docker-compose.yml中提到的容器名称相同)作为mongoid.yml中的主机?

关于ruby-on-rails - 无法使用Docker Compose将mongodb与Rails容器连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40201069/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com