суббота, 13 марта 2021 г.

Модули в Golang: частные модули, частный прокси, обслуживающий частные модули

Частный прокси-сервер может обслуживать частные модули, но не обслуживать также общедоступные модули. Команду go можно настроить для возврата к общедоступным источникам для модулей, которые недоступны на частном сервере.

Чтобы настроить команду go таким образом, установите следующие переменные среды, заменив https://proxy.corp.example.com на URL-адрес прокси и corp.example.com на префикс модуля:

GOPROXY=https://proxy.corp.example.com,https://proxy.golang.org,direct
GONOSUMDB=corp.example.com

Параметр GOPROXY указывает команде go сначала попытаться загрузить модули с https://proxy.corp.example.com. Если этот сервер отвечает 404 (Not Found) или 410 (Gone), команда go вернется к https://proxy.golang.org, а затем установит прямые подключения к репозиториям.

Параметр GONOSUMDB указывает команде go не использовать общедоступную базу данных контрольных сумм для аутентификации модулей, пути которых начинаются с corp.example.com.

Обратите внимание, что прокси, используемый в этой конфигурации, может по-прежнему контролировать доступ к общедоступным модулям, даже если он их не обслуживает. Если прокси-сервер отвечает на запрос с ошибочным статусом, отличным от 404 или 410, команда go не вернется к более поздним записям в списке GOPROXY. Например, прокси-сервер может ответить 403 (Forbidden) для модуля с неподходящей лицензией или с известными уязвимостями безопасности.


Читайте также:


Комментариев нет:

Отправить комментарий