首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

我正在开发一个使用node js的应用程序,它在本地工作得很好,但每当我试图将它上传到heroku时就会崩溃,它说cat find dotenv

问题描述:我正在开发一个使用node js的应用程序,它在本地工作得很好,但每当我试图将它上传到heroku时就会崩溃,它说cat find dotenv。

回答: 这个问题可能是由于缺少dotenv模块引起的。dotenv是一个用于加载环境变量的模块,它可以从一个名为.env的文件中读取变量,并将其注入到应用程序的环境中。

在本地开发环境中,你可能已经安装了dotenv模块,并在应用程序中正确地使用了它。但是在Heroku上部署时,由于缺少dotenv模块,应用程序无法找到dotenv模块,导致崩溃。

解决这个问题的方法是在你的应用程序的根目录下创建一个名为.env的文件,并在其中定义你需要的环境变量。例如:

代码语言:txt
复制
DB_HOST=localhost
DB_USER=root
DB_PASSWORD=123456

然后,在你的应用程序的入口文件中,使用dotenv模块加载.env文件中的环境变量。例如:

代码语言:txt
复制
require('dotenv').config();

这样,当你在本地运行应用程序时,dotenv模块会自动加载.env文件中的环境变量。而在Heroku上部署时,Heroku会自动检测到你的应用程序中使用了dotenv模块,并自动加载.env文件中的环境变量。

另外,你还需要确保在Heroku上正确配置了你的应用程序的环境变量。你可以通过Heroku的控制台或命令行工具来设置这些环境变量。

推荐的腾讯云相关产品:腾讯云云服务器(CVM)是一种基于云计算技术的灵活可扩展的计算服务,提供了多种配置和操作系统选择,适用于各种应用场景。你可以使用腾讯云云服务器来部署和运行你的应用程序。

腾讯云云服务器产品介绍链接地址:https://cloud.tencent.com/product/cvm

注意:本回答中没有提及亚马逊AWS、Azure、阿里云、华为云、天翼云、GoDaddy、Namecheap、Google等流行的云计算品牌商,以遵守问题要求。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

环境变量:熟悉陌生人

❝身体勤奋,掩盖不了思想懒惰 ❞ 大家好,是「柒八九」。一个「专注于前端开发技术/Rust及AI应用知识分享」Coder。 前言 不知道大家春节过的如何。...无本地支持 虽然这些服务非常适合在应用部署中访问环境变量,但在本地开发应用程序时几乎没有机会使用它们。 在大多数情况下,我们必须使用管理本地.env文件方法。...Node.js环境变量 JavaScript是当前最流行编程语言之一。广泛用于构建后端和前端应用程序,这使成为最通用编程语言之一。...首先:创建一个Node.js项目 首先,确保我们系统安装了Node.js。 一旦在系统设置好,我们就可以访问npm。...要测试此设置,请使用以下命令运行应用程序: NODE_ENV=DEV node index.js 如果我们现在转到localhost:8080,我们会注意到以下响应: 现在,关闭运行中应用程序,并使用以下命令再次运行

15410

JavaScript框架四个时代

项目经理希望使用.NET,部分原因是这是他所知道,但也因为他希望这个应用感觉像一个本地应用程序--没有页面刷新或操作动作长时间等待。...在遇到路由器一些问题之前,已经建立了一个相当大应用程序,并使用FuelPHP后端--每当重新渲染子路由/出口,它就会闪烁,而且真的感觉它在设计时没有考虑到这种场景。...使用像React和Vue这样框架,你可以一次一个小部件或组件地将它一小部分放入现有的应用程序中,允许开发人员增量地迁移他们现有的代码。...首先,当我们在工作中争论使用哪种框架,或者是否应该重写我们应用程序时,并不经常遇到这样框架。相反,很多时候是 "更快!"或 "更小!"或 "它是你所需要一切!"。...当我开始从事SPA工作自己已经完全放弃了这种做法,认为它们是未来趋势,但我们有可能看到卷土重来世界,这真的很酷。 这些是新功能,从经验看,把这些框架归为新一代框架。

50130
  • JavaScript框架四个时代

    项目经理希望使用.NET,部分原因是这是他所知道,但也因为他希望这个应用感觉像一个本地应用程序--没有页面刷新或操作动作长时间等待。...在遇到路由器一些问题之前,已经建立了一个相当大应用程序,并使用FuelPHP后端--每当重新渲染子路由/出口,它就会闪烁,而且真的感觉它在设计时没有考虑到这种场景。...使用像React和Vue这样框架,你可以一次一个小部件或组件地将它一小部分放入现有的应用程序中,允许开发人员增量地迁移他们现有的代码。...首先,当我们在工作中争论使用哪种框架,或者是否应该重写我们应用程序时,并不经常遇到这样框架。相反,很多时候是 "更快!"或 "更小!"或 "它是你所需要一切!"。...当我开始从事SPA工作自己已经完全放弃了这种做法,认为它们是未来趋势,但我们有可能看到卷土重来世界,这真的很酷。 这些是新功能,从经验看,把这些框架归为新一代框架。

    56420

    Infura 以太坊 API 入门教程

    在本教程中,我们介绍使用每个接口原因,以及将通过Node.js示例介绍两种访问以太坊API方法。...如果你获得仅需要收集一次数据或正在访问旧数据,则需要使用HTTPS接口。你会看到HTTPS在简单RESTful应用程序里经常使用。...看一个示例 在此示例中,我们将编写一个使用Rinkeby节点Node.js程序,并使用eth_getBlockByNumber将RPC请求发送到Infura以获取最新区块数据。...示例 在此示例中,我们将编写一个Node.js程序,该程序再次使用Rinkeby节点,并使用WebSocket连接通过该WebSocket连接上newHeads订阅类型来获取最新区块头信息。...我们很快就会得到这个打印输出,然后不断更新,更新和更新,……你明白了。这是当我们保持WebSocket连接打开发生示例: ? 就这些!

    2.4K20

    bun 介绍三:dotenv 与 nodemon 都不再需要了

    在上一篇朋友圈评论区过,bun 与 Node.js 之争,最终可能就是内存与 CPU 之争;bun 能否推广起来,就看单用户成本中 CPU 成本与内存成本哪个更贵。...在部署时候,安装 bun 机器可以把内存分配得高一些,依据昨天初步测试数据,B 版本大内存主机,内存至少要比以往 Node.js 版本主机大 4 倍以上。...然后在.gitignore 文件中忽略.env 使其不上传到仓库中,对于需要在本地测试同学,直接私下发给他一份本地.env 文件。...以上说是老方法,在使用 bun 项目工程中,不需要这么麻烦了。 dotenv 不需要手动安装了,我们可以认为,当我们安装了 bun 以后,dotenv 也随之自动安装了。...4、热加载 热加载提升开发体验,前端开发尤其在调试 CSS 样式,就是一个不断尝试新想法、然后查看效率不断修改过程,如果每次都需要重启项目才能查看效率那太麻烦了。

    66910

    我们将项目语言从Python转向Go5个原因

    02 那么我们在使用Go之前有什么 这是我们Python技术堆栈: Dashboard前端response .js Django Python用于仪表板后端+身份验证服务 用于API服务Node.js...但是我们需要做很多工作来定制DjangoAPI服务,特别是定制JSON响应。 03 为什么使用Go 正如之前所说,Go语言是所见过和使用最简单语言。这只是吸引第一点。...这意味着如果你在你笔记本电脑用Linux X86 CPU编译你后端应用程序,你只需要把编译好二进制文件上传到服务器,它就会工作,而不需要在那里安装任何依赖项!...每当我们需要处理一些内部请求,我们就用单独Goroutine来处理它在资源比Python线程便宜10倍。因此,我们节省了大量资源(内存、CPU),因为语言内置特性。...但是,当然有很多为Go构建库和框架,以及使用Go构建web应用程序,但是建议在不使用任何第三方库情况下构建web应用程序或API服务,因为在大多数情况下,它们并不比使用本地包更容易。

    31610

    NestJS、TypeORM 和 PostgreSQL 项目开发和数据库迁移完整示例(译)

    Node.js Server 项目越来越大,将数据和数据库整理规范是很难,所以从一开始就有一个开发和项目设置,对你开发项目的成功至关重要。...在这篇文章中,向你展示是如何设置大部分 Nest.js 项目的,我们将在一个简单 Node.js API 上工作,并使用 PostgreSQL 数据库作为数据存储,并围绕设置一些工具,使开发更容易上手...它是一个相当灵活框架,建立在 Express.js 基础,可以让你在短时间内制作出 Node.js 服务,因为集成了很多好功能(如完全类型化支持、依赖注入、模块管理和更多)。...项目和工具 为了更快地开始工作,Nest.js 附带了一个很好 CLI 工具,可以为我们创建项目模板。...要在本地实现数据持久性,我们现在需要一个数据库服务器和一个要连接数据库。一种方法是在本地机器设置一个 PostgreSQL 数据库服务器,这样做不是很好

    5.1K10

    NestJS、TypeORM 和 PostgreSQL 项目开发和数据库迁移完整示例(译)

    Node.js Server 项目越来越大,将数据和数据库整理规范是很难,所以从一开始就有一个开发和项目设置,对你开发项目的成功至关重要。...在这篇文章中,向你展示是如何设置大部分 Nest.js 项目的,我们将在一个简单 Node.js API 上工作,并使用 PostgreSQL 数据库作为数据存储,并围绕设置一些工具,使开发更容易上手...它是一个相当灵活框架,建立在 Express.js 基础,可以让你在短时间内制作出 Node.js 服务,因为集成了很多好功能(如完全类型化支持、依赖注入、模块管理和更多)。...项目和工具 为了更快地开始工作,Nest.js 附带了一个很好 CLI 工具,可以为我们创建项目模板。...要在本地实现数据持久性,我们现在需要一个数据库服务器和一个要连接数据库。一种方法是在本地机器设置一个 PostgreSQL 数据库服务器,这样做不是很好

    5.4K30

    NestJS、TypeORM 和 PostgreSQL 项目开发和数据库迁移完整示例(译)

    Node.js Server 项目越来越大,将数据和数据库整理规范是很难,所以从一开始就有一个开发和项目设置,对你开发项目的成功至关重要。...在这篇文章中,向你展示是如何设置大部分 Nest.js 项目的,我们将在一个简单 Node.js API 上工作,并使用 PostgreSQL 数据库作为数据存储,并围绕设置一些工具,使开发更容易上手...它是一个相当灵活框架,建立在 Express.js 基础,可以让你在短时间内制作出 Node.js 服务,因为集成了很多好功能(如完全类型化支持、依赖注入、模块管理和更多)。...项目和工具 为了更快地开始工作,Nest.js 附带了一个很好 CLI 工具,可以为我们创建项目模板。...要在本地实现数据持久性,我们现在需要一个数据库服务器和一个要连接数据库。一种方法是在本地机器设置一个 PostgreSQL 数据库服务器,这样做不是很好

    6.3K21

    Node.js关注点分离

    创建好 Node.js 项目架构 大多数时候,我们在大团队中工作,不同的人处理系统不同部分,如果事情没有得到妥当安排,就会变得混乱。...受疫情影响,越来越多团队采用了远程工作方式,拥有清晰和定义良好代码结构从未像现在这么重要。 从本质讲,项目结构是一个很重要主题,因为如何引导应用程序决定了整个项目生命周期整体开发体验。...Node.js 惊人之处在于,你可以随心所欲地构造代码,没有所谓“正确方法”。你可以选择在一个 app.js 文件中编写所有代码,也可以创建多个文件并将它们放在不同文件夹中。...例如,如果我们使用本地开发环境,那么 MongoDB URI 很可能以 localhost 开头,而在生产环境中可能是一个指向图集数据库链接。因此,我们需要谨慎处理这些差异。...因此,从技术讲,当服务器试图启动应用程序时,它会读取 app.js 文件并试图启动 server.js 文件中指定各种函数。

    5.9K40

    这两个设计决策,让 Kubernetes 变得可怕

    当我学习并使用试着去理解为什么长成这么一个样子,以及哪些设计决策和权衡导致长成了这个样子。...并不是自己已经得到了完整答案,这篇文章会试着把总结出来两个想法或范式落到纸面上,这是试图理解为什么使用 Kubernetes 有时会让人感到如此毛骨悚然总结出来经验。...另一种观点:在与我搭档 Kate 讨论这篇文章想出了另一个关于这个主题视角: 感觉是,许多用户认为 Kubernetes 本质是(或者可能希望它是)“一个 Heroku”,即作为部署应用程序平台...当运行良好,这实际大大简化了工作。 然而,有时系统不可能从状态 A 到达状态 B,即使状态 B 可以自行实现。或者也许这是可能需要停机时间才行。...或者虽然是可能,但却是一个罕见用例,因此控制器作者忘了实现。对于 Kubernetes 中核心内置原语,你可以很好地保证它们经过良好测试和实践检验,并且应该能够很好工作

    23530

    Node.js 与未来

    不得不说是,ES Module 肯定是花了很长时间,这是一个很好新功能,人们可以开始学习和使用,希望它会得到更多吸引力。...在 v14.x 中,这些国际化数据已经打包进了 Node.js 二进制文件,你可以得到正确结果,认为这非常有帮助。 诊断报告 当我们发现客户在生产中出现问题,诊断报告是非常有帮助。...我们引入中断控制器是因为这样我们就可以开始将它和一些 Node.js API 进行结合。你可以在文档中阅读更多关于信息。 ?...是直接终端用户,还是使用应用的人士,应用运维工程师,Node.js 应用工程师,应用程序开发者,库/包作者,核心维护者,还是有大量投资组织?...在我们 Node.js 项目中使用基础,我们开发了 CITGM,也就是 Canary In The Gold Mine,金矿中金丝雀。我们正在寻找帮助模块维护者方法,测试这些依赖模块。

    94931

    JVM并不是那么重量级

    当我Heroku上部署了一个生产应用时,第一次克服了对JVM“恐惧”。这款应用每天只需要完成一项任务。...生成了一堆PDF文件,然后将它们上传到iSign (现在已经不存在了)用于存储和共享。iSign本身就是一个经典Rails应用,托管在3个AMI。...这是令人羞愧,真正令人谦卑。在这个世界感觉自己像一个陌生人,已经参与了这么长时间。 回到JVM声明重。 你怎么衡量? 当你下载JVM,下载文件大小就是JDK大小吗?...对于Node和Ruby,你还需要在系统使用一个C编译器,光这个编译器就已经是数百兆字节。更糟糕是,生产环境中你可能还得需要一个编译器!...很好奇,因此研究了一下~/.m2文件夹,在Clojure开发9个月里,只积累了1010MB依赖关系。甚至还没有十亿字节。

    1.7K50

    2018年Web开发人员应该学习12个框架

    在本文中,分享了12个与Java开发,移动应用程序开发,Web开发和大数据相关有用框架。 1)Angular 2+ 这是另一个JavaScript框架,它在2018年要学习东西列表中。...传统,JavaScript被用作客户端脚本语言,它与HTML一起用于在客户端提供动态行为。它在Web浏览器运行,Node.js允许你在服务器端运行JavaScript。...Tye Node.js一个开源跨平台JavaScript运行时环境,用于执行JavaScript代码服务器端。在将它们发送到客户端之前,你可以使用Node.js在服务器端创建动态网页。...3)Spring Boot 已经使用Spring框架多年了,所以当我第一次介绍Spring Boot对相对缺乏配置感到非常惊讶。...如果你已经了解C语言之一并且正在寻找移动应用程序开发职业,那么强烈建议你在2018年学习Xamarin,以及完整Xamarin开发人员课程:iOS和Android!是一个很好课程开始。

    5.5K40

    一劳永逸地搞懂 JavaScript中‘this’

    ; console.log(this.variable); // “一个全局变量!” 在这里,当我们声明变量,它被附加到 window 对象。...因此,在全局上下文中使用this.variable 会给我们那个变量值。 在Node.js中: 如果你在Node.js环境中运行你代码,情况会有所不同。...在Node.js中,this 顶级值是一个空对象,不等同于 global。 console.log(this); // {} global.globalVar = “Node全局对象!”...你在一个网页,你最喜欢正在播放,有一个按钮在那里诱惑你点击。在你知道之前,JavaScript魔法就活了起来,事情开始发生。你有没有想过内部工作,使这些DOM元素跳舞隐藏木偶线?...这是我们,“对于一辆新车,将给定制造和模型分配给这个特定实例。” 旋转:原型方法 使用构造函数一个好处是能够将方法附加到它们原型

    12410

    挑选 npm 模块很费事?掌握这些技巧就能事半功倍!

    开发人员经常会提问或抱怨,比如: “开发易,选模块难…” “X 模块和 Y 模块区别在哪里,哪一个更好?”...建议你先找找解决方案,然后再决定是否使用 StrongLoop。 PM2: 你需要一个能够在服务崩溃重新启动服务,并能用来控制集群进程管理器。...认为它用起来没什么问题。如果你有问题 / 疑虑就请咨询你法律部门,因为不是律师。 forever: 你想要一个能在服务崩溃重启服务进程管理器可以选。...nodemon: 你想监视应用程序任何代码更改,并在本地开发自动重启服务器用它。 非常适合开发工作! Web Socket: Web Socket 这里单推 primus。...Nodemailer: 需要从 Node 中发送电子邮件使用Dotenv: 需要将.env 文件中环境变量加载到 process.env 使用

    1.5K21

    深入了解Webpack 5

    Webpack开发和生产构建 本质,有两种构建JavaScript应用程序模式:开发和生产。以前,您已使用开发模式在本地开发环境中开始使用Webpack Dev Server。...但是,为了在本地检查 dist / 文件夹是否具有在远程Web服务器运行应用程序所需一切,请使用本地Web服务器亲自进行尝试: npx http-server dist 应该输出一个URL,您可以在浏览器中访问...还要注意,您不一定需要id属性和div容器,但在上一教程中我们已使用它在执行一些JavaScript。...这很完美,但是给我们作为开发人员带来了一个陷阱。...总之,这不是一个很好开发人员体验,因为Webpack捆绑JavaScript文件查找错误变得更加困难。对于开发模式,这是正确,但对于生产模式,则更是如此。

    3.6K30

    编程是测试职业生涯关键

    自学了如何编码,并获得了作为自动化开发人员工作,你也可以。所有这一切只需要五个比较难步骤。 为什么要学习自动化开发? 传统,质量保证工程师角色一直是一个非编码角色。...你可能没有写过一本书,你应该知道如何阅读和写作"。 同意。当我在学校学习软件工程,一旦开始学习更多关于商业分析师角色、数据库开发和软件开发知识,测试能力就得到了提升。...当Ruby on Rails处于鼎盛时期开发者只要想创建一个简单网络应用就会使用它。但是在自动化领域,似乎没有那么多需求了。...Appium,用于移动应用Selenium WebDriver Protractor,一个基于Node.JS自动化工具,你可以用来帮助测试AngularJS应用程序。...每当我学到一些有价值东西,就会想出一些示例代码,然后尝试写一些代码演练,放在博客一开始很简单,以The Internet作为测试站点。

    34720

    Webpack 详解

    Webpack开发和生产构建 本质,有两种构建JavaScript应用程序模式:开发和生产。以前,您已使用开发模式在本地开发环境中开始使用Webpack Dev Server。...但是,为了在本地检查 dist / 文件夹是否具有在远程Web服务器运行应用程序所需一切,请使用本地Web服务器(https://links.jianshu.com/go?...还要注意,您不一定需要id属性和div容器,但在上一教程中我们已使用它在执行一些JavaScript。...这很完美,但是给我们作为开发人员带来了一个陷阱。...总之,这不是一个很好开发人员体验,因为Webpack捆绑JavaScript文件查找错误变得更加困难。对于开发模式,这是正确,但对于生产模式,则更是如此。

    6.2K20

    深入了解Webpack

    Webpack开发和生产构建 本质,有两种构建JavaScript应用程序模式:开发和生产。以前,您已使用开发模式在本地开发环境中开始使用Webpack Dev Server。...但是,为了在本地检查 dist / 文件夹是否具有在远程Web服务器运行应用程序所需一切,请使用本地Web服务器(https://links.jianshu.com/go?...还要注意,您不一定需要id属性和div容器,但在上一教程中我们已使用它在执行一些JavaScript。...这很完美,但是给我们作为开发人员带来了一个陷阱。...总之,这不是一个很好开发人员体验,因为Webpack捆绑JavaScript文件查找错误变得更加困难。对于开发模式,这是正确,但对于生产模式,则更是如此。

    6.9K75
    领券