我有一个docker-compose.yml文件,该文件初始化节点容器和postgres容器。看起来像这样:
version: "3.7"
services:
server:
build: .
command: npm start
ports:
- "3000:3000"
environment:
- DB_HOST=db
depends_on:
- db
db:
container_name: "service__db"
image: postgres
ports:
- "5432:5432"
environment:
- POSTGRES_USER=user
volumes:
- my_dbdata1:/var/lib/postgresql/data
volumes:
my_dbdata1:
这两个容器都上线了,我可以将它们挂接到其中,并且端口可用。但是,我无法从节点容器访问postgres容器。当我登录process.env.DB_HOST
时,我得到一个文字字符串; 'db'
。我还使用sequelize作为ORM,但无法运行迁移。我没有看到错误或任何东西,先进行序列化然后停下来
compose.yml文件中缺少我什么吗?
我想提到的一件重要的事情是,这是在Mac上本地运行的
答案 0 :(得分:0)
您能使用这个吗?
version: "3.7"
services:
server:
build: .
command: npm start
ports:
- "3000:3000"
environment:
- POSTGRES_HOST ='db'
depends_on:
- db
db:
container_name: "service__db"
image: postgres
ports:
- "5432:5432"
environment:
- POSTGRES_USER=user
volumes:
- my_dbdata1:/var/lib/postgresql/data
volumes:
my_dbdata1: