botocore.exceptions.ProfileNotFound: The config profile (yoshinsh) could not be found - Shinichi0713/recipie_suggest GitHub Wiki
botocore.exceptions.ProfileNotFound: The config profile (yoshinsh) could not be found
このエラーは、AWS CLIやBoto3で指定したプロファイル(ここではyoshinsh)が見つからない場合に発生します。
原因
- プロファイル
yoshinshが~/.aws/credentialsまたは~/.aws/configに定義されていない。 - スペルミスや環境変数
AWS_PROFILEの設定ミス。
解消方法
1. プロファイルの定義を確認・追加
~/.aws/credentials または ~/.aws/config ファイルを開いて、
[yoshinsh] セクションがあるか確認してください。
例:~/.aws/credentials
[yoshinsh]
aws_access_key_id = YOUR_ACCESS_KEY
aws_secret_access_key = YOUR_SECRET_KEY
例:~/.aws/config
[profile yoshinsh]
region = ap-northeast-1
output = json
なければ、上記のように追加してください。
2. プロファイル名のスペルを確認
yoshinshのスペルが合っているか確認してください。- コマンドやスクリプトで
--profile yoshinshのように指定している場合、名前が一致しているか確認。
3. aws configureコマンドでプロファイルを作成
aws configure --profile yoshinsh
- 対話形式でアクセスキーなどを入力し、プロファイルを作成できます。
4. 環境変数の確認
もし環境変数でプロファイルを指定している場合は、
AWS_PROFILEの値が正しいか確認。
echo $AWS_PROFILE
- 必要なら
などで変更可能。export AWS_PROFILE=default
5. IAMロール利用の場合
EC2インスタンスにIAMロールがアタッチされていれば、
--profile指定やAWS_PROFILE環境変数は不要です。
プロファイル指定を外して実行してください。
まとめ
~/.aws/credentialsや~/.aws/configに[yoshinsh]プロファイルがあるか確認・追加- プロファイル名やスペルの確認
aws configure --profile yoshinshで新規作成- 環境変数
AWS_PROFILEの確認 - IAMロール利用時はプロファイル指定を外す