+86 13541016684Mon. - Fri. 10:00-22:00

AWS EC2+RDS 的 ghost 博客系统的安装和配置

AWS EC2+RDS 的 ghost 博客系统的安装和配置

AWS EC2+RDS 的 ghost 博客系统的安装和配置

ghost 是一个极其轻量级的blog系统,它可以需要相对比Wordpres更少的系统资源,free tier的套餐应该就能够很好的支持该系统。

ghost_logo_big

本文主要按安装配置过程,描述ghost的整个打建过程,并提供参考配置文件和参数。

开启Ec2虚拟机,选择默认AMI镜像,选择你需要的规格,free tier那个档次一定可以的。网站内存稳定在350MB,我开了一个2GB的RI实例,可以说在目前真的是浪费。RDS 数据库实例开通,mysql最新版,最低规格即可,实例名blog。调整安全组策略,保证ec2虚拟机可以http/ssh,保证ec2可以连接数据库的 端口。

安装系统依赖的包:
sudo yum -y install unzip wget nodejs npm nginx mysql –enablerepo=epel
sudo chkconfig nginx on

安装nodejs的守护服务forever,它可以在nodejs服务器崩溃之后再次唤醒它。它可以管理nodejs服务器的起停
sudo yum npm install forever -g

测试ec2连接rds数据库
mysql -udbadmin -pXXXXXXXXXXX -h ghost-db.cnyqveiljf1f.ap-southeast-1.rds.amazonaws.com -P3306

下载和安装ghost,建立一个目录 /srv/www/, 下载并解压最新版 ghost即可
sudo curl -L https://ghost.org/zip/ghost-latest.zip -o ghost.zip
sudo unzip -uo ghost.zip -d ghost

修改ghost配置文件,复制一份修改即可
cp config.example.js config.js

修改production这一段,如下:

production: {
url: ‘http://awsgood.com’,
mail: {},
database: {
client: ‘mysql’,
connection: {
host : ‘ghost-db.cnyqveiljf1f.ap-southeast-1.rds.amazonaws.com’,
user : ‘dbadmin’,
password: ‘XXXXXXXXXXX’,
database: ‘blog’,
charset: ‘utf8’
},
debug: false
},

server: {
host: ‘127.0.0.1’,
port: ‘2368’
}
},

用nginx绑定域名并提供http 80 的访问,创建配置文件/etc/nginx/conf.d/ghostblog.conf,并参考如下内容:
sudo touch /etc/nginx/conf.d/ghostblog.conf

server {
listen 80;
server_name awsgood.com;

location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $http_host;
proxy_pass http://127.0.0.1:2368;
}
}

启动nodejs服务器
sudo NODE_ENV=production forever start /srv/www/ghost/index.js

查看nodejs服务器状态
sudo forever list

停止nodejs服务器(修改theme或者安装theme都需要重其nodejs)
sudo forever stopall

重新启动ngix服务器
sudo service nginx restart

查看nginx服务器状态
sudo service nginx status

如果还没有域名的话,可以先使用EIP访问并且开发站点,之后在修改为正常域名访问的情况,在上面url 和 server_name 两个参数后面放eip,网址安装成功之后用ip可以正常访问,如果顺利的话,熟悉yum和vi的使用的人,完成以上配置和运行工作,快速的可以在30分钟 内完成。

使用firefoix或者chrom的朋友用浏览器就可以测试一下awsgood.com和本站的网络速度差异。惊奇的发现:

  • 本站:美国vps+七牛CDN+DNSPod,所有网页基本上在2妙以上
  • awsgood.com : 新加坡AZ EC2主机+DNSPod,网页速度都在200ms左右,几乎是10倍的速度提高

参考文章:
http://support.ghost.org/installing-ghost-linux/
http://www.ghostchina.com/install-ghost-on-ali-ecs-first-step-install-node-js/