Docker/Nodejs/系统运维

nodejs里的config.default.js一些参数如何从docker run命令中获取

daimafengzi · 3月27日 · 2024年 · · · · 本文共454个字 · 预计阅读2分钟8449次已读

在Node.js应用中,如果你想要在运行时从docker run命令中获取参数传递给你的应用,你可以使用环境变量。你可以在docker run命令中使用-e--env选项来设置环境变量。

例如,你有一个config.default.js文件,其中有一个参数需要从Docker环境中获取:

const port = process.env.PORT || 3000;
 
// 其他配置...
 
module.exports = {
  port: port
  // 其他配置...
};

在你的Dockerfile中,你可以这样设置默认端口

# 设置默认环境变量
ENV PORT 3000

然后,你可以在运行容器时通过docker run命令来覆盖这个变量:

docker run -e PORT=5000 -p 5000:5000 your-node-app

这个命令会将容器内的应用配置为监听端口5000,并将主机的端口5000映射到容器的端口5000上。这样,你的Node.js应用就会使用docker run命令传递进来的端口号,而不是使用在Dockerfile中设置的默认值。

0 条回应