我正在使用postgresql構建在NodeJS上運行的應用程序。 我使用SequelizeJS作爲ORM。 爲了避免使用真正的postgres守護進程並在我自己的設備上使用nodejs,我使用了docker-compose的容器。ECONNREFUSED在nodeJS上使用docker的Postgres
當我運行docker-compose up
它啓動PG數據庫
database system is ready to accept connections
和服務器的NodeJS。 但服務器無法連接到數據庫。
Error: connect ECONNREFUSED 127.0.01:5432
如果我嘗試不使用容器(與真正的和的NodeJS我的機器上postgresd)運行服務器它的工作原理。
但我希望它與容器一起正常工作。我不明白我做錯了什麼。
這裏是docker-compose.yml
文件
web:
image: node
command: npm start
ports:
- "8000:4242"
links:
- db
working_dir: /src
environment:
SEQ_DB: mydatabase
SEQ_USER: username
SEQ_PW: pgpassword
PORT: 4242
DATABASE_URL: postgres://username:[email protected]:5432/mydatabase
volumes:
- ./:/src
db:
image: postgres
ports:
- "5432:5432"
environment:
POSTGRES_USER: username
POSTGRES_PASSWORD: pgpassword
有人能幫助我嗎?
(有人誰喜歡搬運工:))
這篇文章提到「boot2docker ip」命令,在這裏似乎有用嗎? https://www.andreagrandi.it/2015/02/21/how-to-create-a-docker-image-for-postgresql-and-persist-data/ –
似乎有什麼區別,你的主機操作系統你在 –