type
status
date
slug
summary
tags
category
icon
password
😀
node-config是一个Node.js库,用于组织和管理应用程序配置。它让你可以为不同的部署环境定义一套配置文件,比如开发、测试和生产环境,然后根据运行时的环境自动选择合适的配置。

📝 主旨内容

如何使用node-config来同时管理多个环境中的配置的基础步骤

1. 安装node-config

首先,你需要在你的Node.js项目中安装node-config。通过运行以下命令来安装:

2. 创建配置文件

node-config读取config目录下的配置文件。你需要在项目的根目录下创建一个名为config的文件夹。在这个文件夹内,你可以为不同的环境创建不同的配置文件。例如:
  • default.json:所有环境的默认配置。
  • development.json:开发环境的特定配置。
  • production.json:生产环境的特定配置。
  • test.json:测试环境的特定配置。
配置文件可以是JSON格式,也支持其他格式如JS或YAML,取决于你的偏好和需求。

3. 使用环境变量

node-config根据NODE_ENV环境变量的值来加载相应的配置文件。如果NODE_ENV没有设置,node-config会默认加载default.json中的配置。
例如,如果你设置NODE_ENV=productionnode-config将会合并default.jsonproduction.json的配置,production.json中的配置将覆盖default.json中的同名配置。
你可以在启动应用程序时设置环境变量,如:

4. 读取配置

在代码中,你可以使用node-config提供的API来读取配置项。例如:
这里config.get('Customer.dbConfig')将会返回配置文件中Customer.dbConfig路径下的配置。

5. 管理配置优先级

node-config按以下顺序管理配置优先级:
  1. 命令行参数(使用NODE_CONFIG环境变量指定的配置)。
  1. 环境变量中指定的配置。
  1. 自定义环境配置文件(如development.jsonproduction.json等)。
  1. 默认配置文件(default.json)。
这意味着,默认配置可以被环境特定的配置覆盖,而环境变量和命令行参数可以覆盖所有文件中的配置。

6. 环境特定配置的一些注意事项

  • 敏感信息的处理:对于包含敏感信息(如数据库密码)的配置,不建议直接存储在配置文件中。可以使用环境变量或加密方式来处理。
  • 版本控制:通常,除了包含敏感信息的配置外,其余配置文件可以放入版本控制系统。但是,确保.gitignore文件中排除了任何敏感信息。

🤗 总结归纳

环境配置是相当繁琐的,可能涉及到配置文件,开发、测试、生产等,简化工作流程必备啊,请使用node-config,但是如果你是一个简单的项目或者自己做着玩的demo,那就不必了。
还可以看看dotenv,当前的工具链可以不用,但是不能不了解hhh,从0到100很难,但从50到100就没那么难,那“50”也只需要你简单了解即可

📎 参考文章

 
💡
有关这篇博客的任何问题,欢迎您在底部评论区留言,我会在github邮箱中第一时间收到邮件,让我们一起交流~
Joi——数据校验库Prisma---下一代node.js ORM
  • Giscus
Zachary_Yang
Zachary_Yang
一个普通的干饭人🍚
Announcement
🎉欢迎来到我的博客🎉
-- 亲爱的读者们,你们好! ---
👏在这里,我希望能够和你们一起分享我对生活的观察、对技术的理解和热爱,暂将博客分为以下几个栏目👏
🌿 心绪漫卷边:一些小随笔
🌌 智绘非遇路:AI领域
😊 浅笑编程边:前后端开发
🛠 技术汇流石下:零散技术分享

祝好,
Zachary_Yang