七牛对象存储的使用

Jekyll个人网页是个好技术,github.com是个好网站,不过存储容量和流量的限制是个头痛的事情,当然,也在情理之中。 好在我们生于“云”的时代,有很多办法来扩展我们的世界。在引用图片方面,主要的要求就是服务商可以提供外链。由于在国内,我们的选择少了一些,不过还是有几个优选的:

七牛的注册、认证这里就不说了,控制台的网址是https://portal.qiniu.com/。关键要说的是对于普通人员用起来感觉困难的地方:

  • 如果你是程序员,当然最好的办法是根据api使用文档编写自己的接口,完成彻底的自动化工作。api文档地址是:https://developer.qiniu.com/kodo
  • 如果你懒得自己写,七牛有一组用这些API开发的工具供你选择,这些工具包括Windows之下的同步上传工具,命令行的QShell,还有另外两款辅助工具和迁移工具。我们今天的重点说QShell,说明及下载地址是:https://developer.qiniu.com/kodo/tools/1302/qshell
  • 首先在七牛网页控制台个人中心->秘钥管理中查询自己的AK和SK,这两个秘钥可好好记录下来。
  • 在控制台添加对象存储功能,添加时要填写一个存储的名字还有选一个服务器地理位置。添加完成从控制台左侧选择对象存储图标,屏幕右上角的位置会出现一个为你临时生成的域名xxxxx.bkt.clouddn.com,将来你存储到七牛云的文件,可以使用这个域名访问。七牛云专门说了这个域名是临时测试使用的,有访问次数和流量的限制,不过据说对于个人博客来说一般都够用了。不够用的可以根据说明捆绑域名。
  • 下载的qshell改一个短一点你喜欢的名字,我就直接叫qshell了,使用chmod +x qshell设置执行权限,然后移动到/usr/local/bin文件夹以便随时调用。
  • 第一次使用首先执行qshell account 你的ak 你的sk,这回在~/.qshell/生成一个文件account.json文件,其中保存了你的账户信息,以后执行qshell各项功能,就不需要再次登陆了。
  • 在电脑本地选择一个文件夹作为对应云端存储的本地空间,为了说明方便,我们假定是~/fileStorage/,在之下可以建立自己的目录结构并存储自己的各项文件,将来上传后,~/fileStorage/下面保存的文件,就对应到你七牛测试域名的根目录。随后在你的工程下面建立一个upload.conf文本文件,内容为: { //使用时请删除这些注释行 //本地存储路径 "src_dir" : "~/fileStorage", "bucket" : "你的存储名", //下面几项不用解释了吧,懂的就懂了,不懂翻译成中文还是不明白 "check_hash" : true, "check_exists" : true, "check_size" : true, "rescan_local" : true, //上传时保持目录结构 "ignore_dir" : false }
  • 假设你有一个文件,~/fileStorage/abc/def.jpg,上传后,使用http://xxxxx.bkt.clouddn.com/abc/def.jpg就能访问到。在你的jekyll文章中,使用![](http://xxxxx.bkt.clouddn.com/abc/def.jpg)可以把这张图片插入到你的文章中。
  • 上传的命令为:qshell qupload upload.conf,我一般把git的操作及qshell操作一起写入一个脚本,每次写完执行一次就同时完成了文章的上传和图片的上传。不怕献丑,贴出来我的脚本给你参考一下:
#!/bin/bash

git add . 
git commit -m "$1"
git push
qshell qupload qshellupload.conf
#此外,qshell还可以增加一个线程数参数,来并行上传加快速度,比如下面这条8线程上传:
#qshell qupload 8 qshellupload.conf

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏大魏分享(微信公众号:david-share)

VMware软件定义数据中心分析工具介绍----第三终结篇

在本文连载的第一篇中,我向大家介绍了vROps的基本架构、vROps的指标含义,以及如何自定义告警。第二篇中,介绍了如何自定义仪表盘。在本篇中,我将介绍如何自定...

3698
来自专栏开源优测

[接口测试_B] 07 Pytest的测试报告

pytest命令行运行时,可以直接在控制台中查看到输出的结果,但这样的结果并不直观,也不易于保存用于后续分析和分享。如pytest -s -q test_xx....

3296
来自专栏沈唁志

解决Windows环境下Git Bash客户端无法识别Composer命令的问题

1264
来自专栏杂烩

GitHug备忘 原

作为开源代码库以及版本控制系统,Github拥有140多万开发者用户。随着越来越多的应用程序转移到了云上,Github已经成为了管理软件开发以及发现已有代码的首...

605
来自专栏前端知识分享

第211天:git和github的区别和使用详解

它是一个源代码管理工具,在一个项目中,凡是由开发人员编写的都算是源代码,源代码有必要管理起来,让源代码可以被追溯,主要记录每次变更了什么,谁主导这次变化。人为的...

1553
来自专栏建站达人秀

如何搭建 Firekylin 博客

FireKylin 是基于国内先进的 Node.js 框架 ThinkJS 2.0 开发的通用博客系统,是由奇虎360公司Web前端工程师组成的专业团队 75T...

2370
来自专栏听雨堂

Android新手之旅(1) 开发环境的安装

  大致情况:安装Android开发环境,网上有很多的教程,装eclipse,jdk…别的问题都不大,最麻烦的是装sdk,因为安装是一个在线安装过程,而要安装的...

1877
来自专栏Java后端生活

Linux(二)CentOS的安装

3055
来自专栏杂文共赏

【移动开发】基于MobileLine的零代码快速集成崩溃监控服务(Android)

移动开发平台(MobileLine)提供各种服务帮助您快速构建移动应用并推动业务增长。借助 MobileLine,您可以使用云服务来保证移动应用的高质量,我们帮...

2337
来自专栏运维技术迷

centos7编译安装Redis

redis能够兼容绝大部分的POSIX系统,比如Linux、OS X、OpenBSD、NetBSD、FreeBSD,其中比较典型的是Linux操作系统(如Cen...

3263

扫码关注云+社区