Docker Engine daemon.json: заобикаляне на прокси за частни ECR и S3
Отчитайте изтеглянето на слоеве от S3, когато заобикаляте HTTP прокси за изтегляне на частни изображения от ECR през крайни точки на VPC.
Успешната връзка с частен регистър ECR не завършва изтеглянето на изображение. ECR предоставя манифеста, а Amazon S3 съхранява слоевете на изображението. Затова заобикаляне на прокси, което покрива само регистъра, може да остави изтеглянето на слоевете по друг път.
За частен достъп през крайни точки на VPC проверете и двата пътя:
- Крайната точка на интерфейса ECR и нейната конфигурация за частен DNS.
- Крайната точка на S3, свързаните с нея таблици за маршрутизиране и политиката, която разрешава достъп до кофата със слоеве на 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"
}
}
Обединете желаните записи с останалите настройки на daemon и съществуващия списък за заобикаляне. Ако други изтегляния от публични регистри могат да използват публичен посредник, списъкът с HTTP прокси сървъри предлага кандидати за прокси URL адреси без акаунт; запазете частните изключения за ECR и S3. Заменете акаунта, региона и името на хоста за изтегляне на слоеве с имената, които изтеглянето действително използва. Формите на имената в S3 и конфигурациите на крайните точки може да се различават; този пример не е изчерпателен списък с крайни точки на AWS. Прилагането на конфигурацията на daemon изисква рестартиране на предвидения daemon. Docker Desktop използва собствени прокси настройки.
Заобикалянето избира директен маршрут. То не може да създаде липсваща крайна точка на S3, да прикачи таблица за маршрутизиране, да предостави достъп до кофата или да поправи частен DNS. Потвърдете тези зависимости, преди да разширите заобикалянето към широки домейни на AWS.
Прокси настройките на контейнерите в клиента Docker не конфигурират изтеглянето на изображения от daemon. По същия начин команда на AWS CLI, която получава данни за вход в ECR, има собствена прокси конфигурация; включете нейната API дестинация, ако тази отделна заявка също се нуждае от частен достъп.