category
tags
type
status
slug
date
summary
icon
password
前言
NotionNext可以轻松地使用Vercel免费托管,不过免费的流量和函数执行次数有限,如果你的网站访问量非常大,可以尝试在自己的云服务器、vps上部署。
可以选择裸机安装Nodejs环境启动项目,或者也可以用Docker容器化部署。
安装
准备一台任意操作系统的VPS云服务器,不同系统的安装步骤大同小异,以下我用 linux-centos-7主机为例
1. 安装Git
git是一个代码托管工具,你可以用它来下载github上的代码。
执行效果
2.安装nodejs
这里使用nvm进行安装,NVM(Node version manager)是nodejs的专用版本管理器,可以快速方便地安装并切换的nodejs的版本。
借助git下载nvm
若您的服务器无法访问github,可使用国内的gitee下载nvm源码:
git clone https://gitee.com/koalakit/nvm.git ~/.nvm && cd ~/.nvm && git checkout `git describe --abbrev=0 --tags`
使用nvm安装Nodejs
用
nvm list-remote
命令可查看所有可安装的nodejs版本
用 nvm ls
可查看所有已安装到本地的nodejs 版本3. 运行NotionNext
编译启动项目 ,根据网络情况可能耗时几分钟。
执行效果记录
项目默认将在 3000端口启动,访问你的服务器 http://ip:3000 即可打开网站。
有时候3000端口可能无法访问,原因是服务器防火墙,以及云服务厂商的安全组限制。
用服务器ip加端口号访问效果
自定义端口
假如3000端口被占用,或您想多开notionnext可用以下命令指定端口
4.后台运行
直接使用
yarn start
启动服务的话,一旦你关闭ssh终端或登出服务器,这个进程也会随之关闭。为了让你的网站始终在后台保持运行,可以用以下方式:- 按
ctrl+c
退出上面正运行的yarn进程
- 改用nohup运行
若想要输出日志文件,可执行
nohup yarn start > notionnext.log 2>&1 &
;执行结果
- 如何关闭进程
执行效果
其中 4952 就是要删除的进程号
自定义修改
1.修改配置
- 用环境变量修改
NOTION_PAGE_ID
等诸多配置支持用环境变量配置。- 另外您可以在项目根目录的
.env.local
文件中配置您的环境变量 - 其他支持环境变量的配置可参考blog.config.js 文件
用环境变量的好处是,不需要修改代码,不用重新打包编译。直接重启服务即可。
删除环境变量可用以下命令:
unset NOTION_PAGE_ID
2.修改代码
- 如果修改blog.config.js或其他代码文件,需要重新执行
yarn build
才可 生效,
- 重新编译后需要先关闭旧进程,再用
yarn start
重启服务 。
Nginx反向代理
- 为了隐藏你的3000端口号,用一个nginx就可以,如果你有宝塔面板之类的运维工具可以很方便地一键配置。
- 小白安装nginx
安装成功访问服务器地址 效果:
- 反向代理配置参考
修改相关配置文件
/etc/nginx/conf.d/default.conf
如果访问出错可能是SELinux设置不允许nginx的转发 ,执行
setsebool -P httpd_can_network_connect on
即可修复。- 作者:NotionNext
- 链接:https://tangly1024.com/deploy-notion-next-on-vps
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。
相关文章