尝试将项目推送到 heroku - 在使用 heroku-cli 和连接到 Github 时遇到相同的错误。
错误日志:
-----> Building dependencies
Installing node modules (package.json + package-lock)
npm ERR! Cannot read property 'match' of undefined
Run Code Online (Sandbox Code Playgroud)
包.json
{
"name": "myApp",
"version": "0.1.0",
"private": true,
"dependencies": {
"react": "^16.7.0",
"react-dom": "^16.7.0",
"react-router-dom": "^4.3.1",
"react-scripts": "2.1.3",
"react-social-icons": "^4.1.0",
"react-spring": "^7.2.10"
},
...
"eslintConfig": {
"extends": "react-app"
},
"engines": {
"node": "10.13.0"
},
...
"devDependencies": {
"react": "^16.7.0"
}
}
Run Code Online (Sandbox Code Playgroud)
React 最初并不在 devDependencies 中 - 将其作为修复早期错误的尝试。
无论哪种方式,问题仍然存在。
当我将我的节点应用程序推送到heroku master时,我得到了这个日志
remote: Building source:
remote:
remote: -----> App not compatible with buildpack: https://codon-
buildpacks.s3.amazonaws.com/buildpacks/heroku/nodejs.tgz
remote: Node.js: package.json not found in application root
Run Code Online (Sandbox Code Playgroud)
我找不到为什么会发生这种情况的原因,因为我明确地在我的根目录中.我检查了使用git ls-files它出现了.
我的应用程序根可能与我的存储库根目录不一样吗?如何配置?
在 Windows 7 上全新安装 Heroku 后,我似乎无法从命令行进行身份验证。
运行命令:heroku login提示我输入我的凭据。这样做后,我收到一个错误:
heroku: Enter your login credentials
Email: my_email
Password: ************
Error: ENOENT: no such file or directory, open 'z:/_netrc'
Run Code Online (Sandbox Code Playgroud)
我正在使用 PowerShell,当我运行命令时cat z:/_netrc,出现此错误:
cat : Cannot find drive. A drive with the name 'z' does not exist.
Run Code Online (Sandbox Code Playgroud)
Z: 是一个网络驱动器,可以从文件资源管理器访问。
我的.netrc%HOME% 路径中已经有一个文件,但它不包含 heroku 登录凭据。
查看官方文档和 CLI 帮助,我找不到任何有用的东西来解决这个问题。如何登录我的 heroku 帐户?
> heroku version
heroku/7.16.6 win32-x64 node-v10.11.0
Run Code Online (Sandbox Code Playgroud) heroku我厌倦了每次在终端中运行命令时输入应用程序的名称:
heroku run rake db:migrate --app myapp
heroku run rake db:seed --app myapp
heroku run rake sth:else --app myapp
Run Code Online (Sandbox Code Playgroud)
这--app是非常多余和烦人的,我不知道在哪里可以选择为项目进行全局配置一次。
有许多 Heroku CLI Postgres 命令都返回相同的错误。例如:
$ heroku pg:bloat
psql: FATAL: no pg_hba.conf entry for host "...", user "...", database "...", SSL off
Run Code Online (Sandbox Code Playgroud)
这些命令中至少有一个在过去有效,但现在无效。
否则数据库似乎工作正常。我可以通过我的应用程序的接口访问它。
我没有看到在 Heroku Postgres 仪表板中切换 SSL 的方法。什么可能导致这种情况,我该如何解决?
我正在使用 Docker 和 docker-compose 开发一个 Node 应用程序,它们都有很棒的方法来从.env文件导入多个环境变量。
只是想知道是否有更新 Heroku 部署的环境变量而不是键入它们的快捷方式。
--env-file我注意到官方文档上没有选项: https ://devcenter.heroku.com/articles/config-vars
使用Heroku多重身份验证时,有什么方法可以在不打开浏览器的情况下通过控制台登录?
\nubuntu:~/environment $ heroku login -i\nheroku: Enter your login credentials\nEmail [hello@gmail.com]: \nPassword: ****************\n \xe2\x80\xba Error: Your account has MFA enabled; API requests using basic authentication with email and password are not supported. Please \n \xe2\x80\xba generate an authorization token for API access. \n \xe2\x80\xba\n \xe2\x80\xba Error ID: mfa_required\nRun Code Online (Sandbox Code Playgroud)\n 我有一个简单的 MERN 应用程序,在本地主机上运行良好,但是当我将其部署到 Heroku 时,我看到一个页面出现以下错误:
应用程序错误 应用程序中发生错误,无法提供您的页面。如果您是应用程序所有者,请检查您的日志以了解详细信息。您可以使用以下命令从 Heroku CLI 执行此操作
heroku logs --tail
控制台显示如下:Failed to load resource: the server responded with a status of 503 (Service Unavailable)
还附上了一张图片!
下面还给出了 Heroku 日志......
我是 MERN Dev 的新手,所以无法真正弄清楚问题到底是什么,Heroku 日志也没有多大帮助,请帮助我!
Warning: heroku update available from 7.59.0 to 7.59.2.
2022-01-05T13:28:24.783142+00:00 app[web.1]:
2022-01-05T13:28:25.124488+00:00 app[web.1]: /app/node_modules/whatwg-url/lib/encoding.js:2
2022-01-05T13:28:25.124505+00:00 app[web.1]: const utf8Encoder = new TextEncoder();
2022-01-05T13:28:25.124505+00:00 app[web.1]: ^
2022-01-05T13:28:25.124506+00:00 app[web.1]:
2022-01-05T13:28:25.124507+00:00 app[web.1]: ReferenceError: TextEncoder is not defined
2022-01-05T13:28:25.124507+00:00 app[web.1]: at Object.<anonymous> (/app/node_modules/whatwg-url/lib/encoding.js:2:21)
2022-01-05T13:28:25.124508+00:00 app[web.1]: at Module._compile (internal/modules/cjs/loader.js:776:30)
2022-01-05T13:28:25.124508+00:00 …Run Code Online (Sandbox Code Playgroud)几天前,我将 macOS 从 Catalina 更新到了 Monterey 12.2,并且无法再从命令行(使用 zsh)访问 Heroku。通常,heroku login从终端运行将在 Web 浏览器中打开 Heroku,登录后,我可以从 CLI 运行后续的 Heroku 命令。
这是我收到的输入和错误消息:
% heroku login
fatal error: runtime: bsdthread_register error
runtime stack:
runtime.throw(0x2d5619, 0x21)
/usr/local/go/src/runtime/panic.go:566 +0x95 fp=0x7ff7bfeff6d0 sp=0x7ff7bfeff6b0
runtime.goenvs()
/usr/local/go/src/runtime/os_darwin.go:88 +0xa0 fp=0x7ff7bfeff700 sp=0x7ff7bfeff6d0
runtime.schedinit()
/usr/local/go/src/runtime/proc.go:450 +0x9c fp=0x7ff7bfeff740 sp=0x7ff7bfeff700
runtime.rt0_go(0x7ff7bfeff778, 0x2, 0x7ff7bfeff778, 0x0, 0x1000, 0x2, 0x7ff7bfeff948, 0x7ff7bfeff978, 0x0, 0x7ff7bfeff97e, ...)
/usr/local/go/src/runtime/asm_amd64.s:145 +0x14f fp=0x7ff7bfeff748 sp=0x7ff7bfeff740
Run Code Online (Sandbox Code Playgroud)
第一次在线搜索这个错误时,我似乎需要更新 Go,所以我下载了最新版本,并将其添加到我的路径中,如下所示:
% mkdir $HOME/go
% cd $HOME/go
% mkdir bin pkg src
Run Code Online (Sandbox Code Playgroud)
并将以下行添加到我的 .zshrc 文件中:
export GOPATH=$HOME/go
PATH=$PATH:$GOPATH/bin …Run Code Online (Sandbox Code Playgroud) 我制作了这个项目并成功将其部署在 Heroku 上并且运行正常,两个月后我再次检查它并且运行正常,但是今天当我尝试打开网站链接时它显示应用程序错误。
日志如下:
2022-12-06T08:17:30.897980+00:00 heroku[router]: at=error code=H14 desc="No web processes running" method=GET path="/" host=limitless-shelf-83830.herokuapp.com request_id=d0c862ec-c21d-4e94-94e5-f6fed3d71af6 fwd="103.141.116.193" dyno= connect= service= status=503 bytes= protocol=https
2022-12-06T08:17:31.345120+00:00 heroku[router]: at=error code=H14 desc="No web processes running" method=GET path="/favicon.ico" host=limitless-shelf-83830.herokuapp.com request_id=a98c5850-0aa3-413d-94d9-4480a218ec3d fwd="103.141.116.193" dyno= connect= service= status=503 bytes= protocol=https
Run Code Online (Sandbox Code Playgroud)
这是我这边的问题还是heroku服务器宕机了?导致此错误的原因是什么以及可能的解决方案是什么?
我尝试跑步
heroku ps:scale web=1
Run Code Online (Sandbox Code Playgroud)
但这没有用。
编辑:我发现了这个问题,Heroku 从 2022 年 11 月 28 日起停止提供免费计划,我将其部署为免费服务器。
heroku-cli ×10
heroku ×9
node.js ×2
express ×1
mern ×1
postgres-10 ×1
postgresql ×1
reactjs ×1
windows ×1