在DigitalOcean搭建一个基于Ghost的Nodejs个人博客

在DigitalOcean搭建一个基于Ghost的Nodejs个人博客

之前看到onevcat开博客上开源了一个基于Ghost的主题,一看挺漂亮的,所以一时兴起自己也搞了一个,把过程记录下来,方便自己也方便别人~呵呵,大牛就别来笑话啦,纯粹新人~

去我的博客看具体过程吧

5 回复

在DigitalOcean搭建一个基于Ghost的Node.js个人博客

之前看到OneV’s Den的博客上开源了一个基于Ghost的主题,看起来非常漂亮。于是我也决定动手搭建一个基于Ghost的个人博客,并将整个过程记录下来,方便自己以后回顾,也希望能帮助到有需要的人。

准备工作

  1. 注册DigitalOcean账户:首先你需要有一个DigitalOcean账户。
  2. 购买服务器:选择一个合适的服务器配置(例如5美元/月的计划)。
  3. 创建SSH密钥对:用于安全地连接到你的服务器。

步骤一:安装必要的软件包

登录到你的DigitalOcean服务器:

ssh root@your_server_ip

安装Node.js和Nginx:

# 更新软件包列表
sudo apt-get update

# 安装Node.js
curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -
sudo apt-get install -y nodejs

# 安装Nginx
sudo apt-get install nginx

步骤二:下载并安装Ghost

# 创建Ghost安装目录
mkdir -p /var/www/ghost
cd /var/www/ghost

# 下载最新版本的Ghost
wget https://ghost.org/zip/ghost-latest.zip
unzip ghost-latest.zip -d ghost
rm ghost-latest.zip

# 更改目录权限
chown -R ghost:ghost /var/www/ghost/ghost

步骤三:配置Ghost

进入Ghost安装目录并启动Ghost:

cd /var/www/ghost/ghost
npm install --production

创建一个Ghost配置文件config.production.json

{
  "url": "https://yourdomain.com",
  "server": {
    "host": "127.0.0.1",
    "port": "2368"
  },
  "database": {
    "client": "sqlite3",
    "connection": {
      "filename": "/var/www/ghost/content/data/ghost.db"
    }
  },
  "paths": {
    "contentPath": "/var/www/ghost/content/"
  }
}

启动Ghost:

npm start --production

步骤四:配置Nginx反向代理

编辑Nginx配置文件:

nano /etc/nginx/sites-available/default

添加以下内容:

server {
    listen 80;
    server_name yourdomain.com;

    location / {
        proxy_pass http://127.0.0.1:2368;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

重启Nginx:

sudo systemctl restart nginx

步骤五:完成安装

现在你可以通过访问你的域名来查看你的Ghost博客了。根据提示完成初始设置,包括邮箱验证和管理员账号创建。

结语

这样,你就成功地在DigitalOcean上搭建了一个基于Ghost的Node.js个人博客。如果你有任何问题或需要进一步的帮助,可以参考Ghost的官方文档或社区支持。


希望这篇教程对你有所帮助!如果有任何疑问或建议,欢迎在评论区留言。


怎么感觉速度不行啊

###2个建议

  • 相册、博客中的图片可以使用图床,也可以使用七牛存储图片,放在VPS上访问速度太慢,耗资源!
  • disqus貌似有问题,建议换成符合国情的评论系统;

图放到图床上后,以后弄下来麻烦的。。。

要在DigitalOcean上搭建一个基于Ghost的Node.js个人博客,你可以按照以下步骤进行:

步骤1: 创建DigitalOcean Droplet

  1. 登录到你的DigitalOcean账户。
  2. 创建一个新的Droplet(推荐使用Ubuntu系统)。
  3. 确保选择足够的资源(至少1GB内存和25GB SSD存储)。

步骤2: 安装依赖

登录到你的服务器:

ssh root@your_server_ip

安装必要的软件包:

sudo apt-get update
sudo apt-get install nginx mysql-server

步骤3: 安装Node.js和Ghost

添加Node.js源并安装Node.js:

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

安装Ghost CLI:

sudo npm install -g ghost-cli

创建Ghost目录并下载Ghost核心文件:

cd /var/www
sudo mkdir ghost
sudo chown ghost:ghost ghost
sudo chmod 775 ghost
cd ghost
sudo ghost install

步骤4: 配置Nginx

编辑Nginx配置文件:

sudo nano /etc/nginx/sites-available/ghost

将以下内容粘贴到配置文件中:

server {
    listen 80;
    server_name your_domain_or_IP;

    location / {
        proxy_pass http://127.0.0.1:2368;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

启用该配置文件:

sudo ln -s /etc/nginx/sites-available/ghost /etc/nginx/sites-enabled/

重启Nginx:

sudo systemctl restart nginx

步骤5: 完成安装

访问你的域名或IP地址,按照指引完成Ghost的初始设置。登录后,可以安装你喜欢的主题,如OneV’s Den。

示例代码

以上步骤包含了一些命令行操作,但并没有具体的代码实现。如果你需要更多详细的代码示例或进一步的帮助,请告诉我。

回到顶部