การใช้ Docker รัน MySQL สำหรับ Development/Testing
Docker ให้สภาพแวดล้อมที่แยกต่างหาก (Isolated) พร้อม MySQL และ Dependencies ทั้งหมด เหมาะสำหรับทดสอบแอปพลิเคชัน
คำสั่งสร้าง Container
sudo docker run --rm --name=mysql-test \
-e MYSQL_ALLOW_EMPTY_PASSWORD=yes \
-d mysql/mysql-server
คำอธิบาย Flags:
--rm: ลบ Container และ Filesystem อัตโนมัติเมื่อหยุด--name: ตั้งชื่อ Container-e MYSQL_ALLOW_EMPTY_PASSWORD=yes: อนุญาต root password ว่าง-d: รันแบบ Detached (Background)
การเข้าถึง MySQL Shell
sudo docker exec -it mysql-test mysql -uroot
การเชื่อมต่อผ่าน TCP/IP (สำหรับ Client Application)
- หา IP ของ Docker Network Interface:
ip addr show docker0 - หา IP ของ Container:
sudo docker inspect mysql-test(ดู NetworkSettings.IPAddress) - สร้าง User และ Grant 権限:
CREATE USER 'root'@'' IDENTIFIED BY '';
GRANT ALL ON *.* TO 'root'@'' WITH GRANT OPTION;
การทำความสะอาด
sudo docker stop mysql-test
sudo docker rm mysql-test
สรุป: Docker ทำให้การตั้งค่า MySQL สำหรับทดสอบรวดเร็ว สะอาด และไม่ทิ้งของเหลือในเครื่อง