awscli のインストール
brewでインストール
brew install awscli
pipでインストール
$ sudo pip install awscli
pipが無いとき
$ sudo easy_install pip
バージョンの確認
$ aws --version
AWSのセットアップ
regionとoutput formatは大概固定でいいんじゃないかと。
ap-northeast-1
は東京
$ aws configure --profile=PROFILE_NAME
AWS Access Key ID [None]: myaccesskey
AWS Secret Access Key [None]: mysecretkey
Default region name [None]: ap-northeast-1
Default output format [None]: json
S3のバケット一覧出力
$ aws s3 ls --profile=PROFILE_NAME
ファイルのアップロード
ファイルを個別にアップロード
$ aws s3 cp sample.txt s3://mybucketname/ --acl public-read --profile=PROFILE_NAME
ファイルをまとめてアップロード
$ aws s3 sync . s3://mybucketname/ --include "*" --acl public-read --cache-control "max-age=3600" --profile=PROFILE_NAME
HTMLファイルをまとめてアップロード
$ aws s3 sync . s3://mybucketname/ --exclude "*" --include "*.html" --acl public-read --cache-control "max-age=3600" --profile=PROFILE_NAME
gzip圧縮したhtml,js,cssをアップロード
aws s3 sync ./build s3://mybucketname/DIRECTORY_NAME/ --exclude "*" --include "*.js"\
--acl public-read --cache-control "max-age=600" --content-type "application/javascript"\
--content-encoding "gzip" --profile PROFILE_NAME
aws s3 sync ./build s3://mybucketname/DIRECTORY_NAME/ --exclude "*" --include "*.css"\
--acl public-read --cache-control "max-age=600" --content-type "text/css"\
--content-encoding "gzip" --profile PROFILE_NAME
aws s3 sync ./build s3://mybucketname/DIRECTORY_NAME/ --exclude "*" --include "*.html"\
--acl public-read --cache-control "max-age=300" --content-type "text/html"\
--content-encoding "gzip" --profile PROFILE_NAME
登録済みの情報を確認する
設定一覧
$ cat ~/.aws/config
アクセスキーとシークレット一覧
$ cat ~/.aws/credentials