当前位置: 首页 > news >正文

Gitee搭建个人博客(Beautiful Jekyll)

目录

    • 一、引言
    • 二、博客模板选型 - Jekyll
    • 三、安装Jekyll环境
      • 3.1 安装Ruby
      • 3.2 安装Jekyll
      • 3.3 下载Jekyll主题
    • 四、搭建我的Gitee博客
      • 4.1 选择主题 - Beautiful Jekyll
      • 4.2 创建Gitee账号同名代码库
      • 4.3 写博客
      • 4.4 开通Gitee Pages服务
    • 五、对Beautifu Jekyll的相关优化

一、引言

之前用Github Pages搭建过博客,但是在国内访问Github时断时续…
后续关注到国内Gitee也提供Pages功能,所以决定将之前Github上的博客搬到Gitee Pages。
本文主要记录了如何使用Jekyll及Gitee Pages搭建个人博客。
起初在Github上搭建博客时,出于简单直接拉取的其他小伙伴已经成形的博客网站,也没有深究,能用就行😓。
之前的Github个人博客:https://marqueeluo.github.io/
在这里插入图片描述
所以这次再迁移博客,决定选个自己喜欢的样式,故做了本篇文章做了记录。
搭建博客纯属个人兴趣,平时写技术上的东西还是在CSDN上写,只不过觉着有个自己的博客这件事很炫酷,
使用Pages这种方式可以直接借助Github或Gitee的服务器和网络,白嫖…
除了搭建博客,还可以类似搭建开源库的文档、个人简历等,
还可以在博客里集成类似在线PPT的功能,用作演示,
也可以在博客上写些自己喜欢的东西…

我最新搭建的Gitee Pages博客:https://luoex.gitee.io/
在这里插入图片描述

二、博客模板选型 - Jekyll

目前 Gitee Pages 支持 Jekyll、Hugo、Hexo编译静态资源。
Jekyll、Hugo、Hexo 是简单的博客形态的静态站点生产机器。它有一个模版目录,其中包含原始文本格式的文档,通过 Markdown 以及 Liquid 转化成一个完整的可发布的静态网站,你可以发布在任何你喜爱的服务器上。Jekyll、Hugo、Hexo 也可以运行在 Gitee Pages 上,也就是说,你可以使用 Gitee 的服务来搭建你的仓库页面、博客或者网站,而且是完全免费的。
Jekyll(Ruby生态)使用文档:https://www.jekyll.com.cn/docs/home/
Hugo(GO生态) 使用文档:https://gohugo.io/documentation/
Hexo(NodeJs生态) 使用文档:https://hexo.io/docs/
感兴趣的小伙伴可自行去探究。

由于之前一直使用的Jekyll,便一直沿用了,虽然Jekyll本地开发运行时需要安装Ruby开发环境,但即使不安装也可以通过直接发布到Github或Gitee Pages进行查看,还是挺方便的。直接写Markdown文件,无需关心样式,直接提交到GitHub或Gitee上就可以生成博客了,这对于一个纯后端开发人员真的挺香的。

三、安装Jekyll环境

关于Jekyll Windows的安装说明可参见:https://jekyllrb.com/docs/installation/windows/

注:
如不需本地开发运行查看效果,可直接略过此章节,
如果不安装Jekyll环境,亦可直接发布到Gitee Pages查看效果,
我基本都是直接发布到Gitee Pages实时查看的😓。

3.1 安装Ruby

下载RubyInstaller:https://rubyinstaller.org/downloads/
在这里插入图片描述
下载后如下图:
在这里插入图片描述
运行exe,选择安装目录后一直下一步即可,最后出现如下安装完成页面:
在这里插入图片描述
点击Finish按钮后会直接运行ridk install,弹出如下窗口,按提示输入3即可:
在这里插入图片描述
安装完成后如下图:

注: 期间一直提示xxx@gmail.com Connection time out,可忽略不计

在这里插入图片描述

3.2 安装Jekyll

关闭之前的安装窗口,打开新的cmd窗口,运行gem install jekyll bundler

注: 安装过程异常漫长,估计得有半个小时…

在这里插入图片描述

3.3 下载Jekyll主题

可通过如下Jekyll主题商店自行选取喜欢的主题库:
https://jamstackthemes.dev/ssg/jekyll/
http://jekyllthemes.org/

例如以https://github.com/piharpi/jekyll-klise.git主题安装为例:

# 下载jekyll主题(根据喜好自行选择)
git clone https://github.com/piharpi/jekyll-klise.git
cd jekyll-klise
# 配置bundle国内镜像仓库
bundle config mirror.https://rubygems.org https://gems.ruby-china.com
# 安装依赖
bundle install
# 启动本地主题
bundle exec jekyll serve

bundle install执行效果如下:
在这里插入图片描述

运行bundle exec jekyll serve,报如下错误:
在这里插入图片描述

4000端口被占用,切换运行端口4001,运行bundle exec jekyll serve --port 4001
在这里插入图片描述

切换端口后启动成功,访问主题库github/jekyll-klise效果如下:
在这里插入图片描述

访问主题库github/jekyll-theme-yat效果如下:
在这里插入图片描述

四、搭建我的Gitee博客

4.1 选择主题 - Beautiful Jekyll

这次我相中了github/beautiful-jekyll这个主题,
该主题的在线预览地址:https://beautifuljekyll.com/,

注: 更多Jekyll主题可通过如下地址自行发现:
https://jamstackthemes.dev/ssg/jekyll/
http://jekyllthemes.org/

在这里插入图片描述

4.2 创建Gitee账号同名代码库

首先在Gitee上创建和Gitee用户名同名的仓库,如我的Gitee主页:https://gitee.com/luoex 即对应luoex仓库,且该仓库需要被开源公开访问(Gitee要求),且在发布Gitee Pages服务前需要先在Gitee进行实名认证(需等待2~3天方可审核完成),后续开通Gitee Pages服务后即可直接通过 https://luoex.gitee.io 进行访问:

注:
Gitee目前支持同一账号下多个代码库皆开通Gitee Pages服务,
如果代码库名和Gitee用户名不相同,可通过 https://用户名.gitee.io/代码库名 进行访问。

我的Gitee账号同名代码库如下:
在这里插入图片描述

4.3 写博客

将之前选中的主题库代码github/beautiful-jekyll提交到之前新建的luoex代码库,
然后即可参照_posts目录下的md文件写自己的博客了:
在这里插入图片描述

如果喜欢我的博客主题,可直接拉取我的代码库:https://gitee.com/luoex/luoex.git
然后对_config.yml进行调整即可:
在这里插入图片描述

4.4 开通Gitee Pages服务

本地代码都提交到Gitee后,即可在对应的代码库上开通Gitee Pages服务:
在这里插入图片描述
如上启用Gitee Pages服务后,选择部署分支,点击更新即可将自己的博客代码库发布到Gitee Pages上,
待部署完成后即可根据提示地址访问自己的博客了:https://luoex.gitee.io
后续可不断提交新的博客到Gitee上,点击更新即可将最新的博客都发布到Gitee Pages上了。

五、对Beautifu Jekyll的相关优化

虽然博客部署完成后可以被成功访问,但是速度还是有点慢,忍不了😱
遂查看了浏览器控制台,发现问题所在,该主题引用了好多国外地址的JS、CSS、Font,
故将国外地址的JS、CSS、Font皆下载到本地,提交到代码库中,将国外地址的资源都替换为本地相对URL的资源:

  • 替换外部JS、CSS、字体等(国内访问提速)
  • 升级font awesome 6.3.0(支持字母C、G图标)

如此访问速度提高了。

然后又做了一些中文适配,URL适配(导航支持绝对路径URL),
附带集成了我想要的在线PPT模版(revealjs)
具体PPT演示可参见:https://luoex.gitee.io/2021-04-25-ppt-cat-heartbeat/
在这里插入图片描述
在Beautiful Jekyll中是支持切换 黑/白 2种皮肤的(博客右上角有切换按钮),但是这个功能是收费的:
在这里插入图片描述
在这里插入图片描述

但是我又挺喜欢这个功能😰,无意中在请求Beautiful Jekyll官方Demo(支持切换皮肤)时发现了如下2个资源:
在这里插入图片描述
我给下载下来,搞到我自己的代码库里,又扒了点html代码到nav.html中,然后切换皮肤的功能就有了😂。
在这里插入图片描述

至此我的博客算搭建完成了,达到了自己满意的效果,感兴趣的小伙伴可自行搞起来,也希望我的折腾过程对大家有所帮助。要是喜欢我的博客可直接克隆代码库https://gitee.com/luoex/luoex,也省着再去优化了。


参考:
Gitee Pages:
https://gitee.com/help/articles/4136

Ruby安装:
国内RubyGems镜像.html

Jekyll相关文档:
https://jekyllrb.com/

Jekyll主题商店:
https://jamstackthemes.dev/ssg/jekyll/
http://jekyllthemes.org/
简历 - 主题:
https://jamstackthemes.dev/theme/jekyll-online-cv/
https://jamstackthemes.dev/theme/jekyll-particle/
https://jamstackthemes.dev/theme/jekyll-resumecard/
个人博客 - 主题:
https://jamstackthemes.dev/demo/theme/devlopr/
https://jamstackthemes.dev/theme/jekyll-klise/
https://jamstackthemes.dev/theme/jekyll-moonwalk/
https://jamstackthemes.dev/theme/jekyll-theme-yat/
https://jamstackthemes.dev/theme/jekyll-wall-e-theme/
https://jamstackthemes.dev/theme/jekyll-theme-prologue/
https://jamstackthemes.dev/theme/end2end/
https://jamstackthemes.dev/theme/jekyll-theme-serial-programmer/
项目文档 - 主题:
https://jamstackthemes.dev/theme/jekyll-libdoc/
https://jamstackthemes.dev/theme/jekyll-aviator/
http://jekyllthemes.org/themes/jekyll-rtd-theme/

Github搭建博客:
https://www.jianshu.com/p/4f56cf990bba
https://zhuanlan.zhihu.com/p/28321740
知乎 - 怎样做一个漂亮的 GitHub Pages 首页?

相关文章:

Gitee搭建个人博客(Beautiful Jekyll)

目录一、引言二、博客模板选型 - Jekyll三、安装Jekyll环境3.1 安装Ruby3.2 安装Jekyll3.3 下载Jekyll主题四、搭建我的Gitee博客4.1 选择主题 - Beautiful Jekyll4.2 创建Gitee账号同名代码库4.3 写博客4.4 开通Gitee Pages服务五、对Beautifu Jekyll的相关优化一、引言 之前…...

图形视图框架 事件处理(item)

在图形界面框架中的事件都是先由视图进行接收,然后传递给场景,再由场景传递给图形项。通过键盘处理的话,需要设置焦点,在QGraphicsScene中使用setFoucesItem()函数可以设置焦点,或者图形项使用s…...

PTA第六章作业详解

🚀write in front🚀 📝个人主页:认真写博客的夏目浅石. 🎁欢迎各位→点赞👍 收藏⭐️ 留言📝 📣系列专栏:夏目的作业 💬总结:希望你看完之后&am…...

Java课程设计项目--音乐视频网站系统

一、功能介绍 随着社会的快速发展,计算机的影响是全面且深入的。人们生活水平的不断提高,日常生活中人们对音乐方面的要求也在不断提高,听歌的人数更是不断增加,使得音乐网站的设计的开发成为必需而且紧迫的事情。音乐网站的设计主…...

FPGA可以转IC设计吗?需要学习哪些技能?

曾经在知乎上看到一个回答“入职做FPGA,后续是否还可以转数字IC设计?” 从下面图内薪资就可以对比出来,对比FPGA的行业薪资水平,IC行业中的一些基础性岗位薪资比很多FPGA大多数岗位薪资都要高。 除了薪资之外更多FPGA转IC设计的有…...

初探Gradle

目录一.概述二.优点三.安装与配置1. 官网下载2. 配置环境变量3. 检验4. 配置国内镜像(可选)5. IDEA配置三.工程结构四.生命周期1.Initialization阶段2.Configuration阶段3.Execution阶段五.Task六.常用任务指令七.引入依赖1.本地依赖2.项目依赖3.直接依赖八.依赖类型九.插件十.…...

国产数据库介绍

人大金仓 Kingbase 北京人大金仓信息技术股份有限公司于1999年由中共人民大学专家创立,自成立以来,始终立足自主研发,专注数据管理领域,先后承担了国家“863”、“核高基”等重大专项,研发出了具有国际先进水平的大型…...

Java OpenJudge-test3

目录 1:明明的随机数 2:合影效果 3:不重复的单词 4:和为给定数 5:字符串数组排序问题 6:字符串排序 7:求序列中的众数 1:明明的随机数 总时间限制: 1000ms 内存限制: 65536kB 描述 明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性&#xff…...

蓝桥杯刷题冲刺 | 倒计时22天

作者:指针不指南吗 专栏:蓝桥杯倒计时冲刺 🐾马上就要蓝桥杯了,最后的这几天尤为重要,不可懈怠哦🐾 文章目录1.选数异或2.特殊年份1.选数异或 题目 链接: 选数异或 - 蓝桥云课 (lanqiao.cn) 给定…...

入行 5年,跳槽 3次,我终于摸透了软件测试这行(来自过来人的忠告)

目录 前言 第一年 第二年 第三年 第四年 作为过来人的一些忠告 前言 最近几年行业在如火如荼的发展壮大,以及其他传统公司都需要大批量的软件测试人员,但是20年的疫情导致大规模裁员,让人觉得行业寒冬已来,软件测试人员的职…...

开源时序数据库学习

计划学习使用QuestDB解决大数据日志存储场景。以下是常见引擎比较 比较项目 InfluxDB TimescaleDB OpenTSDB QuestDB 数据模型 Key-Value Relational Key-Value Relational 存储引擎 自主开发的TSI PostgreSQL扩展程序 Apache HBase 自主开发 查询语言 InfluxQ…...

字节测试工程师悄悄告诉我的软件测试、测试开发常用的测试策略与测试手段

目录 前言 测试策略的关注重点 测试策略主要内容 总体测试策略 初级版本测试策略 跟踪测试执行 版本质量评估 后续版本测试策略 发布质量评估 测试手段 前言 测试策略是指在特定环境约束之下,描述软件开发周期中关于测试原则、方法、方式的纲要&#xff…...

我常用的shell 进制转换工具

一、进制的一些基础知识 1. 二进制(binary) 二进制的取值是0和1; 前缀是 0b 2. 八进制(Octal) 八进制的取值是0-7;前缀是 O 3. 十进制(decimal) 十进制的取值是0-9;没有前缀 …...

手写vue(二)响应式实现

名词解释:vm:指Vue实例一、目标效果vue定义(1)新建vm时,可以通过一个data对象,或者data函数,其属性可以通过vm直接访问,而data对象可以通过vm._data获取(2)修…...

mysql数据库常问面试题

1、NOW()和CURRENT_DATE()有什么区别? NOW()命令用于显示当前年份,月份,日期,小时,分钟和秒。 CURRENT_DATE()仅显示当前年份,月份和日期。 2、CHAR和VARCHAR的区别? (1&#xff09…...

AI风暴 :文心一言 VS GPT-4

💗wei_shuo的个人主页 💫wei_shuo的学习社区 🌐Hello World ! 文心一言 VS GPT-4 文心一言:知识增强大语言模型百度全新一代知识增强大语言模型,文心大模型家族的新成员,能够与人对话互动&#…...

VR全景城市,用720全景树立城市形象,打造3D可视化智慧城市

随着城市化进程的加速,城市之间的竞争也日益激烈。城市管理者们需要寻求新的方式来提升城市的品牌形象和吸引力。在这个过程中,VR全景营销为城市提供了一种全新的营销手段,可以帮助提升城市的价值和吸引力。一、城市宣传新方式VR全景营销是一…...

javaweb窗口服务人员分析评价系统ssh

A)后台管理员模块:通过该功能模块,管理员可以修改自己的密码,并对管理员进行添加和删除操作。 B)注册用户模块:通过该功能模块,管理员可以查看注册用户的基本信息,对存在问题的用户进…...

树莓派Pico W无线开发板UDP协议MicroPython网络编程实践

树莓派Pico W无线开发板(简称Pico W)是树莓派基金会于2022年6月底推出的搭载无线通信芯片的树莓派Pico开发板。本文在介绍树莓派Pico W无线开发板接口信号和TCP/IP和UDP通信协议基础上,给出Pico W无线开发板的UDP协议MicroPython网络编程实例…...

跨域解决方案

跨域解决方案 1.跨域基本介绍 文档:https://developer.mozilla.org/zh-CN/docs/Web/HTTP/CORS 跨域问题是什么? 一句话:跨域指的是浏览器不能执行其他网站的脚本,它是由浏览器的同源策略造成的,是浏览器对 javascr…...

XML Group端口详解

在XML数据映射过程中,经常需要对数据进行分组聚合操作。例如,当处理包含多个物料明细的XML文件时,可能需要将相同物料号的明细归为一组,或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码,增加了开…...

springboot 百货中心供应链管理系统小程序

一、前言 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,百货中心供应链管理系统被用户普遍使用,为方…...

STM32+rt-thread判断是否联网

一、根据NETDEV_FLAG_INTERNET_UP位判断 static bool is_conncected(void) {struct netdev *dev RT_NULL;dev netdev_get_first_by_flags(NETDEV_FLAG_INTERNET_UP);if (dev RT_NULL){printf("wait netdev internet up...");return false;}else{printf("loc…...

是否存在路径(FIFOBB算法)

题目描述 一个具有 n 个顶点e条边的无向图,该图顶点的编号依次为0到n-1且不存在顶点与自身相连的边。请使用FIFOBB算法编写程序,确定是否存在从顶点 source到顶点 destination的路径。 输入 第一行两个整数,分别表示n 和 e 的值(1…...

MySQL 知识小结(一)

一、my.cnf配置详解 我们知道安装MySQL有两种方式来安装咱们的MySQL数据库,分别是二进制安装编译数据库或者使用三方yum来进行安装,第三方yum的安装相对于二进制压缩包的安装更快捷,但是文件存放起来数据比较冗余,用二进制能够更好管理咱们M…...

Golang——6、指针和结构体

指针和结构体 1、指针1.1、指针地址和指针类型1.2、指针取值1.3、new和make 2、结构体2.1、type关键字的使用2.2、结构体的定义和初始化2.3、结构体方法和接收者2.4、给任意类型添加方法2.5、结构体的匿名字段2.6、嵌套结构体2.7、嵌套匿名结构体2.8、结构体的继承 3、结构体与…...

MinIO Docker 部署:仅开放一个端口

MinIO Docker 部署:仅开放一个端口 在实际的服务器部署中,出于安全和管理的考虑,我们可能只能开放一个端口。MinIO 是一个高性能的对象存储服务,支持 Docker 部署,但默认情况下它需要两个端口:一个是 API 端口(用于存储和访问数据),另一个是控制台端口(用于管理界面…...

作为测试我们应该关注redis哪些方面

1、功能测试 数据结构操作:验证字符串、列表、哈希、集合和有序的基本操作是否正确 持久化:测试aof和aof持久化机制,确保数据在开启后正确恢复。 事务:检查事务的原子性和回滚机制。 发布订阅:确保消息正确传递。 2、性…...

第八部分:阶段项目 6:构建 React 前端应用

现在,是时候将你学到的 React 基础知识付诸实践,构建一个简单的前端应用来模拟与后端 API 的交互了。在这个阶段,你可以先使用模拟数据,或者如果你的后端 API(阶段项目 5)已经搭建好,可以直接连…...

数据结构第5章:树和二叉树完全指南(自整理详细图文笔记)

名人说:莫道桑榆晚,为霞尚满天。——刘禹锡(刘梦得,诗豪) 原创笔记:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 上一篇:《数据结构第4章 数组和广义表》…...