惊!用宝塔面板 + Docker 搭建 NotionNext 博客竟如此简单!
前言
- 这里为什么要用宝塔面板安装Docker?
- 因为Docker不同的操作系统安装的方式也不同,涉及到各种指令,切换源,乱七八糟之类的,所以使用宝塔来安装的话对新手来说更加的友好
安装Docker环境
这里宝塔的安装方式就略过了,如果想要看宝塔的安装方式可以参考我另外的文章
- 进入宝塔的面板后在左侧就可以看到Docker选项-点击立即安装
- 安装方式这里选择默认就好了
- 安装成功
构建NotionNext的Docker镜像
下载NotionNext网站源码
网址:https://github.com/tangly1024/NotionNext/releases/tag/v4.8.1
- 将下载到的NotionNext网站源码上传上去后解压
- 解压后找到blog.config.js文件
- 双击打开文件,找到NOTION_PAGE_ID修改为你Notion的ID
- 其他的环境变量也可以在这里修改,不过也可以在Notion内修改
- 保存退出之后在目录下点开终端,进行镜像构建
sudo docker build -t notion .
- 在终端内输入这个命令,Notion是名称,可以自定义
- 码全部变蓝色就成功了
- 如果构建时出现带有yarn等字样的红字报错构建失败,原因是因为网络问题,这个时候重新输入构建命令继续构建,多尝试几次就好
- 返回宝塔面板Docker界面中-本地镜像查看有没有镜像
- 至此NotionNext的镜像就构建完成了
- 这个镜像可以运用到Serv00部署内
创建NotionNext站点
- 创建容器
- 容器名称:顾名思义设置自己好记的名称
- 本地端口可以修改为除80 8080 443以外的所有端口,后期上线可以安装nginx进行反代去端口和证书
- 容器端口:因为项目本身使用的就是3000端口,所以这里固定3000即可
- 对外暴露:在测试阶段可以将这个选项打开,那样就可以通过IP或域名加本地端口号的方式从外网访问
- 对外暴露的意思通常是将容器内部的服务端口映射到宿主机的端口上,这个操作可以让外部(例如通过公网 IP 或域名)访问容器内运行的服务
- 关闭的话,因为机器本身的防火墙限制,只能机器自己访问自己,从外网是访问不到的,这个情况适合上线后隐藏掉本身的项目端口
- 在点击创建后来到容器选项卡中就可以看到运行状态
- 由于之前是创建在虚拟机上的,所以必须开放端口才行
- 如果你是在云上设置,记得服务商处也要放行端口
- 放行端口后,就可以登录http://回环地址:3000就可以访问了,但需要保持着虚拟机的打开
- 登录方式:回环地址:3000:只可以在本机且内网登陆,后面反代后就可以取消端口登录
- 本地回环地址:只能在本机内登陆
- 宿主机的局域网 IP :3000:在同一局域网内,内网访问,手机连接WIFI访问
隐藏端口号
相信不少朋友是要把博客上线的,上线免不了需要隐藏3000端口,免得被人访问,还要安装证书之类的
- 如果是新建的面板,直接到网站点击下载Nginx
- 如果没找到也可以在宝塔面板左侧-软件商店-搜索Nginx下载即可
- 可以先到Docker中把原来的容器删除掉重新创建一个,这次要把对外暴露开关关闭
- 建完后可以在管理-容器日志里查看是否正常启动
- 网站 - 反向代理 - 添加反代,用于隐藏端口
- 域名:做好域名解析,或直接的IP均可,如有域名的情况下,做好解析工作和备案工作
- 目标:这里是反代我们已有的项目,所以选择URL地址就可以了。后面的值填入
127.0.0.1:设置的本地端口号
- 发送域名:默认生成即可,无需修改
- 备注:修改为自己好记的备注即可
- 确认后,就可以直接访问设置好的域名选项
- 这里已经不加端口便可以访问
结语
- 通过宝塔面板和Docker,搭建NotionNext个人博客变得异常简单
- 您无需深入了解Linux命令和服务器配置,只需按照上述步骤操作,即可快速拥有一个功能强大的个人博客
- NotionNext的简洁设计和强大功能,结合宝塔面板的易用性和Docker的灵活性,为您的博客搭建提供了完美的解决方案
参考资料
[1]
https://github.com/tangly1024/NotionNext/releases/tag/v4.8.1: https://github.com/tangly1024/NotionNext/releases/tag/v4.8.1