仮想ネットワークに AWS AppMesh を使用するように ECS タスク定義を設定しています。AWS がサイドカーとして実行することを推奨している Envoy を使用しています。ECS設定proxyConfiguration
のブロックを使用してネイティブでサポートされていますTaskDefinition
。
プロキシで設定できるプロパティの1つはですIgnoredUID
。これにより、Envoyプロセスはプロキシ中に自身のトラフィックを無視することができ、検査する必要がなくなります。使用してプロキシ。これはパフォーマンスの向上です。ただし、ドキュメントには、その番号の独自のバージョンを見つける方法が説明されていません。単に「1337」という番号が使用されていますが、それがどこから来ているのかはわかりません。
ドキュメントはここにあります:https://docs.aws.amazon.com/AmazonECS/latest/developerguide/appmesh-getting-started.html(「タスク定義の更新」までスクロールして、JSON セクションを参照してください)。
答え1
docker プロセスが実行される UID は、かなり任意です。デフォルトでは、すべての docker プロセスは UID 0 (ルート) で実行されます。これが変更された理由はいくつかあります。
- 異なるデフォルトユーザーをイメージに焼き込むことで、ユーザーDockerfile内のコマンド
- dockerのcliでユーザーを指定するには
--user
- サイドカーの ECS コンテナ定義で、
user
またはを設定します。uid
あなたの場合、コンテナに任意の UID を割り当て、IgnoredUID
オプションに同じ番号を設定します。