我正在使用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/ –
似乎有什么区别,你的主机操作系统你在 –