Πώς να φτιάξεις MySQL σε Docker container βήμα-βήμα
Απρ 02, 2019
ubuntu code snippets docker knowledge base
Εγκατάσταση Docker
Δες εδώ πώς να βάλεις Docker σε Ubuntu: Πώς να εγκαταστήσεις Docker στο Ubuntu; (άνοιγμα σε νέα καρτέλα).
Τρέξε MySQL container στο φόντο
Ο κωδικός root είναι "test". Το container τρέχει detached και σβήνεται αυτόματα στο τέλος.
>> docker run --rm -it -e MYSQL_ROOT_PASSWORD=test -d mysql
# -d: Τρέχει στο φόντο και δείχνει το ID
# --rm: Το διαγράφει αυτόματα όταν σταματήσει
Δες τα ενεργά containers
>> 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
Μπες στο MySQL shell
>> 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>
Δες ρυθμίσεις container
Εμφανίζει δίκτυα, volumes και λοιπές λεπτομέρειες.
>> docker inspect 8ee2e6c8174d
[
{
"Id": "8ee2e6c8174d4138026f1d54addf9aadc7fbe22727c7f1fb9ca996ce5f7601b2",
"Created": "2019-03-28T20:53:46.84185469Z",
"Path": "docker-entrypoint.sh",
"Args": [
"mysqld"
],
"State": {
"Status": "running",
"Running": true,
"Paused": false,
...
"Networks": {
"bridge": {
"IPAMConfig": null,
"Links": null,
"Aliases": null,
"NetworkID": "4c9f618087d8f2e6924e7683cfb98055d8cc9a4ec8d0427bd188b5b7c34c0b3f",
"EndpointID": "cd5d96ad898831d3cc2d0941633533fdf8dcc6cdb0564164c49cad1a2399e8bf",
"Gateway": "172.17.0.1",
"IPAddress": "172.17.0.2",
"IPPrefixLen": 16,
"IPv6Gateway": "",
"GlobalIPv6Address": "",
"GlobalIPv6PrefixLen": 0,
"MacAddress": "02:42:ac:11:00:02",
"DriverOpts": null
}
}
}
]
Σύνδεση στο MySQL με IP
mysql -u root -ptest -h 172.17.0.2
Δες όλα τα containers (τρέχοντα και stopped)
>> 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
Δες όλες τις images
>> docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
mysql latest 7bb2586065cd 45 hours ago 477MB