これは知っておくべき素晴らしい情報です!
そして、これが他の人にも当てはまることを願っています。
しかし、なぜこれが私たちにとっては問題にならないのか疑問に思います。私たちはこれを1に設定していますが、それでも動作しますか?
discourse(prod)> ENV['AWS_EC2_METADATA_V1_DISABLED'] = 'true'
=> "true"
discourse(prod)> c = Aws::S3::Client.new(region: ENV['DISCOURSE_S3_REGION'])
=> #<Aws::S3::Client: ...>
discourse(prod)> c.config.credentials.disable_imds_v1
=> true
discourse(prod)> c.list_objects_v2(bucket: ENV['DISCOURSE_S3_BUCKET']).contents.count
=> 1000
そして、そのインスタンスは同じクエリコマンドによると、このメタデータを持っています。
{
"State": "applied",
"HttpTokens": "optional",
"HttpPutResponseHopLimit": 1,
"HttpEndpoint": "enabled",
"HttpProtocolIpv6": "disabled",
"InstanceMetadataTags": "disabled"
}
私たちは他の人たちと同じように、EC2上のDockerコンテナでDiscourseを実行していますが…何が違うのでしょうか?