22 Gennaio 2018

Connettersi da un container docker al database della macchina host

A volte è comodo collegarsi da un container docker, al database delal machina host.

Per prima cosa dobbiamo vedere come l’ip della macchina host risolve dentro il container. Ci sono 2 modi.

Da dentro al container

apt update && apt install net-tools netcat
export MYSQL_HOST=$(route | awk '/default/ { print $2 }')

Usabile da php:
$mysql_host = exec("route | awk '/default/ { print $2 }'", $output, $exit_code);

In questo modo vedrete l’ip da chiamare dal container per raggiungere la macchina host

Da fuori il container

docker inspect project_php_1 | grep Gateway

Anche in questo modo avremo l’ip da chiamare dal container per raggiungere la macchina host

 

A questo punto nel container useremo l’ip trovato, ma bisogna essere certi che MySql sia raggiungibile dal container.

Nell impostazioni del server mysql accertarci che la riga bind-address sia così configurata:

bind-address = 0.0.0.0

 

 


Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *