为基于 Docker 搭建的 Ghost 配置邮件服务

最近想配置一个 Ghost 的多账户,在点完邀请链接之后没有任何效果。遂猜想是不是因为需要配置发件服务器的原因,查了一下果然是需要单独配置才能发送邀请邮件。于是便开始折腾。

首先,我的 Ghost 是基于 Docker 搭建的,而且是用 HyperApp 搭建的,所以可指定的自定义配置就比较少。我们需要先获取到 Ghost 的配置文件。

它存在于 Docker 容器内,我们需要先拷贝出来

拷贝 Docker 容器内的文件可以用这样的命令:

docker cp CONTAINER:FILEPATH LOCALFILEPATH

对于我的 Ghost,我执行的是:

docker cp ghost-0210ed:/var/lib/ghost/config.production.json config.json

然后用 vim 对 config.json 进行编辑(以 QQ 邮箱的配置为例):

"mail": {  
    "transport":"SMTP",
    "from":"name<mail address>",
    "options": {
        "host": "smtp.qq.com",
        "secureConnection": true,
        "port": 465,
        "auth": {
            "user": "your mail address",
            "pass":"******" //QQ 邮箱的动态密码
        }
    }
  },

然后把修改完成的配置文件再放回 Docker 容器中

docker cp LOCALFILEPATH CONTAINER:FILEPATH

对于我的 Ghost,执行的是:

cp ghost-0210ed:config.json /var/lib/ghost/config.production.json

替换完配置文件,重新启动 Ghost,即可成功发送邀请邮件。

ghost-team