[使用客户端和api部署到单独文件夹中的Heroku。在Heroku上失败

问题描述 投票:0回答:1

我正在开发在前端使用React的NodeJS应用。我的文件夹结构是:

root -
  - client (React App)
  - api (express server)

我的git文件夹位于根文件夹中,用于在整个开发过程中将整个项目推送到GitHub。但是我的仓库现在需要在api文件夹中初始化吗?还是有办法告诉Heroku该应用程序位于api文件夹中?

Heroku上的错误:

Build failed
There was an issue building your app. Please ensure your app is deployable to Heroku and try again.

 !     No default language could be detected for this app.
            HINT: This occurs when Heroku cannot detect the buildpack to use for this application automatically.
            See https://devcenter.heroku.com/articles/buildpacks
 !     Push failed

[另外,我觉得值得一提的是,我在Heroku GUI中设置了自动部署。因此,它正在尝试构建。我也有一个Proc文件和一个app.json文件。

app.json

{
    "name": "Craig Bauer | Portfolio",
    "description": "My web portfolio built as a MEAN stacjk app",
    "repository": "https://github.com/craigbauerwebdev/Portfolio",
    "logo": "",
    "keywoeds": ["node", "react", "portfolio"],
    "image": "heroku/nodejs"
},
{
    "buildpacks": [
        {
            "url": "https://github.com/heroku/heroku-buildpack-node.js"
        }
    ]
}

Procfile

web: node app.js

提前感谢

node.js heroku
1个回答
0
投票

我找到了这个解决方案,只想分享。我的整个生产应用程序现在位于api文件夹中。此命令对我来说效果很好。

git subtree push --prefix api heroku master

对于将来的项目,我将采用不同的结构,因此在每次部署之前都不必复制构建。

© www.soinside.com 2019 - 2024. All rights reserved.