状況
ECRにプッシュする段階、プッシュコマンドの1つ目でエラーが出た。
エラー内容
> (Get-ECRLoginCommand).Password | docker login --username AWS --password-stdin 259733176869.dkr.ecr.ap-northeast-1.amazonaws.com
Get-ECRLoginCommand : 用語 'Get-ECRLoginCommand' は、コマンドレット、関数、スクリプト ファイル、または操作可能なプログ
ラムの名前として認識されません。名前が正しく記述されていることを確認し、パスが含まれている場合はそのパスが正しいことを
確認してから、再試行してください。
発生場所 行:1 文字:2
+ (Get-ECRLoginCommand).Password | docker login --username AWS --passwo ...
+ ~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (Get-ECRLoginCommand:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
解決策
powershellで動かそうといろいろ調べたけどAWS CLI使うのが手っ取り早そうだな、ということでAWS CLIのインストールで対応することに。
以下、AWS CLIの導入手順。
1. AWS CLIのインストール
下記URLからインストーラーをDLする。
インストールが完了したら、コマンドプロンプトかpowershellでaws --version
を実行してインストールできているか確認しておく。
>aws --version
aws-cli/2.11.11 Python/3.11.2 Windows/10 exe/AMD64 prompt/off
2. アクセスキーの作成
[サービス] → [IAM] → [ユーザー] → [任意のユーザー]
→ [アクセスキー] → [アクセスキーを作成] (画像はアクセスキー作成後のもの)
アクセスキーが作成できたらAWS Access Key IDとAWS Secret Access Keyを控えておく。
3. AWS CLIの設定
コマンドプロンプトかpowershellを開いてaws configure
を実行する。
指示に従ってAWS Access Key IDとAWS Secret Access Keyを入力する。
(残り2つは入力しなくて良さそう)
>aws configure
AWS Access Key ID [None]: **************
AWS Secret Access Key [None]: ***************************
Default region name [None]:
Default output format [None]:
4. プッシュコマンド実行
成功!!!
問題点
VSCodeのターミナルでawsコマンドが使えない・・・
(追記)VSCodeを再起動したら使えるようになった。