快速搭建Ghost博客
Link Share :https://ztever.com/how-to-install-ghost/
- via RSS
过去两年总有朋友问我,我的博客是如何搭建的,我一直不知道该如何回答。今天我终于决定要回答这个问题了,主要原因是 Ghost 在发布 1.0 版本之后,安装变得异常简单。这主要得益于Ghost-CLI,它可以实现快速安装 Ghost,并自动配置 MySQL、Nginx 和 SSL,大大简化了流程。
最近,我安装了最新版本的 Ghost,在官方文档的帮助下,大约 2 小时搞定。后来为了写这篇文章,我重新操作了 1 次,花了大约半小时。
准备
- 租VPS服务器,我使用的是 vultr;
- 购买域名,我使用的是阿里云;
- 掌握基础命令行,SSH登陆服务器推荐使用 Putty;
- (可选)FTP登陆服务器推荐使用 FileZilla;
- (可选)文本编辑推荐使用 Brackets
参考文档
- Initial Server Setup with Ubuntu 16.04
- How to install Ghost on your production server
- ghost install - get a Ghost install ready for production use
- Automatically enable HTTPS on your website with EFF's Certbot
开启新服务器
在 vultr 新建一个服务器,按照Ghost 的要求,Server Type 选择 Ubuntu 16.04,Server Size 选择 1G内存或以上,如下图:
新服务器建好之后,可以得到该服务器的IP和root账号的密码:
域名解析
登陆域名服务商网站,添加两个解析都指向新服务器的IP,如下图:
SSH登陆服务器
打开 Putty,在 Host Name 里面填入服务器的IP,如下图:
点击Open,输入用户名root和密码,登陆成功后,如下图:
基本操作
接下来就都是命令行操作了,更新系统软件:
sudo apt-get update
sudo apt-get upgrade
开启防火墙:
sudo ufw allow OpenSSH
sudo ufw enable
添加新用户
Ghost 官方文档的要求使用非root账号安装,因此新建一个用户:
adduser [user]
[user]表示新用户名,例如: adduser yang
,要求设置密码。
给新用户sudo权限:
usermod -aG sudo [user]
并切换到新用户:
su - [user]
安装NGINX
sudo apt-get install nginx
sudo ufw allow 'Nginx Full'
安装MySQL
sudo apt-get install mysql-server
要求设置MySQL中root账号的密码,设置完成并记下密码,后面要用。
安装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
安装Ghost
建一个新文件夹:
sudo mkdir -p /var/www/ghost
确保当前用户拥有该文件夹:
sudo chown [user]:[user] /var/www/ghost
前往文件夹:
cd /var/www/ghost
安装Ghost:
ghost install
安装过程中要填写下列信息:
参照上图填写即可,域名改成自己的,密码是刚才安装MySQL时设置的root账号的密码。接下来还有一些配置,都是自动完成:
- Do you wish to set up nginx? Y
- Do you wish to set up ssl? Y (还需要提供邮箱)
- Do you wish to set up a ghost MySQL user? N
- Do you wish to set up systemd? Y
- Do you want to start Ghost? Y
管理博客
打开浏览器,在地址栏输入
域名/ghost
根据向导设置账号,管理博客。
作者暂无likerid, 赞赏暂由本网站代持,当作者有likerid后会全部转账给作者(我们会尽力而为)。Tips: Until now, everytime you want to store your article, we will help you store it in Filecoin network. In the future, you can store it in Filecoin network using your own filecoin.
Support author:
Author's Filecoin address:
Or you can use Likecoin to support author: