Docker Engine daemon.json: заобилажење проксија за приватни ECR и S3
Узми у обзир преузимања слојева са S3 када заобилазиш HTTP прокси за повлачење приватних ECR слика кроз VPC endpoint-ове.
Успешна веза са приватним ECR регистром не завршава повлачење слике. ECR испоручује манифест, а слојеве слике чува Amazon S3. Зато заобилажење које покрива само регистар може оставити преузимање слојева на другом путу.
За приватан приступ кроз VPC endpoint-ове провери оба пута:
- ECR интерфејс endpoint и његову конфигурацију приватног DNS-а.
- S3 endpoint, повезане рутне табеле и политику која дозвољава приступ ECR корпи слојева.
Затим стави одговарајућа имена заобилажења на процес који извршава повлачење. За нативни Docker Engine са постојећом прокси конфигурацијом у daemon.json, илустративна конфигурација за us-east-2 је:
{
"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"
}
}
Спој предвиђене уносе са осталим подешавањима демона и постојећом листом заобилажења. Ако друга преузимања са јавних регистара могу користити јавног посредника, листа HTTP прокси сервера нуди кандидате за прокси URL-ове без налога; сачувај заобилажења за приватни ECR и S3. Замени налог, регион и hostname за преузимање слојева именима која повлачење стварно користи. Облици S3 имена и конфигурације endpoint-ова могу се разликовати; овај пример није исцрпна листа AWS endpoint-ова. Примена конфигурације демона захтева предвиђени рестарт демона. Docker Desktop користи сопствена прокси подешавања.
Заобилажење бира директан пут. Оно не може створити S3 endpoint који недостаје, прикључити рутну табелу, дати приступ корпи или поправити приватни DNS. Потврди те зависности пре него што прошириш заобилажење на широке AWS домене.
Прокси подешавања контејнера у Docker клијенту не конфигуришу преузимања слика демона. Исто тако, AWS CLI команда која прибавља ECR акредитиве за пријаву има сопствену прокси конфигурацију; укључи њено API одредиште ако и тај одвојени захтев треба приватан приступ.