如何从命令行配置和维护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',选项:{服务:'',身份验证:{用户:'',通过:'' } } },
现在,您需要使用适当的值填写 service
、user
和 pass
字段。 对于 service
,使用 名称,因为它在此处引用 。
邮件:{传输:'SMTP',选项:{服务:' service_name ',身份验证:{用户:' SMTP_login_name ',通过:' SMTP_password '}}},
保存并关闭文件。
重新启动 Ghost 以实施您的更改:
service ghost restart
现在,如果您注销并单击“忘记密码”链接,则会从您刚刚配置的 SMTP 电子邮件发送一封电子邮件到您的帐户电子邮件。
结论
至此,您应该已经很好地掌握了如何为 Ghost 进行一些幕后配置和维护。 您只需完成其中一些步骤一次,而其他步骤(如备份)应定期运行。