우분투 기반 도커 컨테이너 내부의 프록시 서버에 연결할 때 인증하는 방법은 무엇입니까?

우분투 기반 도커 컨테이너 내부의 프록시 서버에 연결할 때 인증하는 방법은 무엇입니까?

HTTP 요청을 보낼 때 프록시 서버를 사용해야 하는 도커 컨테이너를 구축 중입니다. 불행히도 작동하도록 할 수 없습니다. 자격 증명이 정확하더라도 컨테이너 내부에서 프록시에 인증할 수 없습니다.

예상 결과는 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 version 20.10.8, build 3967b7d

관련 정보