Rehber Docker ile veri tabanı nasıl çalıştırılır?

Selamlar, Sosyal'in veri tabanı kategorisinde PostgreSQL, Microsoft SQL Server gibi veri tabanı çözümlerinin nasıl kurulacağı, çalıştırılacağı gibi sorular sıklıkla sorulduğundan bu tarz bir konu açmayı uygun buldum. Docker ile istediğiniz veri tabanı çözümünü saniyeler içerisinde kurup çalıştırabilirsiniz. Tabii öncelikle Docker nedir, buna kısaca değineyim.

Docker Nedir?​

Developers Learn that Downloading Docker Hubs is Not Always Safe -  GateKeeper Proximity Passwordless 2FA


Günümüz teknoloji ve yazılım geliştirme dünyasında verimlilik ile taşınabilirlik çok önemli iki unsur olarak karşımıza çıkıyor. Açık kaynaklı bir konteyner platformu olan Docker'ın, bu hedeflere ulaşmada temel bir araç haline geldiğini söylemek mümkün. Docker'ın temel mantığı, işletim sistemi bağımsız şekilde her türlü uygulamanın konteyner denilen paketlerde aynı şekilde çalışmasını garanti altına almak aslında. Windows'ta, Linux'ta ve MacOS'da uygulamaları konteyner formatında aynı şekilde çalıştırma özgürlüğünü sunar. Bunu nasıl yaptığı ayrı bir içeriğin konusu olduğu için daha sonra ele alacağım. :)

Docker Nasıl Kurulur?​

Docker'ı kurmak aslında oldukça basit, buradaki linkten Docker Desktop'u kurup çalıştırabilirsiniz. Windows'ta WSL desteğiyle çalıştırıldığını belirteyim.

Veri Tabanları Neden Docker ile Çalıştırılmalı?​

Veri tabanlarını kurmaya başlamadan önce şu soruya cevap vermiş olayım. Veri tabanı, yapısı gereği ağır ve karmaşık bir altyapıdır. Zaten bunları kurduğumuz sistemlere veri tabanı sunucusu deriz. Kuruldukları işletim sistemiyle bütünleşik çalışırlar. Bu yüzden kurma ve kaldırma süreçleri normal programlar gibi basit değildir.

Özellikle günlük kullanım amaçlı kişisel bilgisayarlarınıza veri tabanını direkt kurarsanız genel performans düşüklüğü yaşamanız muhtemel, çünkü işletim sisteminin birçok tarafında gerekli bileşenleri ve hizmetleri çalıştırılır. Bunları yönetmek çok basit değil, hatta sektörde bu işi yapanlar DBA (Database Admin) olarak tanınır.

İşte bu dezavantajlarla karşılaşmamak adına veri tabanını Docker içerisinde büyük bir kolaylık sunar. Docker'da konteyner olarak çalışan veri tabanları birbirlerini ve işletim sisteminin kendisini etkilemez, zira konteynerler yalıtkan yapılardır. Çalıştırmak istediğinizde çalışırlar, kapatmak istediğinizde kapanırlar, silmek istediğinizde de silinirler.

Docker ile Veri Tabanı Nasıl Çalıştırılır?​

Docker'ı kurduğunuzu varsayarak şimdi her veri tabanı için çalıştırma şeklini ayrı bir şekilde anlatacağım. Aşağıdaki komutlar yazıldığında veri tabanı imajı indirilecek ve saniyeler içerisinde Docker ile çalışmaya başlayacak. Veri tabanlarının parolası: Passw@rdTP1.

Microsoft SQL Server​

Docker Desktop uygulamasını açtıktan sonra Windows kullanıyorsanız PowerShell'i Linux veya MacOS kullanıyorsanız Terminal'i çalıştırıp aşağıdaki komutu çalıştırın. İndirme tamamlandığında konteynerin ID'si karşınıza çıkacak. Artık bağlanılmaya hazır bir MSSQL sunucunuz var.

docker run --name sqlserver-container -v sqlserver-data:/var/opt/mssql -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=Passw@rdTP1." -p 1433:1433 -d mcr.microsoft.com/mssql/server:latest

1747669437105.png


Docker'dan ayağa kaldırdığım MSSQL'e bağlanmak için SSMS aracını açıyorum. Giriş bilgilerini aşağıdaki görselde olduğu gibi giriyorum.

1747669521005.png

PostgreSQL​

Docker Desktop uygulamasını açtıktan sonra Windows kullanıyorsanız PowerShell'i Linux veya MacOS kullanıyorsanız Terminal'i çalıştırıp aşağıdaki komutu çalıştırın. İndirme tamamlandığında konteynerin ID'si karşınıza çıkacak. Artık bağlanılmaya hazır bir PostgreSQL sunucunuz var.

docker run --name postgres-container -v postgres-data:/var/lib/postgresql/data -e POSTGRES_PASSWORD=Passw@rdTP1. -p 5432:5432 -d postgres:latest

Docker'dan ayağa kaldırdığım PostgreSQL'e bağlanmak için PgAdmin aracını açıyorum. Giriş bilgilerini aşağıdaki GIF'te olduğu gibi giriyorum.

Kayıt_2025_05_19_18_56_00_738.gif

MySQL​

Docker Desktop uygulamasını açtıktan sonra Windows kullanıyorsanız PowerShell'i Linux veya MacOS kullanıyorsanız Terminal'i çalıştırıp aşağıdaki komutu çalıştırın. İndirme tamamlandığında konteynerin ID'si karşınıza çıkacak. Artık bağlanılmaya hazır bir MySQL sunucunuz var.

docker run --name mysql-container -v mysql-data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=Passw@rdTP1. -p 3306:3306 -d mysql:latest

Docker'dan ayağa kaldırdığım MySQL'e bağlanmak için MySQL Workbench aracını açıyorum. Giriş bilgilerini aşağıdaki GIF'te olduğu gibi giriyorum.

Kayıt_2025_05_19_20_06_12_172.gif


Okuduğunuz için teşekkürler.
 
Son düzenleme:
Eline sağlık. Database replica ve backup mimari hakkında makaleleri de yazılabilir. Büyük ve önemli projelerde direkt bu tarz kullanmamak lazım. Sunucu down olabilir.
Kesinlikle, zaten burada amaç kişisel çapta olan veya ödev niteliğinde temel veri tabanı ihtiyacını gidermek.
 

Technopat Haberler

Geri
Yukarı