Django アプリケーションを AWS の Fargate サービスにデプロイすることをテストしています。
すべてが実行されているように見えますが、Application Load Balancer がホストのローカル IP を使用して Django アプリケーションにリクエストを送信しているため、ヘルス チェック エラーが発生します。これにより、ログに許可されたホスト エラーが表示されます。
無効な HTTP_HOST ヘッダー: '172.31.86.159:8000'。「172.31.86.159」を ALLOWED_HOSTS に追加する必要がある場合があります
タスクの起動時にローカル IP を取得して ALLOWED_HOSTS に追加しようとしましたが、Fargate では失敗します。
import requests
EC2_PRIVATE_IP = None
try:
EC2_PRIVATE_IP = requests.get('http://169.254.169.254/latest/meta-data/local-ipv4', timeout = 0.01).text
except requests.exceptions.RequestException:
pass
if EC2_PRIVATE_IP:
ALLOWED_HOSTS.append(EC2_PRIVATE_IP)
ALLOWED_HOSTS に追加できるように ENI IP アドレスを取得する方法はありますか?