【Jekyll】AmazonS3にブログをアップロードするまで
AWSアカウント取得後から。
環境
- Windows8 64bit
- jekyll 1.1.2
Bucket
作る
をクリックして、BucketNameとRegionを設定します。
RegionはTokyo。
BucketNameは生成されるURL
http://[Bucket Name].s3-website-ap-northeast-1.amazonaws.com/index.html
の[Bucket Name]に入れたい名前を入力。
設定する
CreateするとAllBacketの中に今作ったBucketができています。
メニューの"Static Website Hosting"と"Permissions"だけ編集する必要があるので、今作ったBucketを選択して右上のPropertiesを選択します。
Static Website Hosting
下のようにしてSave。
Permissions
をクリック。
特に何も考えずに下をコピペします。
"Resource"のある行の[BucketName]を自分のBucket名に変更した後にSaveします。
{ "Version": "2008-10-17", "Statement": [ { "Sid": "PublicReadForGetBucketObjects", "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": "s3:GetObject", "Resource": "arn:aws:s3:::[BucketName]/*" } ] }
s3_website
インストール
下を実行
gem install s3_website
エラーが起こる場合
RailsInstallerでRubyをインストールしている人は下のようなエラーが出るかもしれません(出た)。
invalid gem format for C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/c ache/nokogiri-1.6.0-x86-mingw32.gem
nokogiri 1.6.0-x86-mingw32のDownloadからダウンロードをした後、それでエラーが起きている元ファイルを上書きしたらインストールできました。
jekyllの_siteをアップロードする
Jekyllプロジェクトのディレクトリで下を実行。
s3_website cfg create
するとディレクトリにs3_website.ymlというファイルができるので編集します。
s3_id: YOUR_AWS_S3_ACCESS_KEY_ID s3_secret: YOUR_AWS_S3_SECRET_ACCESS_KEY s3_bucket: your.blog.bucket.com … # s3_endpoint: ap-northeast-1
idとsecretはAWS | セキュリティ証明書の"アクセスキーID"と"シークレットアクセスキー"をコピペします。
bucketは自分のbucket名。
RegionをTokyoにした人はs3_endpoint: ap-northeast-1のコメント(# )を取ります。
編集が終ったら下を実行。
s3_website push
Deploying _site/* to [Bucket Name] Calculating diff /
となって
Done! Go visit: [URL]
となれば多分アップロードできています。
URLにアクセスして表示されたらおっけぃ。