Docker-compose выдача URI :: InvalidURIError: схема postgresql не принимает часть реестра: $ DB_USER: $ DB_PASSWORD @ $ DB_HOST: порт (orbad hostname?) - PullRequest
0 голосов
/ 09 октября 2018

Я использую несколько контейнеров для приложения ruby.Контейнеры работают нормально, но когда дело доходит до создания базы данных с использованием docker-compose run app rails db:create, я получаю следующую ошибку.rails aborted! URI::InvalidURIError: the scheme postgresql does not accept registry part: $DB_USER:$DB_PASSWORD@$DB_HOST:port (orbad hostname?).

Ниже показан фрагмент файла docker-compose

db:
image: postgres:9.4
volumes_from:
  - data
environment:
  POSTGRES_USER: cpostgres
  POSTGRES_DB: micro_login_db
ports:
  - 5432

app:
build: .
depends_on:
  - db
volumes:
  - .:/webapp
command: rails server -p 3000 -b 0.0.0.0
ports:
  - 3000:3000
environment:
   DB_HOST: db
   DB_USER: cpostgres
   POSTGRES_DB: micro_login_db
   POSTGRES_TEST_DB: micro_login_test

Кто-то еще предложил мне создать файл с именем application.yml со следующими сведениями

DB_USER: 'cpostgres'
DB_PASSWORD: ''
DB_HOST: 'db'
POSTGRES_DB: 'micro_login_db'
port: 5432

И, наконец, database.yml файл

default: &default
adapter: postgresql
template: template0
encoding: unicode
username: <%= ENV['DB_USER'] %> 
database: <%= ENV['POSTGRES_DB'] %>
host: <%= ENV['DB_HOST'] %>
pool: 5
timeout: 5000

development:
  <<: *default

Вопрос в том, почему я получаю эту ошибку?Как я могу решить это?Любая помощь будет принята с благодарностью.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...