제 생각에는apt-cacher
내 패키지 프록시로 로컬에서 사용하고 . 특히 재건축할 때내 도커 이미지연속으로 여러 번. apt-cacher
내 시스템에 설치되어 실행 중입니다 .
프록시 주소를 다음과 같이 설정했습니다. ( 는 내 호스트 이름 http://melroy-pc:3142
입니다 .) melroy-pc
내 경우에는 파일을 만듭니다 /etc/apt/apt.conf.d/02proxy
.
Acquire::http::proxy "http://melroy-pc:3142";
Acquire::https::proxy "http://melroy-pc:3142";
(https 없이 정의만 시도했지만 http::proxy
추가도 시도했습니다.APT::Get::AllowUnauthenticated "true";
.아니요운이 좋으면)
그런 다음 적절한 명령(apt update 및 apt install)을 실행합니다. 이는 현재 질문으로 이어집니다.
Step 9/41 : RUN apt-get update && apt-get install -y --no-install-recommends dirmngr gnupg gnupg-l10n gnupg-utils gpg gpg-agent gpg-wks-client gpg-wks-server gpgconf gpgsm libassuan0 libksba8 libldap-2.4-2 libldap-common libnpth0 libreadline8 libsasl2-2 libsasl2-modules libsasl2-modules-db libsqlite3-0 libssl1.1 lsb-base pinentry-curses readline-common apt-transport-https ca-certificates curl software-properties-common apt-utils net-tools
---> Running in af278cee1d52
Err:1 http://deb.debian.org/debian bullseye InRelease
403 Access to cache prohibited [IP: 192.168.2.166 3142]
Err:2 http://security.debian.org/debian-security bullseye-security InRelease
403 Access to cache prohibited [IP: 192.168.2.166 3142]
Err:3 http://deb.debian.org/debian bullseye-updates InRelease
403 Access to cache prohibited [IP: 192.168.2.166 3142]
Reading package lists...
E: The repository 'http://deb.debian.org/debian bullseye InRelease' is not signed.
E: Failed to fetch http://deb.debian.org/debian/dists/bullseye/InRelease 403 Access to cache prohibited [IP: 192.168.2.166 3142]
E: Failed to fetch http://security.debian.org/debian-security/dists/bullseye-security/InRelease 403 Access to cache prohibited [IP: 192.168.2.166 3142]
E: The repository 'http://security.debian.org/debian-security bullseye-security InRelease' is not signed.
E: Failed to fetch http://deb.debian.org/debian/dists/bullseye-updates/InRelease 403 Access to cache prohibited [IP: 192.168.2.166 3142]
E: The repository 'http://deb.debian.org/debian bullseye-updates InRelease' is not signed.
중요한 팁:내 패키지가 모두 접수되었습니다.성공적으로프록시를 사용하지 않을 때는 문제 없이 설치됩니다.
이 접근 방식은 과거에 제가 apt-key
대신 사용했을 때 효과가 있었습니다.gpg
사용했을 때 효과가 있었습니다 (관련성이 있는지는 모르겠습니다.내 다른 질문을 참조하십시오).
답변1
@cas가 지적했듯이 Docker 호스트는 일반적으로 다른 로컬 IP 블록의 개인 IP 주소를 사용합니다. 그리고 기본적으로 apt-cacher는 allowed_hosts = ''
버전 1.7.0 이후 기본값으로 대신 사용됩니다 *
.
내 솔루션: allowed_hosts
설정의 주석 처리를 해제하고 파일 *
에 값을 입력합니다 /etc/apt-cacher/apt-cacher.conf
.
allowed_hosts = *
그러면 모든 IP 주소(Docker IP 포함)가 허용됩니다. 확신하는또한 특정 범위를 지정하십시오.