首页开发教程Ghost博客搭建教程(从零开始在Ubuntu上部署)

Ghost博客搭建教程(从零开始在Ubuntu上部署)

2025-03-05 950

Ghost是一款基于Node.js开发的开源博客平台,以其简洁的界面和高效的写作体验受到广泛欢迎。本文将手把手教大家如何在Ubuntu 22.04/20.04操作系统的ECS实例上搭建Ghost博客,适合初次使用阿里云建站的用户。

一、背景信息

Ghost支持两种运行模式:开发模式(development)和生产模式(production)。初次搭建建议使用开发模式,便于调试。随着业务增长,可以通过阿里云的弹性扩展服务(如ECS实例扩容、负载均衡、弹性伸缩等)轻松应对流量增长。

阿里云官网:点击访问

随着业务的扩展,您可以使用阿里云的产品平台,平滑地横向和纵向扩展服务容量,例如:

1、扩展单个ECS实例的CPU和内存规格,增强服务器的处理能力。

2、增加多台ECS实例,并利用阿里云负载均衡,在多个实例中进行负载的均衡分配。

3、利用阿里云弹性伸缩,根据业务量自动增加或减少ECS实例的数量。

4、利用阿里云对象存储OSS,存储静态网页和海量图片、视频等。

环境要求:

  • Nginx:1.9.5及以上版本
  • MySQL:8.0.x
  • Node.js:20.x(推荐)或18.x

二、准备工作

1、ECS实例配置

  • 已分配固定公网IP或绑定弹性公网IP(EIP);
  • 操作系统为Ubuntu 20.04或22.04;
  • 安全组已放行22、80、443和2368端口。

2、创建新用户(可选)

Ghost官方不建议使用root用户直接操作,因此建议创建一个新用户。

远程登录ECS实例,执行以下命令创建用户(以”test”为例):

adduser test
  • 在New password:和Retype new password:提示信息中,请按照提示输入并确认用户密码,密码默认不显示,输入完成后按Enter;
  • 在Enter the new value, or press ENTER for the default提示信息中,按Enter保持默认即可,您也可以根据实际情况填写用户相关信息;
  • 在Is the information correct? [Y/n]提示信息中,输入Y确认信息,并按Enter键,完成设置。

具体配置类似如下所示:

root@iZbp1g2d4dpki2mf63b****:~# adduser test
Adding user `test' ...
Adding new group `test' (1000) ...
Adding new user `test' (1000) with group `test' ...
Creating home directory `/home/test' ...
Copying files from `/etc/skel' ...
New password:
Retype new password:
passwd: password updated successfully
Changing the user information for test
Enter the new value, or press ENTER for the default
Full Name []:
Room Number []:
Work Phone []:
Home Phone []:
Other []:
Is the information correct? [Y/n] Y

将用户添加到”sudo”组:

usermod -a -G sudo test

切换到新用户:

su - test

三、安装Nginx

1、更新系统并安装Nginx:

sudo apt-get update
sudo apt-get upgrade -y
sudo apt-get install -y nginx

2、验证安装:

nginx -v

四、安装MySQL

1、安装MySQL:

sudo apt-get install -y mysql-server

2、验证安装:

mysql -V

3、配置MySQL:

登录MySQL:

sudo mysql

创建Ghost数据库:

CREATE DATABASE ghost_data;

设置root用户密码:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '密码';

刷新权限并退出:

FLUSH PRIVILEGES;
exit

五、安装Node.js

1、下载并安装Node.js 20.x:

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

2、验证安装:

node -v

回显信息类似如下所示:

test@iZbp1g2d4dpki2mf63b****:~$ node -v
v20.18.0

六、安装Ghost

1、(可选)更换npm镜像源以加速安装:

npm config set registry https://registry.npmmirror.com

2、安装Ghost-CLI工具:

sudo npm install ghost-cli@latest -g

当出现如下图所示时,表示已安装Ghost-CLI命令行工具:

Ghost博客搭建教程(从零开始在Ubuntu上部署)

3、创建Ghost安装目录并授权:

sudo mkdir -p /var/www/ghost
sudo chown test:test /var/www/ghost
sudo chmod 775 /var/www/ghost

4、安装Ghost:

cd /var/www/ghost
ghost install

按提示配置博客URL、MySQL连接信息等:

参数

说明

Enter your blog URL

请输入已解析的域名,例如:http://example.com。本示例中使用公网IP作为测试,输入http://47.98.XX.XX

Enter your MySQL hostname

请输入数据库连接地址。本示例中MySQL数据库与Ghost部署在同一台实例中,直接按Enter保持默认即可。

Enter your MySQL username

请输入数据库用户名,输入root后按Enter

Enter your MySQL password :

请输入数据库密码,输入数据库密码后按Enter

说明

数据库密码为步骤三中设置的密码。

Enter your database name

输入Ghost使用的数据库名称。输入ghost_data后按Enter

说明

数据库名称为步骤三中创建的数据库,本示例为ghost_data

Ghost博客搭建教程(从零开始在Ubuntu上部署)

完成后,记下Ghost的管理员访问地址(如”http://47.98.XX.XX/ghost”)。

七、测试访问

1、前台首页:浏览器访问”http://ECS公网IP”。

Ghost博客搭建教程(从零开始在Ubuntu上部署)

2、后台管理页面:访问”http://ECS公网IP/ghost”,按提示完成初始化配置。

Ghost博客搭建教程(从零开始在Ubuntu上部署)

八、域名配置(可选)

如果已有域名,可以将其解析到ECS实例;如果还未购买域名,可以在知名域名商处(Gname、Namecheap等)现注册一个。 如果网站部署在中国内地服务器,需先完成域名备案。

Gname官网:点击访问

Namecheap官网:点击访问

相关推荐:《WordPress网站建设教程(阿里云)

  • 广告合作

  • QQ群号:4114653

温馨提示:
1、本网站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。邮箱:2942802716#qq.com(#改为@)。 2、本站原创内容未经允许不得转裁,转载请注明出处“站长百科”和原文地址。

相关文章