как отправить запрос curl в PHP при использовании docker-compose без использования IP сервера - PullRequest
0 голосов
/ 21 января 2019

есть два docker контейнера, которые созданы docker compose. один из них отправляет запрос curl, а другой отправляет ответ обратно. Докер имеет внутренний сервер DNS, и я хочу использовать имя хоста вместо хоста IP.

однажды я использовал имя хоста для развертывания соединения с MySQL, но это не сработало для curl. докер-compose.yml:

version: '3'
services: 
  Panel:
    image: 'php:7.3.1-apache'
    volumes:
      - /home/user/php/Panel:/var/www/html
    ports:
      - '80:80'

  Authentication:
    image: 'php:7.3.1-apache'
    volumes:
      - /home/user/php/Authentication:/var/www/html
    ports:
      - '8080:80'

curl работает с IP-адресом хоста, и запрос:

$url = "http://192.168.60.128:8080";
$curl = curl_init();
curl_setopt_array($curl, array(
    CURLOPT_RETURNTRANSFER => 1,
    CURLOPT_URL => $url,
    CURLOPT_USERAGENT => 'Codular Sample cURL Request'
    ));

Мой запрос curl для имени хоста выглядит так:

$curl = curl_init('XXX.XXX.XXX.XXX');
curl_setopt($curl, CURLOPT_HTTPHEADER, array('Host: Authentication'));
curl_setopt($curl, CURLOPT_PORT, 8080);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);

и ответа нет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...