我想使用docker-compose将Postgres数据库与我在nodejs中构建的应用程序一起使用。我构建了代码,并将其与docker-compose一起使用,如文件中所示。然后使用DB_HOST环境变量连接数据库。 我正在为docker-compse.yml文件使用以下代码
version: '3'
services:
db:
image: postgres
ports:
- 5432:5432
environment:
POSTGRES_PASSWORD: postgres
POSTGRES_USER: postgres
POSTGRES_DB: type
server:
image: hardik/type:1.0.0
ports:
- '3001:4000'
environment:
DB_HOST: db
depends_on:
- 'db'
但是它无法连接到数据库,并显示错误消息“连接被拒绝”
答案 0 :(得分:0)
以下是用于带有postgres数据库的安装节点应用程序的docker-compose文件。
networks:
main:
volumes:
db-postgres:
services:
app:
container_name: app
image: node:latest
restart: always
volumes:
- ./app:/home/node/app
working_dir: /home/node/app
ports:
- 3000:3000
networks:
- main
command: "npm start"
depends_on:
- db
db:
container_name: db
image: postgres:latest-pg11
restart: always
environment:
- POSTGRES_USER= 'xyz'
- POSTGRES_PASSWORD='pwd0123456789'
- POSTGRES_DB= 'testdb'
networks:
- main
volumes:
- db-postgres:/var/lib/postgresql/data