前言

1.相信不少朋友写markdown博客时,想插入一些图片,会采用本地存储方式,需要手动设置路径并把图片上传,这样稍显麻烦,所以可以考虑将图片上传至图床生成 URL,直接在markdown 引入url。

2.可是呢,现在国内用的各种图床,例如:微博图床、Imgur、七牛云、又拍云、腾讯云COS、阿里云OSS等都有各种限制,不是收费就是出了防外链。免费的也有SM.MS,不过假如哪天需要收费或者关闭服务了,Blog上的图片只能GG了。

3.使用GitHub仓库创建一个图床,存在的问题是国内访问github的速度不是很快,可以利用jsDelivr CDN加速访问(jsDelivr 是一个免费开源的 CDN 解决方案)。jsDelivr是首个「打通中国大陆与海外的免费CDN服务」,网页开发者无须担心中国防火墙问题而影响体验。

实际搭建

创建仓库

首先得在GitHub创建一个存放图片的仓库,这个无须多言。不会的点此链接查看如何创建。

获取token

①访问https://github.com/settings/tokens,点击`Generate new token`按钮。

②填入Note,这里就叫PicGo好了,并勾选repo

③滚动到最下面点击Generate token

④然后就将生成的token复制下来,后面在PicGo配置的时候会用到。

如果没有复制就离开了此页面,是需要再生成一次的。进入之前输入的Note中会有一个Regenerate token,重新再点击生成一次即可。

配置PicGo

①首先下载安装PicGo软件,Mac与Win都支持。下载地址:https://github.com/Molunerfinn/PicGo/releases

②然后打开PicGo,进入到图床设置->github图床进行如下配置:

这里需要注意一下:

  • 设定仓库名:填写你的仓库名称,格式:用户名/仓库名
  • 设定分支名:仓库的分支名,一般填写master就行
  • 设定Token:之前复制下来的token
  • 指定存储路径:图片在仓库中的存储路径,img/可自定义名称
  • 设定自定义域名:访问图片的域名,例:https://cdn.jsdelivr.net/gh/miqilin21/static@master
  • gh:代表GitHub
  • miqilin21/static:用户名/仓库名
  • @master:分支名称

一个完整的图片路径如下,比如存放名为12jiqiao.jpg的图片:

https://cdn.jsdelivr.net/gh/miqilin21/static@master/img/12jiqiao.jpg

到这里你就可以搞定了,接下来你可以通过 PicGo 方便地上传图片了,它支持拖拽、点击、剪贴板上传,上传到 Github 仓库后,你就可以复制 PicGo 相册里的图片链接啦。

当然,你也可以通过 Git 命令,将本地图片批量上传到 Github 对应的仓库上,再替换成原文中的图片链接地址,以完成图片迁移的工作。

关于PicGo的使用,请参考官方文档

结语

整个过程算比较简单,创建 Github 仓库,并获取 token,填入 PicGo 配置,上传图片即可完成。GitHub+jsDelivr+PicGo搭建的图片有这样的好处:

  • 在 Github 存储图片,利于博主对于图片的掌控,并且Github 仓库的容量有 1G 的上限,对个人博客来说绰绰有余。
  • 使用 jsDelivr 加速静态文件访问,能够优化博客体验。
  • 使用 PicGo 的原因是因为能够方便地将上传图片到 Github,并直接获取 jsDelivr 的加速后的图片地址。

如果觉得文章对你有些许帮助,欢迎在我的GitHub博客点赞和关注,感激不尽!



tools  

github 图床

本博客所有文章除特别声明外,均采用 CC BY-SA 3.0协议 。转载请注明出处!