s3 sync がとても便利

  • 2
    いいね
  • 0
    コメント

この記事を読んでわかること

  • ローカルのあるディレクトリ内のデータをごっそりS3の指定した場所にアップロードする方法

環境

  • Windows

前準備

IAM USERを作成する

  • S3へのアクセスを許可するIAMユーザーを作成
  • シークレットアクセスキーをきちんと書き留めておく
Policy
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "Stmt1446117060000",
            "Effect": "Allow",
            "Action": [
                "s3:GetObject",
                "s3:ListAllMyBuckets",
                "s3:ListBucket",
                "s3:PutObject"
            ],
            "Resource": [
                "arn:aws:s3:::*"
            ]
        }
    ]
}

ローカルからAWSのS3にアクセスする設定を行う

cli
$ aws configure
  • 上記のコマンドをたたくと、アクセスキー、シークレットアクセスキー、リージョン、出力形式の順番で聞かれるので、入力とEnterを繰り返して設定を進める

cliでローカルファイルをS3にアップロードする

cli
$ aws s3 sync [ローカルファイルのディレクトリ] s3://[バケット名]
  • 上記コマンドをたたくたびに同期が実行される
  • 2回目以降は差分のみ取り込まれる

  • バケット内のディレクトリを指定する場合↓

cli
$ aws s3 sync [ローカルファイルのディレクトリ] s3://[バケット名]/[ディレクトリ名]