如何搭建个人博客:新方案 blogdown + hugo + netlify + github
文章目录
程序员搭建博客有很多种手段:
1. 在 Github 里使用 SUMMARRY.md 作为目录索引, 然后使用 Gitbook 变成电子书
2. 直接在 Github issue 写文章
3. 使用 Github Pages, 部署工具 Jekyll, Hexo, Hugo
4. 购买域名, 服务器, 自己搭建个人博客
1,2
最简单, 3
次之, 4
最难,也最麻烦.
我尝试过 1,2,3
. 也是够折腾的.
今天, 我发现第3
种方案又有了新玩法, 主要也是参考这篇文章: 用R语言的blogdown + hugo + netlify + github建博客
建议大家把本文作为 用R语言的blogdown + hugo + netlify + github建博客 的补充性文章.
新方案在 3 hugo
基础上使用 blogdown 生成创建静态网站, 然后使用 netlify 对静态网站进行部署.
相比 Github Pages, netlify 对 Github 作为博客的仓库的命名没有限制, 可以随意取, 理论上可以创建N多个网站(N=可创建的仓库的数量). 你可以直接使用 netlify 的二级域名来访问博客.
一些名词
- RStudio : 是专门针对 R 开发的一款 IDE.
- Rmarkdown : 是 RStudio 网站开发的一个项目,旨在通过 Markdown 结合 R 来完成文章写作
- LaTeX : 是一种通过宏语言进行文档排版的排版系统, 它提供了丰富的功能, 但是符号多, 学习更为繁琐
- pandoc : 是一把用于文档转换的瑞士军刀。通过它进行任意格式的文档转换,同时排版结果也不失美观
- blogdown : 提供使用 R Markdown 创建静态网站的支持
- bookdown : 使用 R Markdown 写电子书
- netlify : 对静态网站进行部署, 提供域名支持
我们来一步一步搭建出个人博客,Imymirror的个人博客 是我搭建完成后的成果.
安装R语言
中国站下载存档:https://mirrors.ustc.edu.cn/CRAN/
下载PKG, 比如现在最新的 R-4.0.2.pkg
, 双击按照提示一步步安装.
安装完成后, 在终端输入 大写 R
, 就会进入 R 语言 Shell.
更换 R语言安装源(镜像)
国内的源:
清华CRAN镜像:https://mirrors.tuna.tsinghua.edu.cn/CRAN/
同济CRAN镜像:https://mirrors.tongji.edu.cn/CRAN
北交大CRAN镜像:http://mirror.bjtu.edu.cn/cran
创建一个 ~/.Rprofile
文件
1 2 3 4 5 |
## Default repo local({r <- getOption("repos") r["CRAN"] <- "https://mirrors.tuna.tsinghua.edu.cn/CRAN/" options(repos=r) }) |
下载 RStudio
官网下载地址 :RStudio | Open source professional software for data science teams
RStudio 一些基本配置
Tools -> Global Options -> Sweave -> Weave Rnw files
选择 using:knitr
Tools -> Global Options -> Sweave -> Typeset LaTex into PDF
选择 using:XeLaTeX
这个是生成 PDF 文件用的,中文用户最好选择 XeLaTeX
Tools -> Global Options -> Git/SVN -> Git executable:
: 安装好 git 后,打开这里应该就可以看到 git 的路径,如果没有进行配置
安装 blogdown 和 hugo
1 2 3 |
install.packages('blogdown') blogdown::install_hugo() |
Github 创建 repository
填写好 repository name、Description
,默认选择 Public
复选框 Initialize this repository with a README
add .gitignore
选择R
repository name
没有要求,不像 github 的 pages 服务要求名字和 github 的账号名称一样,建议起名domainname.com
blogdown 建站
rstudio,File -> New Project -> Version Control -> Git
填写 Repository URL: https://github.com/yourGithubName/domainname.com
设置 gitignore
打开 rstudio 右下角的Files标签,点击.gitignore文件,改成下面这样(参考 Yihui):
1 2 3 4 5 6 7 |
.Rproj.user .Rhistory .RData .Ruserdata public static/figures blogdown |
初始化 blogdown
打开:File -> New Project -> New Directory -> Website using blogdown
因为我们已经安装了 hugo,所以去掉 hugo 选项,Yihui 是建议用 hugo-xmin 主题开始我们的 blogdown 之旅
我使用的是olOwOlo/hugo-theme-even主题
本地运行网站
点击菜单 Tools 下面的Addins 点击Serve Site,可能会提示安装几个包例如 shiny、miniUI 等,点击 yes 安装
等价操作为 blogdown::serve_site()
写博客
Tools 下面的 Addins,这次我们点击New Post, 相当于 blogdown::new_post()
Filename
处会自动帮你填写为 Title
处的内容,Filename
和 Slug
还是建议使用字母,尤其是Filename,如果博文里面不需要用到 R 语言的代码计算结果生成图表的话,Format处就选择Markdown格式
点击Done
,就会在/content/post
文件夹下面生成一个文件名为2000-01-01-my-first-blog.Rmd
设置 netlify
- 打开 https://app.netlify.com
- 使用 Github 登录
New site from Git
按照步骤将 Github 博客的仓库跟 Netlify 关联起来- 创建好之后,
Site Setting -> Domian Management -> Custom domains
可以对默认的二级域名进行修改.
至此, 布置就完成了. 只要我们往 Github 的仓库提交 Markdown 文件, Netlify 就会部署代码, 我们访问相关域名即可.
对 Event 主题的配置文件进行修改
打开根目录下的 config.toml 文件, 以下是我的修改项:
|
|
文章作者 Imymirror
上次更新 2020-07-14