天涯论坛

 找回密码
 立即注册
搜索
查看: 16|回复: 2

一键提交代码,实现自动化更新和安排个人博客!

[复制链接]

2963

主题

144

回帖

9913万

积分

论坛元老

Rank: 8Rank: 8

积分
99139411
发表于 2024-10-3 05:42:21 | 显示全部楼层 |阅读模式

大众好,我是小义,之前在介绍搭建个人博客网站的时候说过能够基于github安排博客,乃至是搭建图床,但终归是不安全,一不小心被攻击还有可能使自己账号被封。

因此后续就慢慢把网站搬到腾讯云服务器上去了,静态框架用vuepress代替了docsify,照片存放在了阿里的OSS中。

vuePress

相比起docsify,vuepress拥有以下优点:

1、生成的是预渲染的静态HTML,这针对搜索引擎优化(seo)非常友好。

2、准许在Markdown文件中直接运用Vue组件,在创建繁杂的文档和布局上灵活性更高。

感兴趣的朋友能够查阅vuepress官网:https://theme-hope.vuejs.press/zh/

宝塔面板

网站搬家之后问题随之而来,之前在github上经过pages是能够容易实现一键提交代码自动化安排的。

此刻就稍微麻烦了些,在网上查询了资料后发掘,只需要利用宝塔面板和git配置,一样能够此刻本地的vuepress项目git push提交代码后,自动更新安排博客网站,下面进入正题。

宝塔面板是一款强大的服务器管理软件,具备可视化操作界面,能够极重地简化服务器的配置与管理过程。大众选取服务器的时候能够直接选取腾讯云轻量级应用服务器中的宝塔linux面板这一应用模板,能够在服务器上经过命令自动安装。

在宝塔面板中新建网站时,Nginx就会做为默认的Web服务器(建站过程这儿太多介绍)。同期由于要拉取最新代码和打包,因此还需要在服务器上安装git、npm等工具。

WebHook

为实现自动化,在宝塔面板的软件商店搜索WebHook进行安装,它能够在代码仓库出现变动时自动安排更新服务。

点击设置,在WebHook中添加下面的代码安排脚本。

安排脚本#!/bin/bashecho ""#输出当前时间date --date=0 days ago "+%Y-%m-%d %H:%M:%S"echo "Start"#git分支名叫作branch="master"#git项目存放路径(重视开放文件权限)gitPath="/home/gitee/doc"#git仓库位置gitHttp="https://gitee.com/xxx.git"echo "Web站点路径:$gitPath"#判断项目路径是不是存在if [ -d "$gitPath" ]; thencd $gitPath#判断是不是存在.git目录if [ ! -d ".git" ]; thenecho "在该目录下克隆 git"sudo git clone $gitHttp

 gittemp

sudo mv gittemp/.git ./

sudo rm -rf gittemp

fiecho "拉取最新的项目文件"git remote add origin $gitHttpgit branch --set-upstream-to=origin/$branch $branchsudo git reset --hard origin/$branchsudo git pull $gitHttp

 2>&1

echo "设置目录权限"sudo chown -R www:www $gitPathsudo chmod -R 755 $gitPathecho "代码拉取结束"echo "安装依赖中......"

sudo cnpm install

if [ $? -eq 0 ]; then echo "等待打包中......"

 sudo cnpm run docs:build

fiif [ $? -eq 0 ]; then    echo "等待压缩中......" cd

/home/gitee/doc/src/.vuepress/

 sudo zip -r dist.zip dist/ && sudo unzip -o dist.zip -d /www/wwwroot/

 sudo cp -a /www/wwwroot/dist/. /www/wwwroot/cxy

 echo "成功了"fielse    echo "docs:build 执行失败"fiexitelseecho "该项目路径不存在"echo "新建项目目录"exitfi

其中/www/wwwroot/cxy即为建站时的静态资源存放路径。有时候脚本执行报错,最好是一步步进行验证,小义碰到的大大都是文件权限问题。

Gitee仓库配置

1.在服务器上生成 SSH 公共密钥,然后添加到gitee该项目的公钥管理中。

# 生成 SSH 密钥, 一路回车

ssh-keygen -t rsa

# 查看 SSH 公钥

cat ~/.ssh/id_rsa.pub

2.WebHook中添加宝塔WebHook的URL和密钥。

最后

完成以上所有配置,就能够容易实现一键提交代码自动安排了,赶紧动手试一试吧。





上一篇:浅谈代码审计入门实战:某博客系统最新版审计之旅
下一篇:Tensorflow 2.0历史最全资源中文版整理分享-教程、博客、代码和视频教程
回复

使用道具 举报

3059

主题

2万

回帖

9913万

积分

论坛元老

Rank: 8Rank: 8

积分
99139060
发表于 2024-11-2 03:34:39 | 显示全部楼层
外贸B2B平台有哪些?
回复

使用道具 举报

2944

主题

2万

回帖

9997万

积分

论坛元老

Rank: 8Rank: 8

积分
99979435
发表于 2024-11-2 06:08:58 | 显示全部楼层
你的言辞如同繁星闪烁,点亮了我心中的夜空。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

站点统计|Archiver|手机版|小黑屋|天涯论坛 ( 非经营性网站 )|网站地图

GMT+8, 2024-11-22 18:45 , Processed in 0.116076 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.