群晖上搭建Ghost博客
每次自己都没想起来的时候,运营商、航空公司、银行、券商却从不曾忘记,虽然只是短信,也让我感受到了你们的真诚,让我们携手共进,共创辉煌!😁😁😁
本文是应网友
luffy
的要求重新折腾的,原文主框架完成于2021
年4
月,采用了SQLite
作为数据库,本次应要求改为了MySQL
,发布前对大部分图片进行了重新截取;
什么是 Ghost ?
Ghost
是一款个人博客系统,采用Node.js
编写,同时支持MariaDB
、SQLite
和PostgreSQL
数据库。前后台简洁,占用资源少,支持Markdown
,是一个现代化的,开源的博客发布平台。
关于数据库
老苏首先尝试了使用系统自带的 MariaDB
,但 MariaDB 不是 Ghost 官方支持的数据库 ,在安装过程中遇到了各种数据库错误,似乎是 Knex
和 MariaDB
的兼容问题。
从 Ghost 5.0
开始,官方建议使用 MySQL8
,所以接下来老苏采用了 MySQL
容器,但似乎 MySQL5.7
也可以正常工作。
下面的安装,图形化安装方式和
docker cli
安装方式继续保留了之前采用的SQLite
,docker-compose
命令行方式则重新采用了MySQL
安装
在群晖上以 Docker 方式安装。
在注册表中搜索 ghost
,选择第一个 ghost
,版本选择 latest
。
卷
在 docker
文件夹中,创建一个新文件夹 ghost
,并在其中建一个子文件夹 data
文件夹 | 装载路径 | 说明 |
---|---|---|
docker/ghost/data |
/var/lib/ghost/content |
存放设置 |
端口
直接用了默认的端口 2368
本地端口 | 容器端口 |
---|---|
2368 |
2368 |
环境
因为采用了
SQLite
,所以不需要设置database
相关的参数
可变 | 值 |
---|---|
database__client |
数据库类型 |
database__connection__host |
数据库主机IP |
database__connection__port |
数据库端口 |
database__connection__user |
数据库用户 |
database__connection__password |
数据库访问密码 |
database__connection__database |
数据库名 |
NODE_ENV |
默认为 production ,必须修改为 development |
url |
url 地址 |
- 这个
url
会影响到主界面的菜单地址,不设置的时候,默认主菜单地址会是http://localhost:2368
;- 老苏只是在局域网用,所以设的是局域网
IP
;- 如果在公网使用,请设置为公网
IP
或者域名;- 必须设置为
development
,否则容器日志会显示"Unknown database error"
错误,导致不可访问
命令行安装
如果你熟悉命令行,可能用 docker cli
更快捷
1 | # 新建文件夹 ghost 和 子目录 |
也可以用 docker-compose
安装,将下面的内容保存为 docker-compose.yml
文件
1 | version: '3.1' |
然后执行下面的命令
1 | # 新建文件夹 ghost 和 子目录 |
运行
在浏览器中输入 http://群晖IP:2368
,就能看到首界面了
上面是老版本的,下面是现在新版本的,相比之下,现在的版本界面似乎更简洁
创建用户
在浏览器中输入 http://群晖IP:2368/ghost
首先要创建账号
进入主界面
发布帖子
接下来你可以发第一个帖子
发布完成后回到首页的效果
后台管理
在浏览器中输入 http://群晖IP:2368/ghost
,如果之前登陆过,会看到整个后台管理的 Dashboard
界面
可以做管理帖子、管理人员、装修站点等操作。
参考文档
TryGhost/Ghost: 👻 The #1 headless Node.js CMS for professional publishing
地址:https://github.com/TryGhost/GhostGhost: Turn your audience into a business
地址:https://ghost.org/Ghost Docs
地址:https://ghost.org/docs/install/docker/