上级 项目
type
status
date
slug
summary
password
子级 项目
tags
category
关于
NotionNext使用
NextJS + Notion API
实现的,支持多种部署方案的静态博客
,无需服务器、零门槛搭建网站,为Notion和所有创作者设计。(A static blog built with NextJS and Notion API, supporting multiple deployment options. No server required, zero threshold to set up a website. Designed for Notion and all creators.)
Notion是一个能让效率暴涨的生产力引擎,可以帮你书写文档、管理笔记,搭建知识库,甚至可以为你规划项目、时间管理、组织团队、提高生产力、还有当前最强大的AI技术加持。
安装要求:
- 需要一台VPS云服务器
- 一个域名(本文不涉及备案相关)
本文将提供三种搭建方式
VPS通过直装方式安装NotionNext
这里也是使用
NotionNext
作者推荐的nvm方式进行安装NodeJS环境
首先使用SSH工具连接上VPS(例如Xshell、Putty、MobaXterm、Termius
)1.安装Git
拉取nvm
源码
2.使用nvm
安装NodeJS
3.安装yarn
环境
4.部署NotionNext
当所有的脚本和库安装完成后就可以去
blog.config.js
文件里绑定自己的notion_page_id

修改保存后便可以开始
编译源码
了

博客会默认在3000端口开启,这个时候在浏览器输入http://域名:3000即可打开。
有时候3000端口可能无法访问,原因是服务器防火墙,以及云服务厂商的安全组限制。
后面反代域名,自行操作。

5.重要-项目后台运行
方式一:nohup运行
nohup
是linux系统的指令,用于在系统后台不挂断地运行命令。为了让你的网站始终在后台保持运行,可以用以下方式:1.按ctrl+c 退出上面正运行的yarn进程
2.改用nohup运行
若想要输出日志文件,可执行nohup yarn start > notionnext.log 2>&1 &;
3.执行结果
4.如何关闭进程
方式二:使用
screen
运行1.安装screen
2.启动新会话
3.查看所有会话
4.重新连接会话
在screen会话里,
cd NotionNext
正常执行yarn build、yarn start
即可。VPS通过宝塔方式安装NotionNext
服务器连接上的常规操作,先更新一下软件源与软件包
在更新的同时可以先把Notion的模板复制到自己的账户上,将pageid复制下来备用
1.安装宝塔以及需要的环境
这里使用的是Ubuntu的操作系统,所以只需要输入以下指令就可以耐心等待自己安装完成。
输入指令后等待自动安装完成

安装完成后没错误就应该跟下图差不多,有后台的登录地址与账号密码

首次进入宝塔后,会提示选择安装一套套件,因为NotionNext是Node.js项目,所以这里可以不选择下载,点叉后进入软件商店选择要用的软件
这里安装一个nginx,因为项目默认启动的是
3000
端口,可以利用nginx反代到80端口,访问时就不需要IP(或域名)加端口
在软件商店中搜索nodejs,选择下图Node.js版本管理器
进行安装
基本上只需要用到图片里这些软件就够用了

接下来打开
Node.js版本管理器
来安装我们需要的nodejs
版本和yarn
这里需要注意,新版本NotionNext所需要的版本是v18
及以上,默认的源下载速度较慢,先切换为其它源后选择更新版本列表
这里推荐使用华为源
(已测试过),自带yarn模块,如果使用其它的源有可能存在库较老,点名清华源没有yarn,淘宝源
编译模块
这里选择了稳定版
v18.20.5
进行安装演示,只要符合要求哪个版本都可以,可以根据自己的需求来进行选择
安装完成后把命令行版本选择成我们下载好的版本,这样可以保证连接终端时无需手动选择node版本
可以点击模块选项,查看
npm
和 yarn
是否自动安装上了
看到模块都正常显示在里面就可以了

如果不太放心是否安装成功,我们可以在首页中点击终端软件进入终端内输入指令查看
在这里我们可以输入以下这些命令查看安装的软件版本

如果出现
command not found
等字样,看一下命令行版本是否选择正确
至此所需要的环境就都安装好了2.编译源码
首先下好NotionNext的源码
在宝塔面板文件选项中上传NotionNext的压缩包

双击解压压缩包
可以将解压出来的文件夹修改为自己喜欢的名字

这里进入到目录下(这里改名字了)
在此目录下进入终端

在编译之前需要先下载一些依赖与库文件
这里直接输入
yarn
命令自动安装
出现黄色的warning
警告不用管,无需担心
完成后没有红字错误应该是这个样子

这个时候可以点击右上角的关闭返回到文件界面
双击
blog.config.js
文件,这里我们只需要修改pageid
即可
后半段的en
表示博客英文网页的pageid
,如果有英文网页的话在en
:后更换
这里我使用了一个新的模板,可以在实例文章中加一点文字,这样运行博客后可以直观的看到是不是自己的内容

粘贴
pageid
后保存退出即可

保存过后需要进行一次源码的编译,继续点击终端,输入
yarn build
进行编译
编译完成后没有报错应该就是这个样子

输入这个指令查看项目是否正常的运行
yarn start
运行时提示访问3000
端口并且没有报错的情况下说明项目正常运行
这个时候可以访问
IP+3000端口
来进行访问
这里可以看到实例文章中添加入的文字,说明项目是正常的运行
到此博客代码的修改以及编译就算是完成了
3.博客项目上线运行
如果直接使用
yarn start
这个命令启动项目的话,在退出终端时项目会自动停止。这里就需要让项目后台运行这里选择网站-Node项目

添加项目Node项目-根据以下图片设置自己的内容
项目目录-博客的网站目录
启动选项这里选择完目录默认即可
项目端口默认为3000
绑定域名这里要提前做好域名解析后添加,这里是内网的IP地址

保存后就可以看到已经启用了

点击设置进去会发现反向代理已经自动设置好了,无需再手动设置
在这里可以实时查看日志与保存

到此安装就结束了,可以访问设置好的域名查看博客是否搭建成功
可以看到没有加端口就可以直接访问到博客

VPS通过Docker方式安装NotionNext
这里为什么要用宝塔面板安装Docker?
因为Docker不同的操作系统安装的方式也不同,涉及到各种指令,切换源,乱七八糟之类的,所以使用宝塔来安装的话对新手来说更加的友好
但是这对机器的配置要求会比较高,毕竟要运行一个面板还要运行一个docker,并且在构建时会生成一些缓存文件,也要注意磁盘容量是否充足
1.安装Docker环境
这里宝塔的安装方式就略过了
进入宝塔的面板后在左侧就可以看到Docker选项-点击立即安装

安装方式这里选择默认就好了

像这样就是安装完成了

2.构建NotionNext的Docker镜像
这里还是先到文件这栏,将下载到的NotionNext网站源码上传上去后解压
这里改了名字,可以根据自己的想法更改

进入文件夹中照例修改一下
blog.config.js
文件
照例只要修改
pageid
就可以了,其它的变量应该在notion笔记中的配置中心添加就可以
保存后退出即可
保存退出之后在目录下点开终端,进行镜像构建

在终端下只需要输入下面这个指令等待构建即可

构建镜像的时间是根据网络环境和硬件配置来决定的,耐心等待,所以速度看着很快。
如果构建时出现带有yarn等字样的红字报错构建失败,原因是因为网络问题,这个时候重新输入构建命令继续构建,多尝试几次。
正常构建完后应该跟图片这样差不多,蓝色字体无报错。

这里返回宝塔面板Docker界面中-本地镜像查看有没有镜像
如果看到好多个不同的镜像,请检查磁盘容量是否不足导致构建失败

至此NotionNext的镜像就构建完成了
3.创建NotionNext站点
直接在构建好的镜像后方点击创建容器

这里聊一下部分的设置
1.容器名称:顾名思义设置自己好记的名称
2.本地端口可以修改为除80 8080 443以外的所有端口,后期上线可以安装nginx进行反代去端口和证书
3.容器端口:因为项目本身使用的就是3000端口,所以这里固定3000即可
4.对外暴露:在测试阶段可以将这个选项打开,那样就可以通过IP或域名
5.加本地端口号的方式 从外网访问,记得服务商处也要放行端口
6.这里是测试是否成功运行,所以打开此选项
7.关闭的话,因为机器本身的防火墙限制,只能机器自己访问自己,从外网是访问不到的,这个情况适合上线后隐藏掉本身的项目端口
在点击创建后来到容器选项卡中就可以看到运行状态

这个时候就可以访问机器IP地址+端口号查看是否搭建成功
这里IP和上文不同是因为重置了一下虚拟机配置,重新分配的IP,不用在意

可以来到容器管理界面-容器日志,在这里的日志也可以看到在正常的运行被访问

到此整个博客算是搭建成功了
4.隐藏端口号
相信不少朋友是要把博客上线的,上线免不了需要隐藏3000端口,免得被人访问,还要安装证书之类的
为了解决这些问题,这里安装一个Nginx就可以了
在宝塔面板左侧-软件商店-搜索Nginx下载即可

安装完成后,可以先到Docker中把原来的容器删除掉重新创建一个,这次要把对外暴露开关关闭

创建完后可以在管理-容器日志里查看是否正常启动

这个时候就可以去到网站选项中添加一个反代,用于隐藏端口
这里的参数设置好后确认
域名:做好域名解析,或直接的IP均可,如有域名的情况下,做好解析工作和备案工作
目标:这里是反代我们已有的项目,所以选择URL地址就可以了。后面的值填入
127.0.0.1:设置的本地端口号
,这里的127.0.0.1
是指向机器本身发送域名:默认生成即可,无需修改
备注:修改为自己好记的备注即可

确认后,就可以直接访问设置好的域名选项
这里已经不加端口便可以访问

再次访问3000端口就可以看到已经成功的隐藏了
可以再到容器日志里看看日志是否正常,这里就不演示了

其它方面,例如证书申请,可以直接在设置中申请,这点在宝塔上确实好评,点一点就可以申请到,还会自动续签,因为我这里使用的是内网的IP无法申请证书,所以没有办法演示,下面是申请的入口

到此基本上搭建过程就结束了
- 作者:团子
- 链接:https://ikun.su//article/notion-vps
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。
相关文章