Docker Engine daemon.json: tarpinio serverio apėjimas privačiam ECR ir S3
Atsižvelkite į S3 sluoksnių atsisiuntimą, kai apeinate HTTP tarpinį serverį, kad per VPC taškus ištrauktumėte privačius ECR atvaizdus.
Sėkmingas prisijungimas prie privataus ECR registro dar nebaigia atvaizdo ištraukimo. ECR pateikia manifestą, o atvaizdo sluoksnius saugo Amazon S3. Todėl apėjimas, apimantis tik registrą, gali palikti sluoksnių atsisiuntimą kitame maršrute.
Privačiai prieigai per VPC taškus patikrinkite abu kelius:
- ECR sąsajos tašką ir jo privatų DNS nustatymą.
- S3 tašką, su juo susietas maršruto lenteles ir politiką, leidžiančią prieigą prie ECR sluoksnių bucket.
Tada įrašykite atitinkamus apėjimo vardus į procesą, kuris atlieka ištraukimą. Natyviam Docker Engine su esama daemon.json tarpinio serverio konfigūracija iliustracinė us-east-2 konfigūracija yra:
{
"proxies": {
"http-proxy": "http://proxy.example:8080",
"https-proxy": "http://proxy.example:8080",
"no-proxy": "123456789012.dkr.ecr.us-east-2.amazonaws.com,prod-us-east-2-starport-layer-bucket.s3.us-east-2.amazonaws.com"
}
}
Sujunkite numatytus įrašus su kitais daemon nustatymais ir esamu apėjimo sąrašu. Jei kiti viešų registrų atsisiuntimai gali naudoti viešą tarpininką, HTTP tarpinių serverių sąrašas pateikia kandidatus tarpinio serverio URL be paskyros; išsaugokite privačių ECR ir S3 apėjimus. Pakeiskite paskyrą, regioną ir sluoksnių atsisiuntimo hostname į tikrus ištraukimo metu naudojamus vardus. S3 pavadinimų formos ir taškų konfigūracijos gali skirtis; šis pavyzdys nėra išsamus AWS taškų sąrašas. Daemon konfigūracijos pritaikymas reikalauja numatyto daemon paleidimo iš naujo. Docker Desktop naudoja savo tarpinio serverio nustatymus.
Apėjimas pasirenka tiesioginį maršrutą. Jis negali sukurti trūkstamo S3 taško, prijungti maršruto lentelės, suteikti prieigos prie bucket ar sutaisyti privataus DNS. Patvirtinkite tas priklausomybes prieš išplėsdami apėjimą plačiam AWS domenų ratui.
Docker kliento konteinerio tarpinio serverio nustatymai nesukonfigūruoja daemon atvaizdų atsisiuntimo. Taip pat AWS CLI komanda, gaunanti ECR prisijungimo kredencialus, turi savo tarpinio serverio konfigūraciją; įtraukite jos API paskirties vietą, jei tas atskiras užklausimas taip pat reikalauja privačios prieigos.