【发布时间】:2021-03-14 20:36:09
【问题描述】:
ruby on rails 应用程序使用 mongodb 和 postgresql 数据库。当我在本地运行它时一切正常,但是当我尝试在远程容器中打开时,它会抛出错误消息
2021-03-14T20:22:27.985+0000 Failed: error connecting to db server: no reachable servers
docker-compose.yml 文件定义了以下服务:
redis mongodb db rails
我使用以下命令启动远程容器:
docker-compose build - 构建成功
docker-compose up -d - 容器已启动并正在运行
当我连接到rails 容器并尝试这样做时
bundle exec rake aws:restore_db
上面提到的错误被抛出。我不知道这里有什么问题。 mongodb 容器已启动并正在运行。
docker-compose.yml 如下:
version: '3.4'
services:
redis:
image: redis:5.0.5
mongodb:
image: mongo:3.6.13
volumes:
- mongo-data:/data/db
db:
image: postgres:11.3
volumes:
- db-data:/var/lib/postgresql/data
rails:
build: .
image: proj:latest
depends_on:
- db
- mongodb
- redis
volumes:
- .:/proj
ports:
- "3000:3000"
tty: true
stdin_open: true
env_file:
- .env/development.env
volumes:
db-data:
mongo-data:
这就是我启动所有四个远程容器的方式:
$ docker-compose up -d
Starting proj_db_1 ... done
Starting proj_redis_1 ... done
Starting proj_mongodb_1 ... done
Starting proj_rails_1 ... done
请帮助我了解远程容器应该如何相互交互。
【问题讨论】:
标签: ruby-on-rails docker docker-compose