Ubuntu 搭建Ghost1.0博客系统
最近想使用Ghost搭建自己的博客网站,网上搜索了下大多都是1.0之前版本搭建的文章,但是Ghost1.0版本已经可用好一段时间了,所以决定根据官方文档搭建Ghost1.0版本的博客系统。
下面开始一步步讲解在自己服务器上搭建、安装、配置Ghost的过程。
搭建准备
- Ubuntu 16.04服务器
- 至少 1GB 内存
- 域名认证成功
不要被这么多清单吓到,基本上只需要一个内存1GB的Ubuntu 16.04系统服务器、一个备案成功的域名就行了,其他的会在后面的步骤中安装完成。
服务器设置
安装Ghost之前先安装一些必须软件
登录
使用ssh方式登录你的服务器
ssh root@your_server_ip
创建一个新用户
当您首次登录到新服务器时,强烈建议您创建具有常规帐户权限的新用户,并进行一些基本的系统设置,比如我这里创建了名为yangqiangyu的用户
adduser yangqiangyu
回车之后会提示你输入几个问题,重要的问题比如密码你就输,不重要的你可以直接Enter。
运行以下命令将我们创建的新用户加入 sudo组,这样才能拥有超级用户的命令权限。
usermod -aG sudo yangqiangyu
接下来切换到我们新建的用户
su - yangqiangyu
更新包管理器和软件包
为了确保软件包管理器和安装的软件包是最新的,我们需要执行以下命令
更新包管理器
sudo apt-get update
更新已安装的软件包
sudo apt-get upgrade
安装Nginx
执行以下命令安装Nginx
sudo apt-get install nginx
打开HTTP / HTTPS的防火墙
我们需要确保防火墙允许HTTP和HTTPS,执行以下命令。
sudo ufw allow 'Nginx Full'
安装MySQL
Ghost推荐的数据库是Mysql,执行以下命令安装
sudo apt-get install mysql-server
安装Node.js
执行以下代码安装Node.js
curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash
sudo apt-get install -y nodejs
安装Ghost-CLI
sudo npm i -g ghost-cli
通过CLI安装Ghost
执行以下命令创建文件夹
sudo mkdir /var/www/ghost
执行以下命令让该文件夹归新用户所有
sudo chown yangqiangyu:yangqiangyu /var/www/ghost
进入文件目录
cd /var/www/ghost
执行以下命令安装Ghost
ghost install
Ghost安装说明
执行ghost install成功之后,接下来会出现一堆以下的问题。
Enter your blog Url:
这是您的博客将提供的URL,并且必须包含该协议。例如http://myblog.com for HTTP或https://myblog.com for HTTPS。
Enter your MySQL hostname:
在这种情况下我们直接输入localhost。
Enter your MySQL username:
输入您的MySQL用户名。默认是root或者如果您已经创建了一个自定义MySQL用户,可以使用这个。
Enter your MySQL password:
接下来输入你安装Mysql时的密码。
Ghost database name:
Ghost用来存储的数据库名,随便输入就可以了,比如我输入的是ghost。
Do you wish to set up a ghost MySQL user?
问我们是否同意单独创建一个Ghost用户只做Ghost数据库表的操作,输入y回车。
Do you wish to set up nginx?
直接yes,之后会为您的博客设置NGINX配置等等。
Do you wish to set up ssl?
如果你要让你们网站支持https,可以输入y回车,这样就会使用Ghost加密认证服务。否则你就要自己设置ssl。
Do you wish to set up automatic ssl renewal?
SSL证书只能持续90天,接受让Ghost-CLI将帮我们尝试认证更新。
Do you wish to set up systemd?
这里直接yes,否则安装会失败。
所有问题回答完毕之后,就可以通过域名访问你的Ghost博客啦!
Ubuntu 搭建Ghost1.0博客系统的更多相关文章
- 基于Ubuntu 搭建 WordPress 个人博客 - 开发者实验室 - 腾讯云
1.准备 LAMP 环境 安装 Apache2 在终端输入该命令 ,使用 apt-get 安装 Apache2: sudo apt-get install apache2 -y 安装好后,您可以通过访 ...
- Mac下搭建hexo3.0博客
Mac下搭建hexo3.0博客(文章同步自个人博客站点以及Github博客https://xingstarx.github.io/) window环境下搭建hexo博客 详细内容能够參考这一篇文章怎样 ...
- 讲解开源项目:5分钟搭建私人Java博客系统
本文适合刚学习完 Java 语言基础的人群,跟着本文可了解和运行 Tale 项目.示例均在 Windows 操作系统下演示 本文作者:HelloGitHub-秦人 HelloGitHub 推出的< ...
- 从零开始搭建solo个人博客系统
目录 1.博客系统的搭建流程 2.服务器选购 2.1阿里云学生主机 2.2普通云主机 3.域名购买与备案(可选) 3.1域名购买 3.2域名服务器备案 3.3域名服务器解析 4.solo安装 4.1 ...
- LIGHTX-CMS —— 基于 Node.js,Express.js 以及 SQLite 3 搭建的个人博客系统
概述 LIGHTX-CMS 是我基于 Node.js,Express.js 以及 SQLite 3 搭建的个人博客发布系统. 项目本身可以拿来部署个人博客网站,同时我认为其也适合用以新手学习 Node ...
- 基于ubuntu搭建 WordPress 个人博客
系统要求:Ubuntu 16.04.1 LTS 64 位操作系统 准备 LAMP 环境:(LAMP 是 Linux.Apache.MySQL 和 PHP 的缩写,是 Wordpress 系统依赖的基础 ...
- docker 搭建一个wordpress 博客系统(4)
安装lnmp ()下载镜像 [root@server ~]# docker pull mysql:latest #下载mysql镜像 [root@server ~]# docker pull rich ...
- 欢迎阅读daxnet的新博客:一个基于Microsoft Azure、ASP.NET Core和Docker的博客系统
2008年11月,我在博客园开通了个人帐号,并在博客园发表了自己的第一篇博客.当然,我写博客也不是从2008年才开始的,在更早时候,也在CSDN和系统分析员协会(之后名为"希赛网" ...
- 一个基于Microsoft Azure、ASP.NET Core和Docker的博客系统
2008年11月,我在博客园开通了个人帐号,并在博客园发表了自己的第一篇博客.当然,我写博客也不是从2008年才开始的,在更早时候,也在CSDN和系统分析员协会(之后名为“希赛网”)个人空间发布过一些 ...
随机推荐
- Elasticsearch 多字段搜索
查询很少是对一个字段做 match 查询,通常都是一个 query 查询多个字段,比如一个 doc 有 title.content.pagetag 等文本字段,要在这些字段查询含多个 term 的 q ...
- Miller_Rabin(米勒拉宾)素数测试算法
首先需要知道两个定理: 1: 费马小定理: 假如p是素数,且gcd(a,p)=1,那么 a(p-1)≡1(mod p). 2:二次探测定理:如果p是素数,x是小于p的正整数,且,那么要么x=1,要么x ...
- poj 2186 Popular Cows tarjan
Popular Cows Description Every cow's dream is to become the most popular cow in the herd. In a herd ...
- Java字节流实现文件夹的拷贝
import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io ...
- Flutter实战:手把手教你写Flutter Plugin
前言 如果你对移动端有所关注,那么你一定会听说过Flutter.得益于Google,Flutter一经推出便得受到了广泛关注.很多开发者跃跃欲试,国内部分大厂,诸如美团.闲鱼等团队已经开始了Flutt ...
- Flutter学习笔记(二)
*.assets 当引用图片的时候,需要在pubspec.yaml的文件中的flutter下添加assets,类似于下面的样子: image.png 这里需要注意的是文件里的assets只要一个缩进即 ...
- ListView事件的研究
1. ListView的OnItemClickListener不被触发的另外一种情况 如上图,在一个ItemView中,只有一个TextView位于最左侧,他的右侧是空白区域,没有任何控件,当点击右侧 ...
- 雷林鹏分享:C# 特性(Attribute)
C# 特性(Attribute) 特性(Attribute)是用于在运行时传递程序中各种元素(比如类.方法.结构.枚举.组件等)的行为信息的声明性标签.您可以通过使用特性向程序添加声明性信息.一个声明 ...
- Confluence 6 使用 LDAP 授权连接一个内部目录概述
你可以为你的 Confluence 连接 LDAP 服务器使用使用委托认证.这个意思是 Confluence 将会设置一个内部目录,这个目录仅被用来处理 LDAP 的授权. 这个设置将会为尝试登录系统 ...
- 『cs231n』计算机视觉基础
线性分类器损失函数明细: 『cs231n』线性分类器损失函数 最优化Optimiz部分代码: 1.随机搜索 bestloss = float('inf') # 无穷大 for num in range ...