api-get“ เกิดข้อผิดพลาดในการอ่านจากเซิร์ฟเวอร์” ใต้ Docker


14

ฉันใช้คำสั่งต่อไปนี้ใน Bash:

DEBIAN_FRONTEND=noninteractive apt-get update -qq \
  && apt-get install -y build-essential git libncurses5-dev openssl \
     libssl-dev  fop xsltproc unixodbc-dev curl

มันทำงานได้ แต่ไม่สำเร็จตรงกลาง:

Get:96 http://security.debian.org/ jessie/updates/main linux-libc-dev amd64 3.16.7-ckt9-3~deb8u1 [991 kB]
Get:97 http://security.debian.org/ jessie/updates/main curl amd64 7.38.0-4+deb8u2 [200 kB]
Get:98 http://security.debian.org/ jessie/updates/main openjdk-7-jre amd64 7u79-2.5.5-1~deb8u1 [176 kB]
Get:99 http://http.debian.net/debian/ jessie/main libgtk2.0-0 amd64 2.24.25-3 [2301 kB]
Err http://http.debian.net/debian/ jessie/main dpkg-dev all 1.17.25
  Error reading from server. Remote end closed connection [IP: 176.9.184.93 80]
Get:100 http://http.debian.net/debian/ jessie/main libatk-wrapper-java all 0.30.5-1 [30.3 kB]
Get:101 http://http.debian.net/debian/ jessie/main libatk-wrapper-java-jni amd64 0.30.5-1 [24.8 kB]
Get:102 http://http.debian.net/debian/ jessie/main libatomic1 amd64 4.9.2-10 [8992 B]
Get:103 http://http.debian.net/debian/ jessie/main libavahi-glib1 amd64 0.6.31-5 [36.4 kB]

ดังนั้นการดำเนินการทั้งหมดจึงล้มเหลวด้วยข้อผิดพลาด

E: Failed to fetch http://http.debian.net/debian/pool/main/d/dpkg/dpkg-dev_1.17.25_all.deb  Error reading from server. Remote end closed connection [IP: 176.9.184.93 80]

E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?

ฉันใช้สิ่งนี้เป็นส่วนหนึ่งของงานสร้างนักเทียบท่า อ่าน Dockerfile ของฉัน

FROM debian:jessie
RUN DEBIAN_FRONTEND=noninteractive  \
    apt-get update -qq \
    && apt-get install -y \
       build-essential \
       git \
       libncurses5-dev \
       openssl \
       libssl-dev \
       fop \
       xsltproc \
       unixodbc-dev \
       curl

และฉันกำลังวิ่ง docker build -t my-base:latest .

apt-getคำสั่งประสบความสำเร็จในบางเวลาและล้มเหลวในบางเวลาโดยไม่ต้องเปลี่ยนแปลงอะไรของฉัน มันดูเหมือนว่าจะเคยประสบความสำเร็จเมื่อฉันเรียกใช้งานบนเครื่องพัฒนาท้องถิ่นของฉัน แต่ไม่บ่อย ( แต่ไม่เสมอ!) เมื่อฉันทำงานบนเครื่อง EC2 นอกจากนี้ดูเหมือนว่าจะทำงานapt-get updateสองครั้งติดต่อกันก่อนที่apt-get installจะช่วย แต่ฉันก็ไม่ได้คิดบวกกับประโยคสองประโยคสุดท้ายเหล่านั้น

ความคิดใด ๆ ที่อาจเกิดขึ้น มีบางสิ่งในการรับ -pt ที่แคชเวลาและจากนั้นคาดว่าจะเป็นปัจจุบันหรือไม่

คำตอบ:


22

นี่เป็นปัญหาที่คุณจะเห็นบ่อยขึ้นกับภาพนักเทียบท่าเพราะที่เก็บข้อมูลที่คุณกำลังเข้าถึงมีการเปลี่ยนแปลงบ่อยครั้ง แต่ภาพพื้นฐาน (และเป็นข้อมูลเมตาที่แคช)

ลองใช้apt-get clean && apt-get updateก่อนที่คุณจะติดตั้งแพ็คเกจ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.