VS Code Dev Containers: настройки прокси для сборки и выполнения
remoteEnv охватывает подпроцессы VS Code; общесистемное окружение выполнения, входные данные сборки Dockerfile и загрузка базовых образов относятся к разным владельцам.
Используйте этап неудачного запроса, чтобы выбрать источник конфигурации:
| Процесс | Входные данные прокси для проверки |
|---|---|
| VS Code и связанные удалённые подпроцессы | remoteEnv в devcontainer.json |
| Окружение выполнения всего контейнера | containerEnv для настройки образа/Dockerfile; окружение службы для Compose |
| Dockerfile RUN | Аргументы сборки через прокси, включая прокси по умолчанию клиента Docker |
| Загрузка базового образа | Исходящая конфигурация демона Docker |
Для первой строки объедините фрагмент вроде этого:
"remoteEnv": {
"HTTP_PROXY": "http://proxy.example:8080",
"HTTPS_PROXY": "http://proxy.example:8080"
}Загрузчик должен поддерживать эти переменные; при необходимости используйте имена в нижнем регистре. Для разрешённых публичных загрузок список HTTP-прокси предлагает кандидатов для этих адресов remoteEnv. После изменения пересоберите или откройте заново через жизненный цикл Dev Containers.
Окружение выполнения remoteEnv слишком поздно для более ранней сборки или загрузки образа. Избегайте хранения личных учётных данных прокси в слоях образа с помощью ENV.
Конечная точка также должна быть доступна из контейнера. localhost означает именно этот контейнер; прокси на хосте нужны адрес, предоставляемый выбранной платформой Docker, и доступный прослушиватель. host.docker.internal в Desktop не является универсальным интерфейсом Linux.