AWS

AWSCLIのログイン

案件でdockerを使ってる時のお話です。

新人エンジニア、未経験エンジニアとして入って
AWS CLIでログインしてimage取れるようにしてとか言われてもよくわかりませんよね。

質問しても、調べれば出てくるよ(そう言われればそうなんですが)。と言われ以降質問しずらくなる。よくある光景です。

さてそんな人たちのために(お前しかいねえよ)
AWSCLIでimageを取ってこれるようなコマンドを簡単にまとめました。

まずはprofileを作成します。一応profile名はなくてもいいオプションになってはいるんですが、案件一つなんて個人でやってないかぎりはありえないと思うので、案件ごとにprofileを作ったほうが便利です。

ターミナル
$ aws configure --profile profile名

AWS Access Key ID [None]: 
AWS Secret Access Key [None]: 
Default region name [None]: 
Default output format [None]: json

それが終わったら以下のコマンドを打ちます。

ターミナル
$ $(aws ecr get-login --no-include-email --profile profile名)

※コメントでご指摘頂きまして、「$()」をで囲むとログインまで自動で行ってくれます!
そうすると、ズラ~っとターミナルに文字が出てきます。
それを全部コピって再度ターミナルでエンターを押します。

そうするとawsからimageをpull出来るようになります。

おまけ

rootディレクトリで

ターミナル
$ cat .aws/config #登録されているprofile一覧
$ cat .aws/credentials #登録されているprofileのaccesskeyやsecretkeyが見れる

/username/.aws
にconfigとcredentialsが存在しているので直接書き換えることも可能。

参照
profile作成
http://docs.aws.amazon.com/ja_jp/cli/latest/userguide/cli-chap-getting-started.html
awsgetlogin
http://docs.aws.amazon.com/ja_jp/AmazonECR/latest/userguide/ECR_AWSCLI.html