Ubuntu ベースの Docker コンテナ内でプロキシ サーバーに接続するときに認証するにはどうすればよいですか?

Ubuntu ベースの Docker コンテナ内でプロキシ サーバーに接続するときに認証するにはどうすればよいですか?

HTTP リクエストを送信するときにプロキシ サーバーを使用する Docker コンテナーを構築しています。残念ながら、これを動作させることができません。資格情報が正しいにもかかわらず、コンテナー内からプロキシに認証できません。

期待される結果は curl https://api.myip.comプロキシのIPを含むJSON応答を返します

実際の結果: curl https://api.myip.comリターンcurl: (56) Received HTTP code 407 from proxy after CONNECT

私が試したこと:

  • HTTP_PROXY 環境変数の設定 (HTTPS 環境変数も同様)
  • /etc/apt/apt.conf に「Acquire::http::Proxy」文字列を追加します (https の場合も同様)
  • さまざまな設定を試しました(ENVのみ、apt.confファイルのみ、両方)

確認したこと:

  • /etc/apt/apt.conf に必要な行が含まれている(下記参照)
  • コンテナ内でENVが正しく設定されている
  • プロキシはコンテナ外で正常に動作しています
  • コンテナ外から実行されたブラウザ経由でプロキシ認証が正しく機能する(認証が成功する)
  • docker ネットワークは正常に動作します (プロキシを使用しない場合は問題ありません)

私のapt.conf:

Acquire::http::Proxy "http://<my_login>:<my_pass>@<proxy_ip>:<proxy_port>/";
Acquire::https::Proxy "https://<my_login>:<my_pass>@<proxy_ip>:<proxy_port>/";
Acquire::socks::Proxy "socks://<my_login>:<my_pass>@<proxy_ip>:<proxy_port>/";

私のDockerfile:

from ubuntu:latest

COPY ./rss/apt.conf /apt.conf
ENV HTTP_PROXY=<ip>:<port>
ENV HTTPS_PROXY=<ip>:<port>

RUN apt update && apt install -y curl
RUN cat /apt.conf >> /etc/apt/apt.conf

ENTRYPOINT ["sleep","1000"]

Docker バージョン: Docker version 20.10.8, build 3967b7d

関連情報