1. ghost安装
- 我这边使用docker安装ghost服务。具体命令如下
docker run
-d
--name='Ghost'
-e TZ="Asia/Shanghai"
-e HOST_CONTAINERNAME="Ghost"
-e 'database__client'='mysql'
-e 'database__connection__host'='${dbhost}'
-e 'database__connection__user'='${dbuser}'
-e 'database__connection__password'='${dbpassword}'
-e 'database__connection__database'='${dbdatabase}'
-e 'url'='${https://example.com}'
-e 'mail__transport'='SMTP'
-e 'NODE_ENV'='production'
-v '${/your-real-path}':'/var/lib/ghost/content':'rw'
-v '${/your-real-path/config.production.json}':'/var/lib/ghost/config.production.json':'rw'
-p 2368:2368
'ghost'
上述命令中,使用${}
进行标注的都代表需要你填写你实际的信息
不同于官方的教程文档,我将/var/lib/ghost/config.production.json
文件进行了映射,该文件是ghost的配置文件。可以更方便的进行后续配置调整
官方文档
2. 邮箱配置
邮箱配置中很重要的一点就是,要么参照官方文档,将邮箱全部参数使用docker参数进行设置。要么全部使用配置文件config.production.json
进行修改。
如果你的参数配置和配置文件中存在差异,ghost的服务在获取参数的时候会产生问题,导致邮箱服务一直不生效
-
mailGun配置
官方推荐使用mailGun进行邮箱配置。mailGun可以方便的进行邮件的批量发送等优点。mailGun的配置请直接看官方文档
官方文档 -
自定义smtp服务
我们可以使用mailGun以外的自定义smtp服务。只需要修改config.production.json
文件配置即可。
将mail内容的配置,替换为下面的格式
下面我以163邮箱为例
"mail": {
"transport": "SMTP",
"from": "xxx@163.com",
"options": {
"service": "163",
"host": "smtp.163.com",
"port": 465,
"secure": true,
"requireTLS": false,
"auth": {
"user": "xxxo@163.com",
"pass": "yourpassword"
}
}
}
- 注意修改ghost配置的发件人和配置文件中的发件人一致。我们进入ghost后台
将support email address
修改和配置文件中的 from 相同
3. 数据迁移
-
按照ghost官方文档,在wordpress中下载迁移插件
Ghost Export
,注意下载作者名为Ghost Foundation
的官方插件。 -
插件下载后,按照插件提示进行wordpress数据导出。你应该会得到一个
.zip
结尾的压缩包。 -
得到wordpress数据后,我们进入ghost后台
-
如果在导入时报错,可以考虑按照以下方案进行分步导入
-
- 将wordpress中导出的zip包解压,得到json和content。其中json是文章信息,content是图像文件
-
- 将zip文件中的json文件先行导入
-
- 将zip文件的content文件自行压缩,然后导入