查看原文
其他

R语言搭建炫酷的线上博客系统

徐静 宏基因组 2022-03-28

本文转载自R语言中文社区,转载已获授权。

作者简介Introduction

徐静 硕士研究生、算法工程师 兴趣方向:统计机器学习,深度学习,模型的线上化部署、网络爬虫,前端可视化。

 个人博客:https://dataxujing.github.io/


市面上有很多开源的博客搭建系统比如jekyll (我的个人博客就是用jekyll搭建的),hugo等。去年的时候想给我家闺女做一个记录其成长轨迹的博客,就使用了Rblogdown去完成的。如果你是R语言用户,那么恭喜你,你可以完全通过R语言搭建自己的博客或者网站了。Blogdown包是YiHui Xie等开发的可以调用Hugo主题的基于Rstudio的快速搭建个人博客系统的优质R包,说明文档详实: https://bookdown.org/yihui/blogdown/。我们下面会介绍基于Blogdown 、 hugo 、 netlify 、 github完全基于Rsudio搭建一个炫酷的博客系统并部署。让我们愉快的开始吧.

1.开始前的准备

首先我么要安装R,Rstudio(如果你的Rstudio已经N年没有更新了,建议你更新你的Rstudio,因为下面的一些操作可能比较老的Rstudio版本是没有的), 有了这些之后,你需要安装必要的包:

blogdown的安装

CRAN

install.packages("blogdown")

GitHub

if (!requireNamespace("devtools")) install.packages("devtools") devtools::install_github("rstudio/blogdown")

hugo安装与更新

blogdown::installhugo() blogdown::updatehugo()

查看安装hugo的版本

blogdown::hugoversion() ``` 当你安装好这些R包,然后运行 blogdown::newsite()没有报错,我们就可以进行下一步的操作了。


2.Rstudio线下编辑博客系统

配置需要的环境后,我们可以通过Rstudio来生成blog了:

第一步:初始化一个Rblogdown项目

打开Rstudio->File->New Project->New Directory 进入如下操作

如图选择Website using blogdown创建一个R项目(如果看不到这个选项,请升级你的Rstudio) 进而

注意上述过程也可以通过R命令来实现:blogdown::new_site(theme = "xxx"),xxx代表你要使用的hugo主题,hugo主题可以在https://themes.gohugo.io/中获得,这里有你想要的各种主题,你可以直接下载,拷贝到你项目中的themes文件中。

第二步:运行初始化的Rblogdown

运行完第一步之后,你会在你的Rstudio中看到项目文件的列表:

  • config.toml: 这是你的博客的配置文件,对于你博客的一些全局信息可以在这里修改和配置

  • content文件夹: 这里存放了我要Post的R markdown 文档和其他你要Post的markdown文档

  • index.Rmd: 最终生成index.html

  • public文件夹:最终博客生成的html文件和一些静态资源文件会放在这里

  • static: blogdown需要的一些静态资源文件,像css文件,js文件,图片,视频等均属于静态资源文件

  • themes: hugo主题,blogdown引入的hugo主题会下载到这个文件夹,同时你可以把你想要的hugo主题考到这个文件夹中供blogdown引用

第三步:在Rstudio中运行博客系统

在Console中输入:blogdown::serve_site()就可以正常启动你的博客系统了:

在Rstudio的Viewer中会显示运行的博客,如下图所示:

wow, 我们的博客出来了,但是问题来了,我怎么样通过R markdown Post到我的博客,因为我要更新我的博客内容,我们下一步要解决的问题就是删除模板中提供的博客内容,增加自己的Post的R markdown博文。

第四步:Post我的Rmd博文

我们在第二步中说过,content文件夹中的内容就是我们要Post的内容,因此我们只需删除掉content->post文件夹下的文件就可以了,同时我们也可以把about.md文件换成自己的about内容。清空之后我们就可以按照下面面方式Post我们自己的博文了:

tools->Addins->blogdown New Post->Excute就可以新建一个Post的Rmd文档,如下图所示:

填写好内容后,点击Done按钮即可在Post的问价夹看到生成的Rmd文档,你就可以编辑了,如下所示:

最终生成的博客就编程了你自己想要的。

第五步: 修改Hugo主题,让他变的更炫酷,更属于自己

上面四步我们使用了基本的Hugo主题,如果我想换一些博客Hugo主题怎么办呢?其实这个问题我已经在上面中提到了,你需要修稿config文件和theme文件夹中的内容,比如你可以修稿config文件来修改你博客的结构和替换主题,theme文件夹中的主题可以在Hugo官方的主题网站中下载然后通过配置文件调用。

这里提供一个我之前做的一个博客的效果:

到这里为止,使用blogdown搭建了自己的博客系统,我们下一步需要做的是要把我们的博客部署到 netlify。


3.部署

对于blogdown的部署,提供了如下几种部署的办法:Netlify,Updog,GithubPages,GitlabPages等。我们选择其中一种部署办法就OK了,这里介绍blogdown部署到Netlify

首先我们要把第2节中的项目托管到GitHub(这个过程比较简单,这里直接跳过)

然后需要注册登录Netlify(https://app.netlify.com/signup),可以直接通过GitHub账号登录,然后按照如下所示的过程,进行部署就OK了。

点击 New site from git 

点击GitHub 

搜索GitHub中项目的名称 

填写部署的相关信息并点击部署 

部署完成的界面 

这样就部署完你的项目了,Netlify会提供一个免费的域名给你例如我部署的项目:https://nuannuan.netlify.com/。 最后如果你想Post新的内容到你的博客,直接可以Post到GitHub对应的项目中就OK了,非常方便。当然你也可以替换成自己的域名。

4.小结

我们通过blogdown包和Hugo可以完全基于Rstudio搭建一套自己的博客系统,并通过Netlify和GitHub部署到公网环境。这样我们就有自己的博客了。

猜你喜欢

10000+:菌群分析 宝宝与猫狗 梅毒狂想曲 提DNA发Nature Cell专刊 肠道指挥大脑

系列教程:微生物组入门 Biostar 微生物组  宏基因组

专业技能:学术图表 高分文章 生信宝典 不可或缺的人

一文读懂:宏基因组 寄生虫益处 进化树

必备技能:提问 搜索  Endnote

文献阅读 热心肠 SemanticScholar Geenmedical

扩增子分析:图表解读 分析流程 统计绘图

16S功能预测   PICRUSt  FAPROTAX  Bugbase Tax4Fun

在线工具:16S预测培养基 生信绘图

科研经验:云笔记  云协作 公众号

编程模板: Shell  R Perl

生物科普:  肠道细菌 人体上的生命 生命大跃进  细胞暗战 人体奥秘  

写在后面

为鼓励读者交流、快速解决科研困难,我们建立了“宏基因组”专业讨论群,目前己有国内外2200+ 一线科研人员加入。参与讨论,获得专业解答,欢迎分享此文至朋友圈,并扫码加主编好友带你入群,务必备注“姓名-单位-研究方向-职称/年级”。技术问题寻求帮助,首先阅读《如何优雅的提问》学习解决问题思路,仍末解决群内讨论,问题不私聊,帮助同行。

学习16S扩增子、宏基因组科研思路和分析实战,关注“宏基因组”

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存