专栏首页云计算教程系列如何在Ubuntu 16.04上安装Ghost CMS
原创

如何在Ubuntu 16.04上安装Ghost CMS

介绍

Ghost是一个开源博客平台,可以帮助您轻松创建具有专业外观的在线博客。

Ghost 1.0.0是Ghost内容管理系统(CMS)的第一个主要稳定版本。Ghost 1.0.0有一个全新的Markdown编辑器,刷新的用户界面,新的默认主题设计,改进的Ghost-CLI安装和更新过程等等。

在本教程中,您将使用NGINX,MySQL,Node.js,NPM,Ghost-CLI和腾讯云SSL证书在运行Ubuntu 16.04 LTS的腾讯云CVM服务器上设置,部署和保护Ghost 1.0.0博客。腾讯云SSL是一个新的证书颁发机构(CA),它提供了一种获取和安装免费TLS /SSL证书的简便方法,从而在Web服务器上启用加密的HTTPS。您可以在腾讯云Web页面轻松获取免费的SSL证书,无论您选择哪种Web服务器软件。 想要了解更多关于腾讯云SSL证书的内容,请前往腾讯云+社区学习更多知识。

注意 本教程是为非root用户编写的。需要提升权限的命令以sudo为前缀。 将本教程中的每个example.com替换为您网站的域名。

准备

  • 您应该拥有一个Ubuntu 16.04的服务器,并使用提升的sudo权限为Ghost创建了新用户。本教程中的示例使用ghostexample。没有服务器的同学可以在这里购买,不过我个人更推荐您使用免费的腾讯云开发者实验室进行试验,学会安装后再购买服务器
  • 确保您的域名具有有效的域名和正确配置的DNS记录。您可以使用腾讯云的云解析服务做快速设置。
  • 确保您的系统是最新的:
sudo apt update && sudo apt upgrade
  • 安装build-essential
sudo apt install build-essential

安装NGINX

NGINX将用作Ghost应用程序的反向代理:

sudo apt install nginx

安装MySQL

  • 下载并安装MySQL:
sudo apt install mysql-server

出现提示时,为root用户输入强密码。

  • 运行mysql_secure_installation脚本:
sudo mysql_secure_installation

安装Node.js和NPM

Ghost建立在Node.js上,遵循Node的长期支持(LTS)计划。Ghost仅支持Node.js的LTS版本

下载并安装Node.js:

curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
sudo apt install nodejs

安装Ghost-CLI

Ghost-CLI是一个命令行界面(CLI)工具,可以轻松安装和更新Ghost。它设置数据库,将NGINX配置为反向代理,使用腾讯云SSL证书 CA启用TLS / SSL安全性,自动更新SSL,并将Ghost初始化为systemd服务。

  • 安装Ghost-CLI:
sudo npm install -g ghost-cli@latest
  • 在安装或更新Ghost时解决系统任何潜在问题:
ghost doctor
  • 获取有关ghost的帮助:
ghost help

安装Ghost

使用Ghost-CLI工具安装Ghost 1.0.0。

  • 创建文档根目录:
sudo mkdir -p /var/www/ghost
  • 使用您创建的sudo权限将/var/www/ghost目录的所有权更改为非root用户。在这个例子中,我们使用ghostexample
sudo chown ghostexample:ghostexample /var/www/ghost
  • 切换到Ghost根目录:
cd /var/www/ghost
  • 确保目录为空以避免文件冲突:
ls -a
  • 在生产模式下安装Ghost:
ghost install
  • 根据提示回答每个问题。有关每个问题的更多信息,请访问Ghost文档
? Enter your blog URL: https://example.com
? Enter your MySQL hostname: localhost
? Enter your MySQL username: root
? Enter your MySQL password: areallysecurepassword
? Enter your Ghost database name: exampleGhost
? Do you wish to set up Nginx? yes
? Do you wish to set up SSL? NO
? Do you wish to set up "ghost" mysql user? yes
? Do you wish to set up Systemd? yes
? Do you want to start Ghost? yes
  • 安装完成后,运行ghost ls以查看正在运行的Ghost进程:
ghost ls

将来发布更新版本的Ghost时,从/var/www/ghost目录运行ghost update以更新到最新版本。

配置SSL证书

第一步、申请免费的SSL证书

申请入口

进入SSL证书管理控制台

单击【申请证书】

查看申请域名型证书型号,单击【确定】

填写申请

填写申请域名,例如qcloud.com,cloud.tencent.com,demo.test.qlcoud.com。

手动DNS验证方式

证书默认支持收到DNS验证,验证方法可查看详情

提交申请后验证身份

提交申请成功后弹窗提示如下,需要前往【证书详情页】获取CName记录添加解析:

获取CName记录如Tips中显示,需要尽快成功添加解析,方可通过CA机构审核:

下载我们在第一步中生成的密钥,我们将其命名为selfsigned.keyselfsigned.crt将这两个文件移动到/etc/ssl/private/,然后我们打开nginx配置文件,增加如下配置。

server {  
    listen 80;
    listen [::]:80 ssl ipv6only=on; 
    listen 443 ssl;
    listen [::]:443 ssl ipv6only=on;
    server_name example.com;
​
    ssl on;
    ssl_certificate /etc/ssl/private/selfsigned.crt;
    ssl_certificate_key /etc/ssl/private/selfsigned.key;
}

完成设置

要完成设置过程,请通过添加/ghost到博客URL或IP的末尾切换到Ghost配置页面。本例中,我们使用https://example.com/ghost

  • 在欢迎屏幕上,点击创建您的帐户
  • 输入您的电子邮件,创建用户,密码和博客标题:
  • 邀请其他成员加入您的团队。如果您希望跳过此步骤,请点击在页面底部的稍后再执行此操作,转到我的博客!
  • 切换Ghost管理区域以创建您的第一篇文章,更改您网站的主题或配置其他设置:

更多信息

有关此主题的其他信息,您可能需要参考以下资源。虽然提供这些是希望它们有用,但请注意,我们无法保证外部托管材料的准确性或及时性。

自建服务器难免会遇到问题,但是如果您在生产环境使用,我还是建议您直接使用云关系型数据库,云关系型数据库让您在云中轻松部署、管理和扩展的关系型数据库,提供安全可靠、伸缩灵活的按需云数据库服务。腾讯云关系型数据库提供 MySQL、SQL Server、MariaDB、PostgreSQL 数据库引擎,并针对数据库引擎的性能进行了优化。云关系型数据库是一种高度可用的托管服务,提供容灾、备份、恢复、监控、迁移等数据库运维全套解决方案,可将您从耗时的数据库管理任务中解放出来,让您有更多时间专注于您的应用和业务。


参考文献:《How to Install Ghost CMS on Ubuntu 16.04》

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 如何在CentOS 7上使用Skyline检测异常

    如果您使用监控系统(如Zabbix或Nagios),那么您就知道监控的工作原理。简而言之,它可以描述如下:监控系统接收各种指标(CPU /内存使用,网络利用率等...

    葡萄
  • 如何在Debian 9上使用Python 3设置Jupyter笔记本

    Jupyter Notebook为交互式计算提供了一个命令shell作为Web应用程序。该工具可以与多种语言一起使用,包括Python,Julia,R,Hask...

    葡萄
  • 如何在Ubuntu 14.04上安装Bacula Server

    Bacula是一种开源网络备份解决方案,允许您创建备份并执行计算机系统的数据恢复。它非常灵活和强大,这使得它在配置时稍微麻烦,适合在许多情况下进行备份。备份系统...

    葡萄
  • 初体验 Ghost : yet another WordPress?

    早就听说Ghost 的大名了,但一直以来却没有去折腾过。今天晚上特意花了些时间在到手的DigitalOcean 上部署了Ghost,过程算坎坷的,水文一下。 G...

    Jeff
  • 开源CMS Ghost 3.0发布!

    Ghost是一个免费的开源内容管理系统(CMS)。CMS是一种软件,它允许您构建一个主要专注于创建内容的网站,而不需要了解HTML和其他与web相关的技术。

    用户6543014
  • 2-STM32带你入坑系列(点亮一个灯--Keil)

    这一节用Kei来实现,需要安装MDK4.7这个软件,怎么安装,自己百度哈.都学习32的人了,不会连个软件都不会安装吧....还是那句话

    杨奉武
  • 《快学 Go 语言》第 14 课 —— 魔术变性指针

    本节我们要学习一些 Go 语言的魔法功能,通过内置的 unsafe 包提供的功能,直接操纵指定内存地址的内存。有了 unsafe 包,我们就可以洞悉 Go 语言...

    老钱
  • 深度学习“四大名著”发布!Python、TensorFlow、机器学习、深度学习四件套!

    这四本书着实很不错!我们都知道现在机器学习、深度学习的资料太多了,面对海量资源,往往陷入到“无从下手”的困惑出境。而且并非所有的书籍都是优质资源,浪费大量的时间...

    计算机视觉联盟
  • 相比美国人中国人更欢迎自动驾驶未来

    北京时间12月8日早间消息,福特汽车的一份最新报告显示,谈到自动驾驶汽车,中国人比美国人态度更为正面。 ? 事实上,与生活在美国、加拿大、澳大利亚、英国和德国等...

    企鹅号小编
  • 成员网研会:云原生世界的合规指南(视频+PDF)

    将所有遗留系统迁移到优雅高效的云原生环境是完美的。你对可见性很满意,对安全性覆盖和警报工作流很有信心。你的团队作为一个整体运作——你已经达到了安全和操作的极乐世...

    CNCF

扫码关注云+社区

领取腾讯云代金券