一键部署博客脚本

该图片由gamagapix在Pixabay上发布

前言

最近项目开发完成了,接下来就是迭代了,空闲时间比较充足了,开始来搞自己的博客了。
这里先说一下自己博客的情况:我使用jekyll搭建的博客,至于怎么安装jekyll这里就不具体描述了,因为自己安装过四五次了,但是每次安装遇到的问题都不一样,每次安装都要搜很多教程才能安装完,需要安装的还是自己去谷歌或百度吧。

正文

部署流程

先来说说部署博客的流程吧:

  1. 手动杀死博客进程
  2. 进入博客目录
  3. 更新代码
  4. 登录仓库
  5. 执行启动博客的命令
  6. 启动完成

问题

  1. 每次更新代码需要登录
  2. 手动输入命令比较多
  3. 博客启动命令长,容易忘记

脚本

每次更新都要拉取

解决 办法就是使用ssh更新,现在本地生成密匙,在把密匙复制到仓库中,然后在拉取代码;具体的流程这里不细说,网上很多关于ssh的完整的教程。

完整流程

  1. 进入目录
1
2
3

cd /usr/local/bin

  1. 创建
1
2
3
4
5

vi myblog

vim myblog

  1. 写入

i 键,开始写入,将下边的脚本写入 最好不要复制,直接手敲,复制的可能格式不对导致脚本运行出错

  1. 完成 写完后按esc键,再输入:wq ,然后回车键 ,写入完成。

  2. 完整脚本

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23

#!/bin/bash

#进入项目目录
cd /usr/local/myblog/myblog

# 更新代码
git  pull

# 获取博客进程ID
PID=$(ps -ef | grep "jekyll" | grep -v grep | awk '{ print $2 }')

if [ -z "$PID" ]
then
    echo Application is already stopped
else
    echo kill $PID
    kill -9  $PID
fi

# 后台启动jekyll命令
bundle exec jekyll server --detach

注意:

  1. 如果在Windows系统上写完然后再上传Linux,脚本会有很大的概率报错,因为格式的原因;所以建议直接在Linux上创建文件并写入命令;
  2. 我是直接将命令放入的/usr/local/bin目录下的
  3. 命令写完后记住给脚本设置权限

总结

第一次写脚本,不懂的东西还有很多,需要学习的也还有很多;

坚持原创技术分享,您的支持将鼓励我继续创作!