Netlify:如何部署嵌套在文件夹中的站点?

Netlify: How do you deploy sites that are nested in a folder?

我有一个存储库,它在两个单独的文件夹中包含后端和前端 (create-react-app)。对于构建命令,我有类似 cd frontend && npm run build 的内容,对于发布目录,我有类似 frontend/build 的内容,但这不起作用。

免责声明:我为 Netlify 工作。

如果您要在新的笔记本电脑上克隆项目的新副本(例如,项目中没有安装节点模块),除了安装节点和 npm 之外什么都没有在那里,你会如何建造它?想象一下 netlify 的构建过程。所以你至少缺少一个 "npm install" 步骤:)

还有什么遗漏的吗,比如全局安装的 npm 包?需要在 package.json 中指定它们,以便 Netlify 的构建网络知道为您获取它们。 Ruby宝石?最好在你的回购中有一个 Gemfile

Netlify 会尝试自动为您 npm install(和 bundle install),假设您存储库的根目录中有一个 package.json(我猜您的在 frontend/ ?) 或者如果您设置 "base" 参数,以便我们在基本目录中开始构建。这对您来说可能是一个很好的模式,将 "base" 设置为 frontend,然后将您的发布目录设置为 build.

您可以在 netlify.toml 中指定基本参数,如下所示:

[build] base = "frontend"

请注意 netlify.toml 必须 位于存储库的根目录中。

有关 Netlify 如何构建的更多详细信息,请查看以下文章:

如果经过一些阅读和试验后,您仍然无法弄明白,ping the helpdesk

最上面的答案是正确的^。对于任何想要简单地更改基本目录(假设只有一个 npm install/start)的人,您需要更改基本目录,您可以在构建设置中找到它。只需转到:site-settings -> build & deploy - 你会在我指向的图片中看到它。希望这可以帮助需要这个的人。 see here