[英]How to build a next.js project and deploy it MANUALLY to Netlify?
According to the docs, Netlify supports next.js through the Essential Build Plugin and manual deployments through a CLI command , but how can I use the two together to build a next.js project in my own CI and deploy only the build output to Netlify?
插件頁面提到了“鏈接”,即它假設項目是通過 Git 存儲庫連接並由 netlify 構建的,而不是由我自己的 CI 在本地構建的。
OK,終於搞定了。 將其包裝起來以防其他人發現它有用:
netlify-cli
和@netlify/plugin-nextjs
netlify.toml
(確保具有publish
和functions
的路徑;服務器端渲染和 API 處理程序需要functions
;這兩個目錄將用於構建 output構建).netlify
(另一個“臨時”目錄)添加到.gitignore
以從您的存儲庫中排除構建 outputtarget: "experimental-serverless-trace"
添加到next.config.js
netlify login
到您的帳戶,運行netlify deploy --build
一次,選擇一個站點名稱NETLIFY_AUTH_TOKEN
(帶有來自 Netlify UI 的“個人訪問令牌”)和NETLIFY_SITE_ID
(在選擇名稱並成功完成第一次成功部署后顯示在 Netlify UI 中)以繞過以后登錄和選址netlify-cli
和@netlify/plugin-nextjs
yarn add -D @netlify/plugin-nextjs
yarn add -D @netlify/plugin-nextjs
netlify.toml
文件[[plugins]]
package = "@netlify/plugin-nextjs"
[build]
command = "yarn next build"
publish = ".next"
NETLIFY_AUTH_TOKEN
和NETLIFY_SITE_ID
環境變量在個人訪問令牌的 Netlify 用戶設置中手動生成訪問令牌。 這也可以通過命令行來完成。 在終端設置或持續集成 (CI) 工具的 UI 中將令牌保存為NETLIFY_AUTH_TOKEN
環境變量。
站點 ID 在 Netlify UI 中找到:Go 到站點設置 > 常規 > 站點詳細信息 > 站點信息,然后復制API ID的值,將 ID 分配給NETLIFY_SITE_ID
環境變量。
這也可以通過netlify link命令來完成。
可以通過以下命令部署到生產環境:
netlify deploy --build --prod
https://paulonteri.com/thoughts/deploy-nextjs-to-netlify-manually
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.