场景如下:我准备好了NextJs应用,我有ExpressJs服务器准备好了,我有postgreSQL (pgAdmin)准备好了。
我可以还是应该?
部署在Vercel旁边,从GoDaddy获得一个域(例如)并将其链接到项目。将express和database同时部署到heroku。
我不知道我能否在Vercel上把它们都画出来。
是的,你可以用Vercel做你需要的东西。检查这个例子(express, mysql)的代码,适应它为您的需要。
所以,要部署
- 用ExpressJs NextJs和postgreSQL设置你的项目。(ofc使用github repo的下一步)。你可以直接使用
git clone
库的express示例,将其修改为gitpush
到你的github账户。 - 在
.env
文件夹中声明的所有环境变量!非常重要!,检查.env
文件被git (.gitignore
文件)忽略。这个检查非常重要,因为你永远不会在git中暴露。env文件和连接字符串) - 一旦本地项目工作,您执行步骤4
- 你设置了你的垂直环境-链接github仓库,设置你需要的垂直设置。(例如,您可以直接租用域名并将其设置为生产环境) 之后,您正在设置vercel的环境变量,具有相同的变量名称和值(例如,你的DB连接字符串,但不是你的base_url),你部署你的项目与vercel。
- 每次git项目推动,vercel将重新部署你的在线项目和更新所有页面。真是太棒了。
我的建议是:
- 您可以根据您的需求(您提到的)创建非常简单的项目试着部署它。万一出错,可以谷歌一下,不会的所以很难。一旦一个简单的项目工作了,你就开始开发它。
- 主要使用NextJS钩子和代码(不是react),阅读文档。例如,不是使用
useEffect
(react),而是使用useSWR
(由vercel和nextjs团队创建的react库)钩子来获取数据,因此您将开发得更快,更"干净"。 如果可能的话,尽量使用Typescript(但JS也很棒)不要着急,尽量避免react项目中的纯react代码(CTRL+C CTRL+V)。 - "fight"从一开始就错误,检查控制台警告。
- 如果你想有一些视频教程,你可以检查这个(但它是js而不是ts。)
- 如果您的项目将来会使用多语言,请在开始时设置所有环境并进行测试。在这种情况下,还为将来的翻译设置i18n库 最困难和最重要的部分是设置,在开始之前测试所有的库"real"编码。
我相信你会喜欢的!
注:对于pgsql和express,您需要构建API路由,