Получите «Отказ в соединении» при подключении к серверу MySQL, построенному Docker - PullRequest
0 голосов
/ 12 мая 2018

Я собрал php-apache и mysql контейнеры с помощью docker.Это мой docker-compose.yml

voc_server:
  image: php:apache
  container_name: voc_server
  working_dir: /var/www/html
  ports:
    - "8080:80"
  volumes:
    - .:/var/www/html
  links:
    - voc_mysql
voc_mysql:
  image: mysql:5
  container_name: voc_mysql
  ports:
      - "3307:3306"
  environment:
    MYSQL_ROOT_PASSWORD: password

Я запускаю docker-compose, и они отлично стартовали.Я могу получить доступ к MySQL через верстак.Это мой php-код:

<?php
$servername = "127.0.0.1:3306";
$username = "root";
$password = "password";

// Create connection
$conn = new mysqli($servername, $username, $password);

// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}
echo "Connected successfully";
?>

Я получил эту ошибку

Предупреждение: mysqli :: __ construct (): (HY000 / 2002): соединение отклонено в / var / www/html/index.php в строке 7 Соединение не удалось: соединение отклонено

Есть мысли?В чем может быть моя проблема?

1 Ответ

0 голосов
/ 12 мая 2018

Я считаю, что номер порта в вашем коде должен быть 3306 вместо 3307 127.0.0.1:3306

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