Study hard and make progress every day!

2017-10-31
绑定万网域名到github pages

此处介绍如何将万网的域名绑定到github pages

万网设置

进入aliyun控制的云解析DNS控制台,选中所要解析的域名,此处是jibing57.com, 点击右侧解析按钮。

  • 记录类型选择 CNAME
  • 主机记录填写 www
  • 记录值填入github pages的域名,此处是jibing57.github.io
阅读此文

2017-10-30
Hexo引用站内文章

写文章的时候,经常需要引用站内的其他文章,此时可以使用Hexo内置的标签插件(Tag Plugins)中的post_link来实现。

阅读此文

2017-10-29
Paperclip destroy的callback中attachment的各个attribute为nil的问题调查

问题点

Rails的Image的models中,使用了paperclip这个Gem来处理图片。近期需要添加一个功能,删除image后,需要向某个email地址发送一封邮件,告之某个图片已经被删除了。

实际操作中,发现在无论函数是定义在before_destroy或after_destroy的callback中,attachment_file_name,attachment_file_size, attachment_content_type, attachment_updated_at的属性,取出来都是nil。

调查了一下,现将结果汇总如下:

阅读此文

2017-10-24
如何在aws cli中使用多个配置文件

aws cli使用中,可能会有在多个IAM账户中进行切换的需求,手动切换~/.aws/目录下的configcredentials是十分费力的事情。还好aws cli本身就可以支持多个aws credentials

配置多个profile

aws configure时,加上--profile参数来命名不同的账户, 依次输入access id, access key, region和output format。

1
2
$ aws configure --profile user1
$ aws configure --profile user2

此时生成的configcredentials文件中,会使用账户名来分割不同的配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
[carlshen@carl-macpro-lan ~]$ cat ~/.aws/config
[profile user1]
output = json
region = us-west-2
[profile user2]
output = json
region = ap-northeast-2
[carlshen@carl-macpro-lan ~]$
[carlshen@carl-macpro-lan ~]$ cat ~/.aws/credentials
[user1]
aws_access_key_id = AKIAXXXXXXXXXXXXXXXX
aws_secret_access_key = XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
[user2]
aws_access_key_id = AKIAXXXXXXXXXXXXXXXX
aws_secret_access_key = XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
[carlshen@carl-macpro-lan ~]$

阅读此文

2017-10-24
使用aws codecommit作为私有的git远程服务器

博客的hexo的代码,一直是保存在本地的。上次电脑花了一次屏后,感觉到保存在本地实在是不够安全。因此考虑寻觅一个远端的私密git库,存起来。

开始寻寻觅觅合适的仓库.

  • Github?,私有库是收费的。但为了这些哪天就不更新的markdown,每月7刀开个Developer的Plan,感觉不划算。
  • 自建Gitlab?嫌麻烦麻烦。
  • oschina的私有库?不想用。
  • 。。。。。。

好吧,我承认我就是想尝试用一下aws的codecommit。

关于CodeCommit的免费额度,官网介绍:

  • 最初5位活动用户
    • 无限存储库
    • 50GB的月存储量
    • 每月10000个git请求

托管我一个小博客,妥妥的够了。毕竟除了我,没人还会来关心这点markdown文件, 5位用户免费足够了。至于50GB的月存储量么,除非把看过的电影都commit进git来,要不然应该是足够了。

阅读此文

2017-08-03
Linux 和 Mac下date命令的基本用法

Mac下的date命令是BSD系的, Linux下date命令是GNU系的,两者的用法有一些区别,罗列如下:

共同点

基本的时间格式的缩写是相同的,规则如下:

  • %Y 表示四位数形式的年份, 比如2017
  • %m 表示带前导0的月份,比如02,12
  • %d 表示带前导0的日子, 比如 02,28
  • %H 表示带前导0的24小时, 比如 01, 23
  • %M 表示带前导0的分钟数, 比如 05, 22
  • %S 表示带前导0的秒数, 比如 06,45
  • %s 表示距离格林威治时间(1970年1月1日0点)的秒数
阅读此文

2017-07-25
Macos中如何语音朗读文字

场景

Macos上看到大段大段的英文,有时候除了看以外,还想边听边看

解决方法

Macos 自带speech

Macos 自带了文本至语音的功能, 开启方法如下:

  1. 打开[系统偏好设置] -> [听写与语音] -> 切换至[文本至语音]
  2. 可以选择系统嗓音和朗读速率
  3. 可以设置快捷键,默认为Option + Esc, 选择文字后按快捷键开启,再次按快捷键关闭

或选中文字,右键菜单选择[语音]->[开始讲话]

Reference

阅读此文

2017-07-25
AWS相关的一些有用的网址

cloudping.info

clougping.info是一个可以检测当前浏览器到AWS各个Region的延迟的网站, 可以用来评估访问哪个Region更快一点。在建立测试服务的时候十分有用。

单次的测试结果不一定准确,建议多试几次后再选取平均延迟低的结果。

  • 国内测试的结果:
    cloudping_on_cn

在国内使用AWS全球账号时,在韩国首尔Region建测试服务延迟会小一点。

阅读此文

2017-07-24
AWS Certified Developer - Associate Road Map

Official AWS Centification Page

访问官网AWS Centification

  • 参加 AWS 培训课程
  • 查看考试指南和样题
  • 完成自主进度动手实验和备考任务
    • 官方qwikLABS 任务提供了一系列动手实验, 提供部分免费实验,但大部分实验所需的积分都需要购买。高性价比的做法是, 注册一个AWS全球账号,使用一年的免费额度来对照着实验手册来进行试验。
  • 学习 AWS 白皮书
    • 白皮书是纯英文的,而且每个白皮书篇幅都很长,读起来既费时又枯燥。但是有时间还是建议把推荐的几个都看一下。
  • 查看 AWS 常见问题
    • 官网推荐的FAQ都建议看完,另外DynamoDB FAQ这个必须要看。
  • 参加模拟考试
    • 20美刀一次,主要目的是为了让人熟悉考试时上机的流程。是否需要因人而异, 特别想先熟悉下考试流程的可以考虑参加一次。我个人觉得没有必要, 因为真实考试时,操作界面一目了然,没有磕磕绊绊的机关,省下20美刀可以去买一份课程。
  • 报名考试并获得认证
阅读此文

2017-07-17
使用Hexo搭建Blog

Hexo 安装

安装前提

安装Hexo需要依赖如下两个程序, 需要提前安装

  • Node.js
  • git

安装Hexo

Node.js和git都安装完毕后,执行如下命令安装Hexo

1
$ npm install -g hexo-cli

初始化Blog

cd到存放博客的目标目录,执行hexo init命令

1
$ hexo init my_blog

其中my_blog就是博客所在的文件夹名字。

注意: 最新版的hexo不需要切换到文件夹下敲击npm install了,init的时候会一并安装所需的npm packet。

进入目录,目录结构类似如下.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
$ cd my_blog/
$ tree -I "node_modules" ./
./
├── _config.yml
├── db.json
├── package.json
├── scaffolds
│   ├── draft.md
│   ├── page.md
│   └── post.md
├── source
│   └── _posts
│   └── hello-world.md
└── themes

执行下面的命令开启hexo服务

1
$ hexo -s --debug

访问 http://0.0.0.0:4000应该就能看到默认的页面了。

阅读此文