为什么Docker容器不能从环境变量连接到数据库?

uyto3xhc  于 2023-06-21  发布在  Docker
关注(0)|答案(1)|浏览(126)

我有一个Dockerfile:

FROM node:14
    
WORKDIR /app
    
COPY package*.json ./
    
RUN npm install —force
    
COPY . .
    
ENV NODE_ENV=production
    
EXPOSE 3000
    
CMD ["node", "dist/main"]

下面是.env文件,其中包含数据库配置和JWT的私钥:

DB_HOST=localhost
DB_PORT=5432
DB_USERNAME=postgres
DB_PASSWORD=root
DB_DATABASE=chat

SECRET_KEY='qwerty'

为什么Docker容器无法连接到数据库?我正在尝试运行docker run -p 3000:3000

3bygqnnd

3bygqnnd1#

定义.env文件时,docker不会自动读取该文件。您需要传递--env-file选项:

$ docker run -p 3000:3000 --env-file .env <your image>

相关问题