Passare comandi mysql in un container MariaDB

Da ElettraWiki.


Introduzione

Può capitare di dover impartire comandi con un client mysql per ottenere output o magari per un dump o un restore di un DB all'interno di un container che fornisce servizio DB tramite server MariaDB, sprovvisto di funzioni client.

Scenario

  • Container A (MariaDB)
  • Container B (Applicazione)

I due container parlano tra di loro tramite la rete di Docker per cui A non ha bisogno di esporre alcuna porta di comunicazione, saremo costretti a trovare un'altra strada per parlare con il container A nel quale gira MariaDB. La prima cosa da fare è scoprire su quale rete Docker parlano i due container, per fare questo useremo docker network ls

skid@server:~$ docker network ls

NETWORK ID     NAME           DRIVER     SCOPE 864d33d040d4    bridge         bridge    local 0a9ae01920f8 AAAA_default bridge local 2f692e7703a0 BBBB_default bridge local 122a725b96cf host host local 914723dd5823 RETE_default bridge local a6638e80949f CCCC_default bridge local 3511c1079a34 DDDD_default bridge local skid@server:~$