Настраиваем прокси сервер на платформе Docker
Пошаговое руководство по настройке прокси-сервера в Docker через командную строку (CLI) и конфигурационный файл config.json. Зачем нужен Docker прокси.
Олександр Л.
12 июня 2025
2635
2635
12 июня 2025
Настройка прокси сервера может потребоваться на платформе Docker в ряде случаев. Самыми распространёнными являются обход лимитов веб-провайдера и проведение тестов разработанного вами ПО во многих геолокациях. Начнём с рассмотрения понятия Докера.
Что собой являет Докер
Докером называется набор продуктов, реализованных по принципу «платформа как услуга» (PaaS), которые используют виртуализацию на уровне ОС, чтобы доставлять программное обеспечение в пакетах, называемых контейнерами, то есть, производить контейнеризацию пакетов. У сервиса предусмотрены разные по оплате уровни: бесплатный и премиум с расширенными функциями. Данное программное обеспечение было выпущено в 2013 году. Иначе говоря, Докером называют платформу для разработки, доставки и запуска программного обеспечения, в которой можно отделить ваше ПО от вашей инфраструктуры. Таким образом, собранный контейнер можно запускать на разных ОС. Кроме того, вам будет приятно узнать, что платформа Docker поддерживает SSL, дающий отличную степень информационно-сетевой безопасности при работе с ней, в частности, при тестировании работы приложений. Контейнеризируемая информация содержит:
- Само ПО, запуск которого требуется разработчиком;
- Среду исполнения — виртмашину с набором минимально необходимых процессов;
- Требуемые для запуска ПО файлы;
- Сервер.
Настраиваем прокси в Докере
Имеются 2 пути настройки: посредством командной строки и используя конфиг. Работа в ком строке выглядит так:
- Поскольку вы будете использовать параметр
proxy.example.com:Port, вам надо узнать айпи адрес своего proxy и используемый port. - В ком строке пишем команду
docker build, которая создаёт конфиг. В ней необходимо использовать аргумент--build-arg. Полная команда будет выглядеть таким образом: Bashdocker build --build-arg HTTP_PROXY="http://proxy.example.com:Port" . - Затем в командной же строке вводим команду
docker runдля запуска созданного конфига. Необходимо использовать аргумент--env. Полная команда будет выглядеть следующим образом: Bashdocker run --env HTTP_PROXY="http://proxy.example.com:Port" redis
Настройка Docker прокси с помощью конфига выглядит так:
- В рабочей директории находите папку
.docker. В ней должен быть файл, названныйconfig.json. Создайте его в случае отсутствия. - В файле, используя нравящийся вам кодовый редактор, вводите строки:
JSON
{ "proxies": { "default": { "httpProxy": "http://proxy.example.com:Port", "httpsProxy": "https://proxy.example.com:Port", "ftpProxy": "https://proxy.example.com:Port", "noProxy": "*.test.example.com,.example.org,127.0.0.0/8" } } } - На месте
proxy.example.com:Portдолжны быть указаны данные вашего айпи и port, как и в примере с ком строкой. - В файле конфига, как видно из кода выше, вы можете использовать 4 варианты прокси:
- HttpProxy — для http варианта с отсутствующим шифрованием;
- HttpsProxy — для https варианта с имеющимся шифрованием;
- ftpProxy — для ftp варианта с целью передачи файлов, используя ftp;
- noProxy — для направления прямого трафика.
Аналогичные варианты прокси вы должны использовать и при работе с ком строкой, зависимо от того, каков ваш прокси. После сохранения файла конфига docker proxy, указанные вами сведения будут применяться ко всем новым контейнерам и для уже готовых контейнеров, загружаемых из репозитория Докера.
