如何从命令行配置和维护Ghost

来自菜鸟教程
跳转至:导航、​搜索

介绍


Ghost 是一个令人兴奋的新博客平台,专注于回归基础。 它使您可以专注于内容和演示,而不会出现通常的臃肿和分心。

在之前的指南中,我们讨论了 如何通过一键安装 在 DigitalOcean 上部署 Ghost。 我们还介绍了如何管理内容如何更改主题和设置

在本指南中,我们将深入探讨配置并讨论如何从命令行管理应用程序的某些方面。

如何控制 Ghost 服务


Ghost 应用程序是在我们的 Droplet 上的守护程序上实现的。 这意味着我们可以使用 Ubuntu 的 service 命令轻松启动、停止和重新启动它。

我们可以像控制其他任何服务一样控制 Ghost 服务:

启动幽灵:

sudo service ghost start

停止幽灵:

sudo service ghost stop

重启幽灵:

sudo service ghost restart

有时,在我们对配置进行更改后,重新启动 nginx(我们的 Web 服务器)也可能会有所帮助:

sudo service nginx restart

您不必经常使用这些命令,但如果您对 Linux 环境不太熟悉,它们会很有帮助。

如何备份幽灵


备份 Ghost 是微不足道的,所以你应该经常这样做。

Ghost 将其大部分数据存储在一个名为 ghost.db 的数据库中。

如果你想直接复制这个,你可以这样做,但你应该先停止 Ghost 服务:

sudo service ghost stop

您可以通过在本地终端中键入以下内容将其复制到您自己的计算机:

scp root@ your_ghost_IP_address :/var/www/ghost/content/data/ghost.db 。 

这会将其复制到您当前的本地目录中。

要复制主题,请发出以下命令:

 ssh -n root@ your_ghost_IP_address 'tar zcvf - -C /var/www/ghost/content/themes .'  | 猫-> ghost_themes.tar.gz

这将创建一个名为 ghost_themes.tar.gz 的存档文件,其中包含当前本地目录中的所有主题。

要备份您的图像,您可以运行类似的命令,该命令将创建一个名为 ghost_images.tar.gz 的文件:

 ssh -n root@ your_ghost_IP_address 'tar zcvf - -C /var/www/ghost/content/images .'  | 猫-> ghost_images.tar.gz

下载数据后不要忘记重新启动 Ghost:

sudo service ghost start

也许更简单的方法是通过 Web 界面访问您网站的此页面:

域名/ghost/debug

您可以单击“导出”按钮下载您的博客内容和设置的副本:

如果需要重新部署,可以随时再次访问该页面,导入刚刚下载的数据文件。

如何升级幽灵


为了确保您自己的安全,保持您的 Ghost 安装处于最新状态非常重要。 您可以在这里找到定期更新的官方Ghost升级指南。

当新版本发布时,您可以从 Ghost 网站 获取。 您可能必须创建一个帐户或登录。

搜索最新版本的下载链接并通过右键单击或按住 Control 单击“立即下载”按钮并选择“复制链接地址”或“复制链接位置”来复制链接。

目前,最新版本的 URL 总是在这里,尽管将来可能会改变:

http://ghost.org/zip/ghost-latest.zip

以 root 身份登录到您的 Ghost droplet。 在升级之前,如上所述将数据库备份到您的家用计算机。

我们需要 build-essential 软件包来完成 Ghost 升级。 您可以通过键入以下命令将其安装在系统上:

sudo apt-get update
sudo apt-get install build-essential

我们还希望在升级文件之前停止 Ghost 服务,以便在文件被覆盖时没有进程正在修改文件:

service ghost stop

切换到 web 根目录:

cd /var/www/

输入 wget 后跟 Ghost 最新版本的 URL。 如果您复制了链接位置,则可以将其粘贴到此处:

wget url_to_ghost_download

在复制升级文件之前删除核心目录的当前内容:

rm -rf ghost/core

将文件解压缩到正确的位置以更新 Ghost 安装:

解压 -uo幽灵*.zip -d 幽灵

“-uo”选项提取较新版本的文件并在必要时创建新文件。 不要忘记它们,否则您可能会清除您的信息!

接下来,您必须将文件控制权交给 Ghost 进程。 您可以通过键入:

chown -R ghost:ghost ghost/*

我们将通过切换到我们的 ghost 目录并使用 npm 命令来获得新的依赖项:

cd /var/www/ghost
npm install --production

要实施您的更改,请重新启动 Ghost 服务:

service ghost start

如果遇到问题,最好的办法是从头开始重复该过程并检查命令输出中的错误。 大多数情况下,您将能够通过第二次运行来发现任何错误。

如何测试 Ghost 配置更改


Ghost 使用许多预配置的“环境”执行。 环境决定使用哪个数据库,响应哪个 URL,以及如何与后端服务器通信。

我们通常在“生产”环境中运行我们的 Ghost 实例。 在大多数情况下,这已正确配置为在面向公众的网站上为您的博客提供服务。

如果我们想尝试一些设置,我们可以通过创建一个新环境来安全地进行,然后在启动 Ghost 时指定这些环境。

环境在文档根目录的 config.js 文件中配置。 使用文本编辑器打开此文件:

nano /var/www/ghost/config.js

在里面,你会看到一些看起来像这样的代码:

var path = require('path'), 配置;
配置={发展:{。 . . . . . },
<span class="highlight">production</span>: {
    . . .
    . . .
},

<span class="highlight">otherEnvironments</span>: {
    . . .
    . . .
}

}

红色的每个部分标题都定义了一个环境。 如果我们想在新环境中测试更改,我们可以复制“生产”环境并在那里进行修改。

为此,我们将复制以下之间的所有内容:

production: {

以及匹配的右括号(在下一个“测试”环境开始之前):

},

在我们刚刚复制的生产块的正下方,我们可以粘贴块。

production: {
    . . .
    . . .
},
production: {
    . . .
    . . .
},

接下来,将第二个“production”更改为我们临时环境的名称。 我们将使用 temporary

production: {
    . . .
    . . .
},
temporary: {
    . . .
    . . .
},

现在,我们有一个新的块可以试验。 您可以在此处调整设置,而不必担心会弄乱您的常规站点。

完成后,保存并关闭文件。

在我们修改完“临时”块之后,我们需要告诉 Ghost 使用这个新块。 我们将通过调整启动 Ghost 的初始化脚本中的值来做到这一点。

通过键入以下命令打开 Ghost 初始化脚本:

nano /etc/init.d/ghost

找到指定生产环境的行:

export NODE_ENV=production

更改它以引用您的新“临时”环境:

export NODE_ENV=temporary

保存并关闭文件。

现在,我们可以重新启动 Ghost 以使用我们的新设置:

service ghost restart

根据您使用的更改,您可能还必须重新启动 nginx:

service nginx restart

彻底测试新配置后,应将更改从临时环境移至生产环境。

之后,重新打开初始化脚本并将环境规则改回“生产”:

nano /etc/init.d/ghost

export NODE_ENV=production

再次,重新启动 Ghost:

service ghost restart

如何为 Ghost 配置电子邮件


Ghost 不会在很多事情上使用电子邮件。 在撰写本文时,它仅使用它来发送密码重置电子邮件。 但是,如果没有此配置,您将看到一个烦人的横幅:

我们需要配置电子邮件以使其消失。

首先,我们可以选择提供者。 您可以使用多种不同的电子邮件服务。 在此处查看 与 Ghost 的电子邮件系统 一起使用的知名电子邮件服务列表。

建议您创建一个与博客关联的新电子邮件地址。 您需要为您的服务找到 SMTP 设置。 使用谷歌搜索:

您的电子邮件选择SMTP

某些服务的 SMTP 登录名和密码与其常规服务不同。 确保你找到你需要的信息。 例如,对于 Gmail 帐户,您可以使用正常的登录凭据。

打开 config.js 文件以输入您的邮件设置:

nano /var/www/ghost/config.js

您需要在“生产”部分中找到处理邮件的行:

. . . 生产:{网址:'  http://example.com  ',邮件:{},数据库:{。 . . 

在邮件行的左括号 { 和右括号 } 之间,需要输入以下信息:

邮件:{传输:'SMTP',选项:{服务:'',身份验证:{用户:'',通过:'' } } },

现在,您需要使用适当的值填写 serviceuserpass 字段。 对于 service,使用 名称,因为它在此处引用

邮件:{传输:'SMTP',选项:{服务:' service_name ',身份验证:{用户:' SMTP_login_name ',通过:' SMTP_password '}}},

保存并关闭文件。

重新启动 Ghost 以实施您的更改:

service ghost restart

现在,如果您注销并单击“忘记密码”链接,则会从您刚刚配置的 SMTP 电子邮件发送一封电子邮件到您的帐户电子邮件。

结论


至此,您应该已经很好地掌握了如何为 Ghost 进行一些幕后配置和维护。 您只需完成其中一些步骤一次,而其他步骤(如备份)应定期运行。

贾斯汀·艾林伍德