Docker Konteynerinde MySQL Kurulumu: Adım Adım Rehber
Docker ile MySQL Konteynerini Yönetme
Docker Kurulumu
Öncelikle sisteminizde Docker'ın yüklü olması gerekir. Ubuntu üzerine Docker kurulumu için bu rehberimizi inceleyebilirsiniz.
MySQL Konteynerini Başlatmak
Aşağıdaki komut ile arka planda çalışacak bir MySQL konteyner oluşturabilirsiz. Root kullanıcısı için şifre "test" olarak ayarlanmıştır.
docker run --rm -it -e MYSQL_ROOT_PASSWORD=test -d mysql
Komuttaki parametrelerin anlamı:
-d— Konteyneri arka planda çalıştırır ve konteyner kimliğini gösterir--rm— Konteyner durdurulduğunda otomatik olarak silinir
Aktif Konteynerleri Kontrol Etme
Şu anda çalışan konteynerlerinizin listesini görmek için:
docker ps
Çıktı örneği:
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 Kabuğuna Bağlanma
Konteyner içindeki MySQL veritabanına erişmek için:
docker exec -it 8ee2e6c8174d mysql -u root -ptest
Başarılı bağlantıda şöyle bir hoş geldiniz mesajı alırsınız:
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>
Konteyner Ayarlarını İncelemek
Konteynerin ağ yapılandırması, bağlı diskler ve diğer detayları görmek için:
docker inspect 8ee2e6c8174d
Bu komut, konteynerle ilgili tüm teknik bilgileri JSON formatında döndürür. Ağ ayarlarında konteyner IP adresi (örneğin 172.17.0.2) gibi önemli bilgiler yer alır.
IP Adresi Kullanarak Bağlanma
Konteyner IP adresini öğrendikten sonra, dış bir uygulamadan MySQL'e bağlanabilirsiniz:
mysql -u root -ptest -h 172.17.0.2
Tüm Konteynerleri Görüntülemek
Hem çalışan hem de durdurulmuş konteynerlerin tamamını listelemek için:
docker ps -a
Çıktı örneği:
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
İndirilen İmajları Kontrol Etme
Sisteminizde bulunan Docker imajlarının listesini görmek için:
docker images
Çıktı örneği:
REPOSITORY TAG IMAGE ID CREATED SIZE
mysql latest 7bb2586065cd 45 hours ago 477MB