系统要求: CentOS 7.2 64 位操作系统

安装 Node.js

使用 yum 命令安装 Node.js

curl --silent --location https://rpm.nodesource.com/setup_8.x | sudo bash -
yum -y install nodejs

使用 NPM 安装 PM2

通过 NPM 安装进程管理模块 PM2。它是 Node.js 的一个进程管理模块,之后我们会使用它来管理我们的个人网站进程

npm install pm2 -g

安装 MySQL

安装过程需要持续大概 15-20min 左右,请耐心等待。

wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
rpm -ivh mysql-community-release-el7-.noarch.rpm
yum install mysql-community-server -y

启动 MySQL 服务:

service mysqld restart

设置 MySQL 账户 root 密码(下面命令中的密码是教程为您自动生成的,为了方便实验的进行,不建议使用其它密码。如果设置其它密码,请把密码记住,在后续的步骤会使用到):

/usr/bin/mysqladmin -u root password root'

安装 Nginx

在 CentOS 上,可直接使用yum来安装 Nginx(如果是 Debian/Ubuntu 则使用 apt-get 安装即可):

yum install nginx -y

安装并配置 Firekylin

安装 Firekylin

在服务器上下载安装包

wget https://firekylin.org/release/latest.tar.gz

解压安装包

tar zvxf latest.tar.gz

安装程序依赖

cd firekylin
npm install

复制项目下的 pm2_default.json 文件生成新文件 pm2.json

cp pm2_default.json pm2.json

修改 pm2.json 文件中的 cwd 配置值为项目的当前路径 /root/firekylin

 {
"apps": [{
"name": "firekylin",
"script": "www/production.js",
"cwd": "/root/firekylin",
"exec_mode": "fork",
"max_memory_restart": "1G",
"autorestart": true,
"node_args": [],
"args": [],
"env": { }
}]
}

然后通过以下命令启动项目

pm2 startOrReload pm2.json

Firekylin 已经启动成功,使用浏览器直接访问 http://118.89.65.22:8360/ 即可看到 Firekylin 的配置界面。

通过访问 http://118.89.65.22:8360/ 配置信息,配置过程输入参数如截图所示,其中数据库信息中的帐号字段设置为 root密码字段设置为 root数据库名字段设置为 firekylin主机字段设置为 127.0.0.1,其他字段使用默认值;后台管理帐号中的帐号字段使用默认值 admin密码字段设置为 root:

配置完成后可以通过后台管理帐号设置的帐号密码登录博客管理后台,其值分别为 admin 和 Password4Admin,截图如下所示:

配置 Nginx

下面我们就配置 Nginx 使用域名访问我们的网站了。

复制项目下的 nginx_default.conf 为 nginx.conf

cp nginx_default.conf nginx.conf

修改 nginx.conf 文件

 server {
listen 80;
server_name www.yourdomain.com; #将 www.yourdomain.com 替换为之前注册并解析的域名
root /root/firekylin;
set $node_port 8360; index index.js index.html index.htm; location ^~ /.well-known/acme-challenge/ {
alias /root/firekylin/ssl/challenges/;
try_files $uri = 404;
} location / {
proxy_http_version 1.1;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_pass http://127.0.0.1:$node_port$request_uri;
proxy_redirect off;
} location = /development.js {
deny all;
}
location = /testing.js {
deny all;
} location = /production.js {
deny all;
}
}

将 nginx.conf 文件软链到 nginx 配置目录下:

ln -s /root/firekylin/nginx.conf /etc/nginx/conf.d/firekylin.conf

重启 Nginx

service nginx restart

大功告成!

恭喜,您的 Firekylin 已经部署完成,尽情折腾吧:
博客访问地址:http://jikexianfeng.xyz
博客后台地址:http://jikexianfeng.xyz/admin

基于Centos搭建 Firekylin 个人网站的更多相关文章

  1. 基于CentOS搭建Nginx 静态网站

    系统要求: CentOS 7.2 64 位操作系统 一. 安装 Nginx(在 CentOS 上,可直接使用 yum 来安装 Nginx) yum install nginx -y 安装完成后,使用 ...

  2. 基于 CentOS 搭建 WordPress 个人博客

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 腾讯云提供了开发者实验室帮助用户搭建 WordPress 个人博客,教程内容如下,用户可以点击开发者实验室快速上机完成实验. 准备 LNMP ...

  3. 基于centos搭建微信小程序服务,配置及数据库等

    基于centos搭建小程序, ps:请提前20天准备将域名备案,申请ssl证书 实验上机地址:https://cloud.tencent.com/developer/labs/lab/10004 准备 ...

  4. 基于CentOS搭建基于 ZIPKIN 的数据追踪系统

    系统要求:CentOS 7.2 64 位操作系统 配置 Java 环境 安装 JDK Zipkin 使用 Java8 -openjdk* -y 安装完成后,查看是否安装成功: java -versio ...

  5. 基于Centos搭建Jenkins 环境搭建

    系统要求: CentOS 7.2 64 位操作系统 安装 Jenkins Jenkins 简介 Jenkins 是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提 ...

  6. 20个基于 WordPress 搭建的精美网站

    WordPress 无处不在,小到人博客,大到广受欢迎的各类特色网站,你都能发现 WordPress 的影子,因为它是创建和维护一个网站最容易使用的平台. 另外,网络上有很多资源来创建你的网站,你基本 ...

  7. 基于centos搭建nginx+uwsgi运行django环境

    环境: CentOS 7 nginx/1.9.12 Python 2.7.5 一:安装依赖包5 yum install zlib-devel bzip2-devel pcre-devel openss ...

  8. 基于Centos搭建 Discuz 论坛

    系统要求:CentOS 6.8 64 位操作系统 搭建 Discuz 论坛 准备 LAMP 环境 LAMP 是 Linux.Apache.MySQL 和 PHP 的缩写,是 Discuz 论坛系统依赖 ...

  9. 基于Centos搭建Django 环境搭建

    CentOS 7.2 64 位操作系统 安装 Django 先安装 PIP,再通过 PIP 安装 Django 安装 PIP cd /data; mkdir tmp; cd tmp; wget htt ...

随机推荐

  1. 详解如何进行第三方App接入微信登录

    微信登录接入 微信登录遵循协议Aouth2.0中的授权码模式 我们来看一下Aouth2.0中的授权码模式是怎么定义的: 授权码模式(authorization code)是功能最完整.流程最严密的授权 ...

  2. maven创建父子关系的聚合项目

    我最近使用eclipse的mavean插件创建父子关系的聚合项目,如果创建子工程直接在父工程我相信大家都会创建,但是子工程在父工程中的其中一个文件夹里面,我们创建子工程是直接存在父工程下面的,当我们想 ...

  3. [转] JavaScript:彻底理解同步、异步和事件循环(Event Loop)

    一. 单线程 我们常说“JavaScript是单线程的”. 所谓单线程,是指在JS引擎中负责解释和执行JavaScript代码的线程只有一个.不妨叫它主线程. 但是实际上还存在其他的线程.例如:处理A ...

  4. AngularJS表格神器“ui-grid”的应用

    HTML:  (代码仅用于解释得更清楚,并未完全展示) <!doctype html> <html ng-app="app"> <head> & ...

  5. python tkinter-按钮.标签.文本框、输入框

    按钮 无功能按钮 Button的text属性显示按钮上的文本 tkinter.Button(form, text='hello button').pack() 无论怎么变幻窗体大小,永远都在窗体的最上 ...

  6. HDU 1503【LCS】(字符串合并输出)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1503 题目大意: 给两个字符串,组成一个长度尽可能小的字符串,它包含上述两个字符串,且原字符串中的字符 ...

  7. linux学习之使用fdisk命令进行磁盘分区(八)

    linux下使用fdisk命令进行磁盘分区 目录 分区类型 分区方法表示 文件系统 fdisk命令分区过程 分区类型 主分区:总共最多只能分四个 扩展分区:只能有一个,也算作主分区的一种,也就是说主分 ...

  8. 虚拟机(VMware Workstation)的使用方法(转)

    虚拟机(VMware Workstation)的使用方法:http://www.aboutyun.com/thread-6273-1-1.html

  9. CentOS下bond网卡聚合与网桥结合

    需求:服务器配置bond多网卡聚合,然后KVM需要使用到网桥,那么需要做到网桥绑定到bond网卡上. 实现核心: 1.bond配置参考:https://www.cnblogs.com/EasonJim ...

  10. SpringMVC加载配置Properties文件的几种方式

    最近开发的项目使用了SpringMVC的框架,用下来感觉SpringMVC的代码实现的非常优雅,功能也非常强大, 网上介绍Controller参数绑定.URL映射的文章都很多了,写这篇博客主要总结一下 ...