AWS CLI 2.0 ECR get-login-password ์ธ์ฆ ๋ฌธ์
๋ฌธ์ : AWS CLI 2.0 ๋ฒ์ ์์ aws ecr get-login-password ์ฌ์ฉ ์, ์ธ์ฆ ๊ตฌ๊ฐ์์ 401 ๊ถํ ์์ ์๋ฌ ๋ฐ์.
ํด๊ฒฐ : AWS CLI ๊ณ์ ์ด MFA ์ธ์ฆ ( ๊ตฌ๊ธ ์ธ์ฆ๊ธฐ ๋ฑ ) ์ ์ฌ์ฉ ์ค์ด๋ผ๋ฉด, ํด๋น ์ธ์ฆ ํ ํฐ ์ธ์
์ด ์์ด์ผ ๊ถํ ์๋ฌ๊ฐ ๋ฐ์ํ์ง ์์.
* ๊ธฐ๋ณธ์ ์ผ๋ก ์ฌ์ฉํ๋ ค๋ ๊ณ์ ์ ๋ช ๋ น์ ๋ํ ๊ถํ์ด ์๋์ง๋ ํ์ธํ์ฌ์ผ ํจ. ๊ทธ๋๋ ์๋์ ์๋์ ๊ฐ์ ํด๊ฒฐ๋ฐฉ๋ฒ์ ๋ฐ๊ฒฌ.
cli ์์ ๋ค์๊ณผ ๊ฐ์ด ๋ช ๋ น ์คํ.
aws sts get-session-token --serial-number {AWS ๊ณ์ } --token-code {์ธ์ฆ๊ธฐ ๋ฐ๊ธ ์ฝ๋}
์คํํ๋ฉด Access Key / Secret Access Key / Session Token ์ด ๋ฐ๊ธ๋๋ค.
ํด๋น ํ ํฐ์ 12์๊ฐ๋์ ์ ํจํ๋ฉฐ ์ ๊ฐ์ ๊ฐ์ง๊ณ aws credential profile ์ ์์ฑํ๋ค.
credential ํ์ผ ( C:\Users\{user๋ช }\.aws ๋ด) ์ ํธ์ง๊ธฐ๋ก ์ด์ด ๋ค์์ ์ถ๊ฐํ๋ค.
[default]
...
[{profile๋ช
}]
AWS_ACCESS_KEY_ID = {๋ฐ๊ธ๋ฐ์ ์ก์ธ์ค ํค ๊ฐ}
AWS_SECRET_ACCESS_KEY = {๋ฐ๊ธ๋ฐ์ ์ํฌ๋ฆฟ ์ก์ธ์ค ํค ๊ฐ}
AWS_SESSION_TOKEN = {๋ฐ๊ธ๋ฐ์ ์ธ์
ํ ํฐ ๊ฐ}
ํด๋น profile ์ถ๊ฐ ํ ๋ช ๋ น์ ์คํํ๋ค.
aws ecr get-login-password --profile {์
๋ ฅํ profile๋ช
} --region {๋ฆฌ์ ๋ช
} | docker login --username {AWS๊ณ์ } --password-stdin {AWSํจ์ค์๋}