怎么用 Github Actions 部署 Next.js 项目到服务器

怎么用 Github Actions 部署 Next.js 项目到服务器

💡 原文中文,约2800字,阅读约需7分钟。
📝

内容提要

分享使用Github Actions部署Next.js项目到Linux服务器的方法,配置服务器环境,安装Node.js、PM2和Nginx,配置Nginx反向代理到3000端口,生成SSL证书并配置Nginx使用证书,生成SSH密钥并配置Github Actions连接服务器拉取代码,配置Github Actions触发条件和部署脚本,自动部署项目到服务器上。

🎯

关键要点

  • 使用Github Actions部署Next.js项目到Linux服务器的方法。

  • 配置服务器环境,安装Node.js和PM2。

  • 使用Nginx反向代理到3000端口,配置Nginx。

  • 生成SSL证书并配置Nginx使用证书。

  • 生成SSH密钥并配置Github Actions连接服务器拉取代码。

  • 配置Github Actions触发条件和部署脚本。

  • 自动部署项目到服务器上。

延伸问答

如何在服务器上安装 Node.js 和 PM2?

可以使用 fnm 安装 Node.js,命令为 'fnm install 18',然后用 npm 安装 PM2,命令为 'npm install pm2 -g'。

如何配置 Nginx 反向代理到 Next.js 项目?

在 Nginx 配置文件中设置 'proxy_pass http://localhost:3000;',并创建软链接到 sites-enabled 文件夹。

如何生成 SSL 证书并配置 Nginx 使用?

使用 certbot 生成证书,命令为 'sudo certbot --nginx',并按照提示输入邮箱和选择域名。

如何配置 Github Actions 以自动部署项目?

在仓库中创建 .github/workflows 文件夹,并添加 .yml 文件,设置触发条件为 push 到 main 分支,使用 appleboy/ssh-action 连接服务器。

如何生成 SSH 密钥并配置 Github 连接?

生成 SSH 密钥后,将公钥添加到 Github 仓库的 Deploy keys 中,私钥放在服务器的 ~/.ssh/id_rsa 路径。

使用 PM2 启动项目后如何保存配置?

使用命令 'pm2 save' 来保存项目配置,以便在服务器重启后自动启动项目。

🏷️

标签

➡️

继续阅读