{"id":1190,"date":"2025-11-15T12:17:07","date_gmt":"2025-11-15T09:17:07","guid":{"rendered":"https:\/\/markahost.com.tr\/blog\/?p=1190"},"modified":"2025-11-17T17:12:06","modified_gmt":"2025-11-17T14:12:06","slug":"docker-nedir-temel-docker-komutlari-nelerdir","status":"publish","type":"post","link":"https:\/\/markahost.com.tr\/blog\/docker-nedir-temel-docker-komutlari-nelerdir\/","title":{"rendered":"Docker Nedir? Temel Docker Komutlar\u0131 Nelerdir?"},"content":{"rendered":"<p>Uygulama olu\u015fturmak, \u00e7al\u0131\u015ft\u0131rmak ve y\u00f6netmek gibi i\u015flemlerin kolay bir hal almas\u0131n\u0131 sa\u011flayan a\u00e7\u0131k kaynakl\u0131 yaz\u0131l\u0131m platformuna Docker ad\u0131 verilmektedir. G\u00fcn\u00fcm\u00fczde yedi milyondan fazla \u00e7al\u0131\u015fmada kullan\u0131ld\u0131\u011f\u0131 bilinen Docker yaz\u0131l\u0131m platformu, kurulu olan bilgisayarlar\u0131n i\u015fletim sisteminin sanalla\u015ft\u0131r\u0131l\u0131p uygulamada soyutla\u015ft\u0131rmay\u0131 m\u00fcmk\u00fcn hale getirmektedir. B\u00f6ylece haz\u0131rlanm\u0131\u015f olan uygulamalar\u0131n altyap\u0131dan ayr\u0131lmas\u0131n\u0131 sa\u011flamaktad\u0131r.<\/p>\n<p>Kurulumu 2008 y\u0131l\u0131nda Somon Hykes taraf\u0131ndan ger\u00e7ekle\u015ftirilen Docker platformunun tan\u0131t\u0131m\u0131 2013 y\u0131l\u0131nda ger\u00e7ekle\u015fmi\u015ftir. Tan\u0131t\u0131m\u0131n\u0131n ard\u0131ndan ise g\u00fcn\u00fcm\u00fcz\u00fcn teknoloji devlerinin ilgisini \u00e7ekmeyi ba\u015farm\u0131\u015ft\u0131r. IBM, Microsoft gibi \u00f6nemli isimlerin teknolojik yeniliklere katk\u0131 sa\u011flamak amac\u0131yla yapm\u0131\u015f oldu\u011fu yat\u0131r\u0131mlarla \u00e7ok daha fazla dikkat \u00e7ekmi\u015ftir. Docker platformunun ticari versiyonu ise Docker Inc. taraf\u0131ndan sat\u0131\u015fa sunulmu\u015ftur.<\/p>\n<p>Docker temel \u00f6zelliklerinden s\u00f6z edecek olursak da uygulama geli\u015ftirme, uygulamalar\u0131n test edilmesi gibi i\u015flemlerin kolayla\u015fmas\u0131nda \u00f6nemli bir rol \u00fcstlenmektedir. Bile\u015fen birle\u015fimlerinin seri bir hal almas\u0131, kod g\u00f6nderimleri s\u0131ras\u0131nda kar\u015f\u0131la\u015f\u0131labilecek sorunlar\u0131n \u00f6nlenmesi gibi etkileri bulunmaktad\u0131r. \u00d6rnek vermek gerekirse sistem i\u00e7erisinde kullan\u0131lmakta olan bir uygulaman\u0131n iki farkl\u0131 s\u00fcr\u00fcm\u00fcn\u00fcn \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flamaktad\u0131r. Bunun i\u00e7in de iki tane Docker container kullan\u0131lmaktad\u0131r. Docker ile g\u00f6nderilen kod h\u0131zl\u0131 bir \u015fekilde test edilmektedir. Ayr\u0131ca s\u00f6z konusu yaz\u0131l\u0131m platformunun kullan\u0131m\u0131 san\u0131landan \u00e7ok daha basittir. Platform i\u00e7erisindeki i\u015flemler ise komut sat\u0131r\u0131 arabirimiyle birlikte sunulmaktad\u0131r. Her yerde \u00e7al\u0131\u015fmaya uygun olan Docker konteynerleri ile her noktada \u00e7al\u0131\u015ft\u0131rmak m\u00fcmk\u00fcnd\u00fcr.<\/p>\n<h2>Docker Nedir?<\/h2>\n<p><img decoding=\"async\" class=\"alignnone wp-image-1192 size-donovan-list-post\" src=\"https:\/\/markahost.com.tr\/blog\/wp-content\/uploads\/2025\/02\/spk-docker-featured-image-600x450.png\" alt=\"\" width=\"600\" height=\"450\" title=\"\"><\/p>\n<p><strong><a href=\"https:\/\/en.wikipedia.org\/wiki\/Docker_(software)\" target=\"_blank\" rel=\"noopener\">Docker<\/a><\/strong>, uygulamalar\u0131n \u00e7al\u0131\u015fmas\u0131 i\u00e7in gerekli t\u00fcm ba\u011f\u0131ml\u0131l\u0131klar\u0131yla birlikte izole bir ortamda bar\u0131nd\u0131r\u0131lmas\u0131n\u0131 sa\u011flayan a\u00e7\u0131k kaynakl\u0131 bir konteynerle\u015fme platformudur. Geli\u015ftiriciler i\u00e7in yaz\u0131l\u0131m\u0131n \u00e7al\u0131\u015faca\u011f\u0131 ortam\u0131 tek bir paket halinde haz\u0131rlamay\u0131 m\u00fcmk\u00fcn k\u0131lar. Bu sayede farkl\u0131 sistemlerde \u00e7al\u0131\u015ft\u0131r\u0131ld\u0131\u011f\u0131nda dahi ayn\u0131 performans ve uyumluluk sunar.<\/p>\n<p>Temel olarak Docker, i\u015fletim sistemi d\u00fczeyinde sanalla\u015ft\u0131rma sa\u011flar. Ancak geleneksel sanal makinelerden farkl\u0131 olarak Docker konteynerleri daha hafif, daha h\u0131zl\u0131 ve daha az kaynak t\u00fcketir. Bu da geli\u015ftiricilere daha esnek ve kontroll\u00fc bir geli\u015ftirme s\u00fcreci sunar.<\/p>\n<h2>Docker Ne \u0130\u015fe Yarar?<\/h2>\n<p>Docker; geli\u015ftirme, test ve da\u011f\u0131t\u0131m s\u00fcre\u00e7lerini kolayla\u015ft\u0131rmak amac\u0131yla kullan\u0131l\u0131r. Uygulaman\u0131n t\u00fcm \u00e7al\u0131\u015fma ortam\u0131n\u0131 tek bir birimde toplad\u0131\u011f\u0131 i\u00e7in &#8220;\u00e7al\u0131\u015ft\u0131\u011f\u0131 ortamda \u00e7al\u0131\u015f\u0131r&#8221; garantisi verir. B\u00f6ylece uygulaman\u0131n geli\u015ftirme ortam\u0131nda \u00e7al\u0131\u015f\u0131rken \u00fcretim ortam\u0131nda hata vermesi engellenmi\u015f olur.<\/p>\n<p>Docker ayn\u0131 zamanda h\u0131zl\u0131 entegrasyon sa\u011flar. S\u00fcrekli entegrasyon (CI) ve s\u00fcrekli teslimat (CD) s\u00fcre\u00e7lerinde otomatikle\u015ftirme sa\u011flar. Bu da kod g\u00f6nderiminden canl\u0131 yay\u0131na kadar t\u00fcm s\u00fcrecin kontrol alt\u0131nda ve standart \u015fekilde ilerlemesini m\u00fcmk\u00fcn k\u0131lar.<\/p>\n<h2>Docker Nerede Kullan\u0131l\u0131r?<\/h2>\n<p>Docker; yaz\u0131l\u0131m geli\u015ftirme, test, \u00fcretim, mikro hizmet mimarisi, b\u00fcy\u00fck veri, DevOps s\u00fcre\u00e7leri ve bulut tabanl\u0131 altyap\u0131larda aktif olarak kullan\u0131lmaktad\u0131r. Ayr\u0131ca sunucu konsolidasyonu, uygulama ta\u015f\u0131nabilirli\u011fi ve izole test ortamlar\u0131 olu\u015fturma gibi senaryolarda da tercih edilir.<\/p>\n<p><a href=\"https:\/\/markahost.com.tr\/kurumsal-hosting\" data-internallinksmanager029f6b8e52c=\"7\" title=\"kurumsal hosting\">Kurumsal<\/a> firmalar Docker&#8217;\u0131 uygulamalar\u0131n\u0131 h\u0131zl\u0131ca da\u011f\u0131tmak, bak\u0131m\u0131n\u0131 kolayla\u015ft\u0131rmak ve g\u00fcncellemeleri kesintisiz \u015fekilde yapmak i\u00e7in kullanmaktad\u0131r. Ayn\u0131 zamanda e\u011fitim ve geli\u015ftirme ortamlar\u0131nda da Docker ile standart, yeniden kullan\u0131labilir sistemler kurulabilir.<\/p>\n<h2>Temel Docker Bile\u015fenleri Nelerdir?<\/h2>\n<h3>Docker Daemon<\/h3>\n<p>Docker Daemon, arka planda \u00e7al\u0131\u015fan ve Docker konteynerlerinin olu\u015fturulmas\u0131, \u00e7al\u0131\u015ft\u0131r\u0131lmas\u0131 ve y\u00f6netilmesinden sorumlu olan s\u00fcre\u00e7tir. API isteklerini dinler ve istemciden gelen talimatlar\u0131 i\u015fletir. Docker platformunun \u00e7ekirde\u011fini olu\u015fturur.<\/p>\n<h3>Container Nedir?<\/h3>\n<p>Container, bir uygulaman\u0131n \u00e7al\u0131\u015fmas\u0131 i\u00e7in gereken kod, k\u00fct\u00fcphane ve ayarlar\u0131n tamam\u0131n\u0131 i\u00e7eren izole bir \u00e7al\u0131\u015fma ortam\u0131d\u0131r. Ayn\u0131 fiziksel sunucuda birden fazla konteyner \u00e7al\u0131\u015ft\u0131r\u0131labilir ve bu konteynerler birbirinden ba\u011f\u0131ms\u0131zd\u0131r. Bu yap\u0131, uygulamalar\u0131n ta\u015f\u0131nabilirli\u011fini ve y\u00f6netilebilirli\u011fini art\u0131r\u0131r.<\/p>\n<h3>Image Nedir?<\/h3>\n<p>Image, bir konteynerin \u00e7al\u0131\u015ft\u0131r\u0131lmas\u0131 i\u00e7in gerekli olan dosyalar\u0131n, ba\u011f\u0131ml\u0131l\u0131klar\u0131n ve talimatlar\u0131n bulundu\u011fu \u015fablondur. De\u011fi\u015ftirilemez yap\u0131dad\u0131r. Image\u2019lar, Dockerfile kullan\u0131larak olu\u015fturulur. Bir imajdan birden fazla konteyner ba\u015flat\u0131labilir.<\/p>\n<h3>Docker Registry Nedir?<\/h3>\n<p>Docker Registry, image\u2019lar\u0131n sakland\u0131\u011f\u0131 ve payla\u015f\u0131ld\u0131\u011f\u0131 merkezi depolama alan\u0131d\u0131r. En yayg\u0131n kullan\u0131lan public registry Docker Hub\u2019d\u0131r. Ayr\u0131ca \u00f6zel registry\u2019ler kurularak \u015firket i\u00e7i payla\u015f\u0131mlar da yap\u0131labilir.<\/p>\n<h3>Docker CLI Nedir?<\/h3>\n<p>Docker CLI (Command Line Interface), Docker ile etkile\u015fim kurmak i\u00e7in kullan\u0131lan komut sat\u0131r\u0131 arac\u0131d\u0131r. Konteyner ba\u015flatma, durdurma, silme gibi i\u015flemler CLI \u00fczerinden ger\u00e7ekle\u015ftirilir. CLI, Docker\u2019\u0131n y\u00f6netimini esnek ve otomatik hale getirir.<\/p>\n<h3>Docker Compose Nedir?<\/h3>\n<p>Docker Compose, \u00e7ok say\u0131da konteyner bar\u0131nd\u0131ran uygulamalar\u0131 tan\u0131mlamak ve y\u00f6netmek i\u00e7in kullan\u0131l\u0131r. <code>docker-compose.yml<\/code> adl\u0131 dosya i\u00e7erisinde servisler, a\u011f ayarlar\u0131 ve hacimler tan\u0131mlanabilir. \u00d6zellikle mikro hizmet yap\u0131lar\u0131nda \u00f6nemlidir.<\/p>\n<h2>Temel Docker Komutlar\u0131<\/h2>\n<p>Docker ile \u00e7al\u0131\u015f\u0131rken en s\u0131k kullan\u0131lan baz\u0131 temel komutlar a\u015fa\u011f\u0131da listelenmi\u015ftir. Bu komutlar sayesinde konteynerleri y\u00f6netmek, imajlar\u0131 olu\u015fturmak ve sistem kaynaklar\u0131n\u0131 kontrol etmek m\u00fcmk\u00fcnd\u00fcr.<\/p>\n<ul>\n<li><code>docker version<\/code>: Y\u00fckl\u00fc Docker s\u00fcr\u00fcm\u00fcn\u00fc ve sistem bilgilerini g\u00f6sterir.<\/li>\n<li><code>docker pull [image_ad\u0131]<\/code>: Belirtilen imaj\u0131 Docker Hub\u2019dan indirir.<\/li>\n<li><code>docker images<\/code>: Yerel sistemdeki mevcut Docker imajlar\u0131n\u0131 listeler.<\/li>\n<li><code>docker run [image_ad\u0131]<\/code>: Belirtilen imajdan yeni bir konteyner ba\u015flat\u0131r.<\/li>\n<li><code>docker ps<\/code>: \u00c7al\u0131\u015fan konteynerleri listeler.<\/li>\n<li><code>docker ps -a<\/code>: T\u00fcm (\u00e7al\u0131\u015fan ve durmu\u015f) konteynerleri g\u00f6sterir.<\/li>\n<li><code>docker stop [container_id]<\/code>: Belirtilen konteyneri durdurur.<\/li>\n<li><code>docker rm [container_id]<\/code>: Belirtilen konteyneri siler.<\/li>\n<li><code>docker rmi [image_ad\u0131]<\/code>: Belirtilen imaj\u0131 sistemden kald\u0131r\u0131r.<\/li>\n<li><code>docker build -t [image_etiketi] .<\/code>: Dockerfile&#8217;dan bir imaj olu\u015fturur.<\/li>\n<li><code>docker exec -it [container_id] bash<\/code>: Bir konteyner i\u00e7inde etkile\u015fimli komut \u00e7al\u0131\u015ft\u0131r\u0131r.<\/li>\n<\/ul>\n<p>Bu komutlar, Docker\u2019\u0131n temel i\u015flevlerini yerine getirmek i\u00e7in gereklidir ve geli\u015ftiricilerin g\u00fcnl\u00fck kullan\u0131mda s\u0131kl\u0131kla ba\u015fvurdu\u011fu ara\u00e7lard\u0131r.<\/p>\n<h2>Dockerin Avantajlar\u0131 Nedir?<\/h2>\n<p>G\u00fcn\u00fcm\u00fczde pek \u00e7ok i\u015fletmenin uygulama haz\u0131rlama, \u00e7al\u0131\u015ft\u0131rma ve y\u00f6netim a\u015famalar\u0131n\u0131 daha basit hale getirmek i\u00e7in Docker yaz\u0131l\u0131m platformunu kulland\u0131\u011f\u0131 bilinmektedir. Docker kullan\u0131m\u0131n\u0131n bu denli yo\u011fun olmas\u0131 ise kod g\u00f6nderiminin h\u0131zl\u0131 olmas\u0131, testten ge\u00e7irilmesi ve da\u011f\u0131t\u0131m\u0131n\u0131n sa\u011flanmas\u0131 gibi nedenlere ba\u011flanmaktad\u0131r. Di\u011fer yandan Docker tutarl\u0131 bir platformdur. Uygulama geli\u015ftiricilerin geli\u015ftirme s\u00fcre\u00e7lerini ge\u00e7irdikleri ortam\u0131n tutarl\u0131 bir \u015fekilde \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flamaktad\u0131r. Ayn\u0131 zamanda uygulaman\u0131n \u00fcretimle ilgili var olan sorunlar\u0131n\u0131n ortadan kald\u0131r\u0131lmas\u0131na yard\u0131mc\u0131 olmaktad\u0131r. Hatalar\u0131n tespit edilmesi, \u00e7\u00f6z\u00fcmle bulu\u015fturulmas\u0131 gibi etkileri mevcuttur.<\/p>\n<p>Docker platformlar\u0131n\u0131 inceledi\u011finiz zaman var olan ortamlar\u0131n g\u00fcvenli oldu\u011funu anlayabilirsiniz. Ayr\u0131ca Docker konteyner i\u00e7erisinde kullan\u0131lan uygulamalar birbirinden ayr\u0131lmaktad\u0131r. Bu durum her Docker konteyner se\u00e7ene\u011finin kendi kaynaklar\u0131n\u0131n bulundu\u011fu anlam\u0131na gelmektedir. Di\u011fer kaynaklarla etkile\u015fime girme gibi bir durum s\u00f6z konusu de\u011fildir. Yaln\u0131zca kendisine ait olan kaynaklar\u0131 kullanmaktad\u0131r. B\u00f6ylece trafik ak\u0131\u015f\u0131ndaki kontrol de g\u00fc\u00e7l\u00fc bir hal almaktad\u0131r. Ek olarak uygulaman\u0131n kullan\u0131m \u00f6mr\u00fc bitti\u011finde, konteyneri silebilirsiniz. Silme i\u015flemiyle birlikte de uygulama kald\u0131rmay\u0131 sorunsuzca tamamlam\u0131\u015f olabilirsiniz.<\/p>\n<h2>Docker ile Kubernetes Aras\u0131ndaki Farklar Nedir?<\/h2>\n<p>Docker ve Kubernetes genellikle birlikte an\u0131lsa da asl\u0131nda farkl\u0131 g\u00f6revler \u00fcstlenir. Docker, uygulamalar\u0131n konteynerler i\u00e7inde \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flar. Kubernetes ise bu konteynerlerin k\u00fcme h\u00e2linde y\u00f6netilmesini m\u00fcmk\u00fcn k\u0131lar.<\/p>\n<p>Docker, tek bir makine \u00fczerinde konteynerlerin olu\u015fturulmas\u0131 ve \u00e7al\u0131\u015ft\u0131r\u0131lmas\u0131yla ilgilenirken, Kubernetes bu konteynerleri \u00f6l\u00e7eklendirme, y\u00fck dengeleme ve hata tolerans\u0131 gibi g\u00f6revlerle merkezi olarak kontrol eder. B\u00fcy\u00fck altyap\u0131larda, Kubernetes ile onlarca Docker konteynerini otomatik \u015fekilde y\u00f6netmek m\u00fcmk\u00fcnd\u00fcr.<\/p>\n<p>Ayr\u0131ca Kubernetes, self-healing, rolling update ve servis ke\u015ffi gibi geli\u015fmi\u015f \u00f6zellikleri sayesinde \u00fcretim ortamlar\u0131nda kurumsal d\u00fczeyde kullan\u0131m kolayl\u0131\u011f\u0131 sa\u011flar.<\/p>\n<h2>Neden Docker Kullanmal\u0131s\u0131n\u0131z?<\/h2>\n<p>Docker, geli\u015ftirme ve \u00fcretim ortamlar\u0131nda tutarl\u0131l\u0131\u011f\u0131 sa\u011flar. Ayn\u0131 yaz\u0131l\u0131m\u0131n farkl\u0131 sistemlerde ayn\u0131 \u015fekilde \u00e7al\u0131\u015fmas\u0131n\u0131 garanti alt\u0131na al\u0131r. Bu, &#8220;\u00e7al\u0131\u015ft\u0131 ama sadece bende \u00e7al\u0131\u015f\u0131yor&#8221; sorunlar\u0131n\u0131 ortadan kald\u0131r\u0131r.<\/p>\n<p>Docker, kaynak kullan\u0131m\u0131n\u0131 optimize eder. Sanal makineler gibi a\u011f\u0131r sistemler yerine daha hafif konteyner yap\u0131s\u0131yla \u00e7al\u0131\u015ft\u0131\u011f\u0131 i\u00e7in donan\u0131m kaynaklar\u0131ndan tasarruf sa\u011flar. Ayr\u0131ca s\u00fcrekli entegrasyon s\u00fcre\u00e7lerine uyumlulu\u011fu ile yaz\u0131l\u0131m geli\u015ftirme d\u00f6ng\u00fcs\u00fcn\u00fc h\u0131zland\u0131r\u0131r.<\/p>\n<p>Ek olarak, a\u00e7\u0131k kaynak toplulu\u011fu taraf\u0131ndan geli\u015ftirilmeye devam edilmesi ve geni\u015f destek ekosistemi, Docker&#8217;\u0131 hem bireysel geli\u015ftiriciler hem de kurumsal ekipler i\u00e7in g\u00fc\u00e7l\u00fc bir ara\u00e7 h\u00e2line getirir.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Uygulama olu\u015fturmak, \u00e7al\u0131\u015ft\u0131rmak ve y\u00f6netmek gibi i\u015flemlerin kolay bir hal almas\u0131n\u0131 sa\u011flayan a\u00e7\u0131k kaynakl\u0131 yaz\u0131l\u0131m platformuna Docker ad\u0131 verilmektedir. G\u00fcn\u00fcm\u00fczde<\/p>\n","protected":false},"author":2,"featured_media":1191,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"rank_math_lock_modified_date":false,"footnotes":""},"categories":[1,20],"tags":[],"class_list":["post-1190","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-genel","category-teknoloji"],"_links":{"self":[{"href":"https:\/\/markahost.com.tr\/blog\/wp-json\/wp\/v2\/posts\/1190","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/markahost.com.tr\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/markahost.com.tr\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/markahost.com.tr\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/markahost.com.tr\/blog\/wp-json\/wp\/v2\/comments?post=1190"}],"version-history":[{"count":5,"href":"https:\/\/markahost.com.tr\/blog\/wp-json\/wp\/v2\/posts\/1190\/revisions"}],"predecessor-version":[{"id":1692,"href":"https:\/\/markahost.com.tr\/blog\/wp-json\/wp\/v2\/posts\/1190\/revisions\/1692"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/markahost.com.tr\/blog\/wp-json\/wp\/v2\/media\/1191"}],"wp:attachment":[{"href":"https:\/\/markahost.com.tr\/blog\/wp-json\/wp\/v2\/media?parent=1190"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/markahost.com.tr\/blog\/wp-json\/wp\/v2\/categories?post=1190"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/markahost.com.tr\/blog\/wp-json\/wp\/v2\/tags?post=1190"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}