08月18, 2020

搭建firekylin

以前一直在用GithubIcoding搭建静态博客,2019年的时候Icoding调整了静态博客访问地址,又长又难记,于是弃之,后来便一直使用Github搭建静态博客,后面写的东西多了,发现加载很慢,也找了很多主题,最终找到一款主题M10c,该主题如作者所说"简单,轻便和高效",没有购买服务器和域名的朋友可以试试这个主题。最近决定买个云服务器和域名搭建博客,后来想着不能浪费资源啊,于是又部署了一套Jenkins自动部署服务,这样每次提交代码到自己Github上就自动发布到自己设置的二级域名上了,没事用来跑跑自己开发的项目还是不错的。在这里简单记录一下firekylin博客的搭建流程。

1、nodejs安装

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

2、设置淘宝镜像

npm install -g cnpm --registry=https://registry.npm.taobao.org

3、pm2安装

cnpm install pm2 -g

4、mysql安装

  1. 下载安装
    wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
    rpm -ivh mysql-community-release-el7-5.noarch.rpm
    yum install mysql-community-server -y
  2. 启动mysql
    service mysqld restart
  3. 设置mysql密码
    /usr/bin/mysqladmin -u root password 'mysqlpassword'

5、nginx安装

yum install nginx -y

6、firekylin安装

  1. firekylin下载
    wget https://firekylin.org/release/v1/latest.tar.gz
  2. 解压安装
    tar zvxf latest.tar.gz
    cd firekylin
    cnpm install
    cp pm2_default.json pm2.json
  3. firekylin配置
    {
    "apps": [{
      "name": "firekylin",
      "script": "www/production.js",
      "cwd": "/root/firekylin",
      "exec_mode": "fork",
      "max_memory_restart": "1G",
      "autorestart": true,
      "node_args": [],
      "args": [],
      "env": {    
          }
      }]
    }
  4. 启动firekylin
    pm2 startOrReload pm2.json
    Firekylin 已经启动成功,使用浏览器直接访问 http://ip地址:8360/ 即可看到 Firekylin 的配置界面。

7、nginx配置

  1. 备份配置文件

    cp nginx_default.conf nginx.conf
    vi nginx.conf
  2. 修改nginx.cong配置文件

    server {
     listen 80;
     server_name ip地址;
     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;
     }
    }
  3. 建立链接

    ln -s /root/firekylin/nginx.conf /etc/nginx/conf.d/firekylin.conf
  4. 启动nginx

    service nginx restart

    本地部署到这就完了,现在就可以通过80端口来访问博客了,而不是8360端口。

如果需要把部署到腾讯云或阿里云可以继续往下看,如果只是本地或局域网搭建,就到此为止了。


8、购买云服务器阿里云或腾讯云

我购买的是腾讯云1核2G新用户专享云服务器 标准型SA2,349元/3年,云服务购买页面,新用户还有优惠卷可以使用,优惠卷领取页面

9、腾讯云服务器安装firekylin

  1. 登录腾讯云控制台,左边实例,就可以看到自己的云服务器了,点击后面的登录,输入密码,如果不知道密码可以选择上方的重置密码,登录后按照上面的1-7步骤在云服务器搭建好firekylin博客。搭建好后还是不能通过云服务器公网ip直接访问哦,还需要配置防火墙。
  2. 系统防火墙配置:
     1. 启动:systemctl start firewalld
     2. 关闭:systemctl stop firewalld
     3. 查看状态:systemctl status firewalld
     4. 开机禁用:systemctl disable firewalld
     5. 开机启用:systemctl enable firewalld
     6. 添加端口命令:firewall-cmd --zone=public --add-port=80/tcp --permanent
     7. 重新载入:firewall-cmd --reload
  3. 腾讯云安全组配置: 打开腾讯云安全组,如果里面没有刚才搭建博客的云服务器,点新建添加刚才的云服务器。点击后面的修改规则,继续点添加规则,可以直接选择自定义里面的http80端口,点击完成,到此就可以在外网通过云服务器公网ip进行访问了。

3、购买域名并解析到云服务器

  1. 腾讯云域名购买,登录账号。
  2. 查询域名是否可以注册
  3. 选好域名,后加入购物车,然后点击立即购买,然后提交订单支付,这样就有自己的域名了。
  4. 打开域名管理页面,点击域名中的解析,解析到之前购买的云服务器,以后就可以通过域名来访问博客了,但是未备案只能暂时访问一会。
  5. 想要一直通过域名访问,就需要备案了。备案需要实名认证后3个工作日后才能备案。备案流程参考,目前可以通过手机端小程序进行备案,方便快捷。

4、申请免费SSL证书

打开SSL证书免费申请页面,登录账户后,点击免费申请SSL证书一般几个小时就申请下来了。上面的nginx配置需要将证书上传到nginx目录下哦。

注意:mysql数据的安装可能比较慢,可以参考这篇文章,离线安装比较快。其它细节不清楚地方可以在下面评论留言。

本文链接:https://www.yanxizhu.com/post/firekylin.html

-- EOF --

Comments