我创建了Dockerfile从official docker compose website到ruby。我用docker撰写这个与postgres集成。当docker组装起来,然后postgresql启动但我无法连接到这个。主要的问题是在ruby数据库配置中,因为我无法更改为侦听另一个主机并设置默认用户。我不知道如何在不更改ruby数据库配置的情况下连接这两个容器。Docker撰写ruby + postgres - 无法连接到postgres
Dockerfile
FROM ruby:2.3.4
RUN apt-get update -qq && apt-get install -y build-essential libpq-dev nodejs
RUN mkdir /myapp
WORKDIR /myapp
ADD Gemfile /myapp/Gemfile
ADD Gemfile.lock /myapp/Gemfile.lock
RUN bundle install
ADD . /myapp
泊坞窗,构成
version: '3'
services:
db:
image: postgres:9.6
ports:
- "5432:5432"
web:
build: .
ports:
- "4000:4000"
depends_on:
- db
红宝石的database.yml
default: &default
adapter: postgresql
encoding: unicode
pool: 5
development:
<<: *default
database: project_development
如果我的网络conatiner内运行的“捆绑高管耙分贝:创建我得到错误:
psql: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?
我不知道将连接在一起的env集合。
有一个名为'postgres'与Postgres里的搬运工图像空口令默认用户,所以你不必创建它。您的解决方案不能解决问题 –