503 teenus pole saadaval: kuidas veenda dokki oma ubuntu sõltuvusi värskendama

Hiljuti proovisin oma MacOS-i dokkide konteinerit üles ehitada ja seeläbi sattusin probleemini, et doki konteiner ei saanud ubuntu sõltuvusi alla laadida.

Kuna selle probleemi lahenduse leidmiseks kulus minu kolleegidel ja minul üsna palju aega, loodan, et meie lähenemisviisi ja lõpliku lahenduse järgmised dokumendid aitavad teil mõne tunni uurimistööd kokku hoida.

Veateade

Üks dokkide konteiner, mille sain oma kliendilt, ei ehitatud minu masinale. Kõigi minu teiste meeskonna kolleegide jaoks töötas see suurepäraselt. Kuid minu terminal teatas, et ubuntu teenus pole saadaval:

W: hoidlal 'http://security.ubuntu.com/ubuntu xenial-security Release' puudub väljalaskefail. W: hoidlal 'http://archive.ubuntu.com/ubuntu xenial Release' puudub väljalaskefail. W: hoidlal 'http://archive.ubuntu.com/ubuntu xenial-updates Release' ei ole väljalaskefaili. W: hoidlal 'http://archive.ubuntu.com/ubuntu xenial-backports Release' puudub väljalaskefail. E: http://security.ubuntu.com/ubuntu/dists/xenial-security/main/binary-amd64/Packages 503 teenus pole saadaval [IP: 91.189.91.14 80] E: http: // allalaadimine ebaõnnestus archive.ubuntu.com/ubuntu/dists/xenial/main/binary-amd64/Packages 503 teenus pole saadaval [IP: 91.189.88.174 80] E: http://archive.ubuntu.com/ubuntu/dists/xenial ei õnnestunud alla laadida -värskendused / main / binary-amd64 / Paketid 503 teenus pole saadaval [IP: 91.189.88.174 80] E: http://archive.ubuntu.com/ubuntu/dists/xenial-backports/main/binary-amd64/ allalaadimine ebaõnnestus Paketid 503 teenus pole saadaval [IP: 91.189.88.162 80] E: Mõnede indeksfailide allalaadimine nurjus. Neid on ignoreeritud või kasutatakse nende asemel vanu.

Kõigepealt kontrollisin, kas IP-d on minu kohalikust arvutist tegelikult kättesaadavad:

vidin http://security.ubuntu.com/ubuntu vidin http://archive.ubuntu.com/ubuntu

Mõlemad aadressid suudeti lahendada ja jõuda. Võimaliku kõrvalmõju välistamiseks kõigist muudest Dockerfile'i käskudest lõin lihtsa Dockerfile, mis ehitab ainult ubuntu keskkonna.

Ubuntu-st: 16.04 käivitage CMD värskendus apt-get update [“/ bin / bash”]

Samuti see ei töötanud ja tulemuseks olid samad 503 tõrketeated.

Google kogus tabamuse järgmise artikliga, mis tegi ettepaneku kontrollida DNS-i kirjeid. Kahjuks ei aidanud see ka. Täpselt sama veakoodiga kokkulangevusi oli ainult paar. Ükski ei pakkunud siiski lahendust.

Siis algas detektiivitöö: Kuna ilmnes veakood 503, oli tõenäoliselt tegemist valesti tegutseva puhverserveriga. Isegi siis polnud ma ühestki puhverserveri käimisest teadlik. Sellepärast hakkasin kontrollima kõiki masinas olevaid kohti, kus mõned endise puhverserveri installijäägid võivad peituda:

1. Kontrollige cntlm.conf

Kontrollige, kas saate oma cntlm.conf-failis kahtlaseid ridu märgata. Selle faili leiate kataloogist /usr/local/etc/cntlm.conf

2. Kontrollige hostfaili

Kontrollige hostfaili, kas pole sekkuvaid kirjeid. Faili leiate kataloogist / etc / hosts

3. Kontrollige võrgu puhverserveri sätteid

Minge oma Mac'i süsteemieelistuste juurde. Avage jaotis Võrk, valige oma praegune võrk, minge jaotisse Täpsemalt> Puhverserverid ja kontrollige veelkord sätteid.

Võib-olla lahendas teie probleem juba ühe ülaltoodud sammuga. Minu puhul see ei aidanud. Pärast tunde, mis olid põhimõtteliselt täidetud ülaltoodud toimingute kordamisega, jõudsin lõpuks üsna ilmselgesse, kuid minu jaoks üsna varjatud asukohta:

4. Dockeri töölaua puhverserveri sätted

Kontrollige rakenduse Docker Desktop puhverserveri sätteid.

Kui käsitsi puhverserver on sisse lülitatud, võib see olla see. Vähemalt nii lahendas minu jaoks selle probleemi: Docker ei kasutanud süsteemi puhverserverit, vaid käsitsi, mis pidi olema juhuslikult nädalaid tagasi konfigureeritud. Pärast sätte muutmist süsteemi puhverserveriks töötasid mõlemad Dockerfiilid suurepäraselt.