Come installare MySQL in un container Docker?
Apr 02, 2019
ubuntu code snippets docker knowledge base
Installa Docker
Per montare Docker su Ubuntu, dai un'occhiata a questa guida pratica:
Come installare Docker su Ubuntu?.
Avviamo un container MySQL in background. La password per l'utente root è "test".
>> docker run --rm -it -e MYSQL_ROOT_PASSWORD=test -d mysql
# -d: esegue il container in background e mostra l'ID
# --rm: elimina automaticamente il container alla chiusura
Controlla i container attivi
>> docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
8ee2e6c8174d mysql "docker-entrypoint.s…" 9 seconds ago Up 7 seconds 3306/tcp, 33060/tcp condescending_snyder
Accedi alla shell MySQL
>> docker exec -it 8ee2e6c8174d mysql -u root -ptest
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 9
Server version: 8.0.15 MySQL Community Server - GPL
mysql>
Esamina la configurazione del container
Visualizza rete, volumi e dettagli vari.
>> docker inspect 8ee2e6c8174d
[
{
"Id": "8ee2e6c8174d4138026f1d54addf9aadc7fbe22727c7f1fb9ca996ce5f7601b2",
"Created": "2019-03-28T20:53:46.84185469Z",
"State": {
"Status": "running",
"Running": true,
"Paused": false,
...
"Networks": {
"bridge": {
"IPAddress": "172.17.0.2",
"Gateway": "172.17.0.1",
...
}
}
}
]
Connettiti a MySQL via IP
mysql -u root -ptest -h 172.17.0.2
Lista container attivi e fermati
>> docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
8ee2e6c8174d mysql "docker-entrypoint.s…" 2 minutes ago Up 2 minutes 3306/tcp, 33060/tcp condescending_snyder
913f33f5a848 mysql "docker-entrypoint.s…" 12 minutes ago Exited (0) 11 minutes ago jovial_dubinsky
b36cf8b3b664 mysql "docker-entrypoint.s…" 22 minutes ago Exited (1) 22 minutes ago cocky_mcnulty
Visualizza tutte le immagini
>> docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
mysql latest 7bb2586065cd 45 hours ago 477MB