{"id":36093,"date":"2025-12-08T03:40:51","date_gmt":"2025-12-08T00:40:51","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/?p=36093"},"modified":"2025-12-08T03:40:51","modified_gmt":"2025-12-08T00:40:51","slug":"uzak-docker-hostlarini-docker-machine-ile-ubuntu-18-04-uzerinde-saglama-ve-yonetme","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/uzak-docker-hostlarini-docker-machine-ile-ubuntu-18-04-uzerinde-saglama-ve-yonetme\/","title":{"rendered":"Uzak Docker Hostlar\u0131n\u0131 Docker Machine ile Ubuntu 18.04 \u00dczerinde Sa\u011flama ve Y\u00f6netme"},"content":{"rendered":"<p><body><\/p>\n<h2>Uzak Docker Hostlar\u0131n\u0131 Docker Machine ile Ubuntu 18.04 \u00dczerinde Sa\u011flama ve Y\u00f6netme<\/h2>\n<h2>Giri\u015f<\/h2>\n<p>Modern yaz\u0131l\u0131m geli\u015ftirme ve da\u011f\u0131t\u0131m s\u00fcre\u00e7lerinde konteyner teknolojileri, \u00f6zellikle Docker, vazge\u00e7ilmez bir ara\u00e7 haline gelmi\u015ftir. Geli\u015ftiriciler ve sistem y\u00f6neticileri, uygulamalar\u0131n\u0131 izole edilmi\u015f ortamlarda \u00e7al\u0131\u015ft\u0131rmak, ta\u015f\u0131nabilirli\u011fi art\u0131rmak ve da\u011f\u0131t\u0131m s\u00fcre\u00e7lerini basitle\u015ftirmek i\u00e7in Docker&#8217;dan faydalan\u0131r. Ancak, Docker&#8217;\u0131 yerel makinenizin \u00f6tesinde, uzak sunucular, sanal makineler veya bulut platformlar\u0131 \u00fczerinde y\u00f6netmek, ilk bak\u0131\u015fta karma\u015f\u0131k g\u00f6r\u00fcnebilir. \u0130\u015fte tam bu noktada Docker Machine devreye girer.<\/p>\n<p>Docker Machine, Docker Engine&#8217;i \u00e7e\u015fitli sanalla\u015ft\u0131rma platformlar\u0131 ve bulut sa\u011flay\u0131c\u0131lar\u0131 \u00fczerinde otomatik olarak kurmak ve y\u00f6netmek i\u00e7in tasarlanm\u0131\u015f bir ara\u00e7t\u0131r. Bu makalede, Ubuntu 18.04 i\u015fletim sistemi \u00fczerinde Docker Machine&#8217;i nas\u0131l kuraca\u011f\u0131n\u0131z\u0131, farkl\u0131 ortamlarda (VirtualBox, DigitalOcean, AWS ve mevcut sunucular) uzak Docker hostlar\u0131n\u0131 nas\u0131l sa\u011flayaca\u011f\u0131n\u0131z\u0131 ve bu hostlar\u0131 nas\u0131l y\u00f6netece\u011finizi ad\u0131m ad\u0131m ele alaca\u011f\u0131z. Amac\u0131m\u0131z, Docker Machine&#8217;in sundu\u011fu kolayl\u0131\u011f\u0131 ve esnekli\u011fi tam anlam\u0131yla anlaman\u0131z\u0131 sa\u011flayarak, konteynerle\u015ftirilmi\u015f uygulamalar\u0131n\u0131z\u0131 daha verimli bir \u015fekilde da\u011f\u0131tman\u0131za ve y\u00f6netmenize yard\u0131mc\u0131 olmakt\u0131r.<\/p>\n<h2>\u00d6n Ko\u015fullar<\/h2>\n<p>Bu makaledeki ad\u0131mlar\u0131 uygulayabilmek i\u00e7in a\u015fa\u011f\u0131daki \u00f6n ko\u015fullar\u0131n sa\u011flanm\u0131\u015f olmas\u0131 gerekmektedir:<\/p>\n<p>*   <strong>Ubuntu 18.04 \u0130\u015fletim Sistemi:<\/strong> Docker Machine&#8217;i kuraca\u011f\u0131n\u0131z ve komutlar\u0131 \u00e7al\u0131\u015ft\u0131raca\u011f\u0131n\u0131z yerel makinenizin Ubuntu 18.04 olmas\u0131 gerekmektedir.<br \/>\n*   <strong>\u0130nternet Ba\u011flant\u0131s\u0131:<\/strong> Kurulum ve uzak host sa\u011flama i\u015flemleri i\u00e7in aktif bir internet ba\u011flant\u0131s\u0131 gereklidir.<br \/>\n*   <strong>Sudo Yetkileri:<\/strong> Kurulum ve baz\u0131 yap\u0131land\u0131rma ad\u0131mlar\u0131 i\u00e7in <code>sudo<\/code> yetkilerine sahip bir kullan\u0131c\u0131 hesab\u0131n\u0131z olmal\u0131d\u0131r.<br \/>\n*   <strong>Temel Linux Komut Bilgisi:<\/strong> Terminal kullan\u0131m\u0131 ve temel Linux komutlar\u0131 hakk\u0131nda bilgi sahibi olmak faydal\u0131d\u0131r.<br \/>\n*   <strong>SSH \u0130stemcisi:<\/strong> Uzak sunuculara ba\u011flanmak i\u00e7in bir SSH istemcisi (genellikle Ubuntu&#8217;da varsay\u0131lan olarak y\u00fckl\u00fcd\u00fcr) gereklidir.<br \/>\n*   <strong>Bulut Sa\u011flay\u0131c\u0131 Hesab\u0131 (iste\u011fe ba\u011fl\u0131):<\/strong> DigitalOcean veya AWS gibi bir bulut sa\u011flay\u0131c\u0131s\u0131nda hesap (ve ilgili API anahtarlar\u0131\/kimlik bilgileri) uzak hostlar\u0131 bulutta sa\u011flamak i\u00e7in gerekecektir.<br \/>\n*   <strong>VirtualBox (iste\u011fe ba\u011fl\u0131):<\/strong> Yerel testler i\u00e7in VirtualBox kullanmak isterseniz, sisteminize kurulu olmas\u0131 gerekir.<\/p>\n<h2>1. Docker Machine Kurulumu<\/h2>\n<p>Docker Machine&#8217;i Ubuntu 18.04 sisteminize kurmak olduk\u00e7a basittir. Genellikle ikili dosyas\u0131n\u0131 indirip \u00e7al\u0131\u015ft\u0131r\u0131labilir hale getirme ad\u0131mlar\u0131n\u0131 i\u00e7erir.<\/p>\n<h3>1.1. Gerekli Ba\u011f\u0131ml\u0131l\u0131klar\u0131n Y\u00fcklenmesi<\/h3>\n<p>Kuruluma ba\u015flamadan \u00f6nce sisteminizin g\u00fcncel oldu\u011fundan ve <code>curl<\/code> gibi temel ara\u00e7lar\u0131n y\u00fckl\u00fc oldu\u011fundan emin olal\u0131m:<\/p>\n<pre><code class=\"language-bash\">sudo apt update\nsudo apt upgrade -y\nsudo apt install curl -y<\/code><\/pre>\n<h3>1.2. Docker Machine \u0130kili Dosyas\u0131n\u0131n \u0130ndirilmesi<\/h3>\n<p>Docker Machine&#8217;in en son kararl\u0131 s\u00fcr\u00fcm\u00fcn\u00fc GitHub \u00fczerinden do\u011frudan indirebiliriz.<\/p>\n<p>1.  <strong>En Son S\u00fcr\u00fcm\u00fc Belirleme:<\/strong> Docker Machine&#8217;in GitHub yay\u0131nlar sayfas\u0131n\u0131 kontrol ederek en son s\u00fcr\u00fcm\u00fc bulabilirsiniz (\u00f6rne\u011fin, <code>v0.16.2<\/code>). Bu makale yaz\u0131ld\u0131\u011f\u0131 s\u0131rada <code>v0.16.2<\/code> en son s\u00fcr\u00fcmd\u00fcr, ancak siz kontrol etmelisiniz.<\/p>\n<p>2.  <strong>\u0130kili Dosyay\u0131 \u0130ndirme:<\/strong><br \/>\n    A\u015fa\u011f\u0131daki komutla ikili dosyay\u0131 indirelim. <code>{DOCKER_MACHINE_VERSION}<\/code> k\u0131sm\u0131n\u0131 buldu\u011funuz en son s\u00fcr\u00fcmle de\u011fi\u015ftirin.<\/p>\n<pre><code class=\"language-bash\">curl -L https:\/\/github.com\/docker\/machine\/releases\/download\/v0.16.2\/docker-machine-$(uname -s)-$(uname -m) -o \/tmp\/docker-machine<\/code><\/pre>\n<p>    Bu komut, sistem mimarinize uygun Docker Machine ikili dosyas\u0131n\u0131 indirir ve <code>\/tmp\/docker-machine<\/code> olarak kaydeder.<\/p>\n<p>3.  <strong>\u00c7al\u0131\u015ft\u0131r\u0131labilir Hale Getirme ve PATH&#8217;e Ekleme:<\/strong><br \/>\n    \u0130ndirdi\u011fimiz dosyay\u0131 \u00e7al\u0131\u015ft\u0131r\u0131labilir yapal\u0131m ve sistem PATH&#8217;inde bulunan bir dizine ta\u015f\u0131yal\u0131m ki her yerden eri\u015febilelim:<\/p>\n<pre><code class=\"language-bash\">sudo chmod +x \/tmp\/docker-machine\n    sudo mv \/tmp\/docker-machine \/usr\/local\/bin\/docker-machine<\/code><\/pre>\n<p>4.  <strong>Kurulumu Do\u011frulama:<\/strong><br \/>\n    Kurulumun ba\u015far\u0131l\u0131 olup olmad\u0131\u011f\u0131n\u0131 kontrol etmek i\u00e7in s\u00fcr\u00fcm bilgisini sorgulayal\u0131m:<\/p>\n<pre><code class=\"language-bash\">docker-machine version<\/code><\/pre>\n<p>    \u00c7\u0131kt\u0131 olarak <code>docker-machine version 0.16.2, build...<\/code> gibi bir ifade g\u00f6rmelisiniz.<\/p>\n<h3>1.3. Docker Compose Kurulumu (\u0130ste\u011fe Ba\u011fl\u0131 ama \u00d6nerilir)<\/h3>\n<p>Docker Machine ile uzak hostlar \u00fczerinde \u00e7ok konteynerli uygulamalar\u0131 y\u00f6netmek i\u00e7in Docker Compose kullanmak olduk\u00e7a yayg\u0131nd\u0131r. Docker Compose, Docker Machine&#8217;in do\u011frudan bir par\u00e7as\u0131 olmasa da, i\u015f ak\u0131\u015f\u0131n\u0131zda b\u00fcy\u00fck kolayl\u0131k sa\u011flar.<\/p>\n<p>1.  <strong>Docker Compose \u0130kili Dosyas\u0131n\u0131 \u0130ndirme:<\/strong><br \/>\n    En son Docker Compose s\u00fcr\u00fcm\u00fcn\u00fc indirmek i\u00e7in a\u015fa\u011f\u0131daki komutu kullan\u0131n. <code>{DOCKER_COMPOSE_VERSION}<\/code> k\u0131sm\u0131n\u0131 Docker Compose&#8217;un GitHub yay\u0131nlar sayfas\u0131ndan buldu\u011funuz en son kararl\u0131 s\u00fcr\u00fcmle de\u011fi\u015ftirin (\u00f6rne\u011fin, <code>v2.24.5<\/code>).<\/p>\n<pre><code class=\"language-bash\">curl -L https:\/\/github.com\/docker\/compose\/releases\/download\/v2.24.5\/docker-compose-$(uname -s)-$(uname -m) -o \/usr\/local\/bin\/docker-compose<\/code><\/pre>\n<p>2.  <strong>\u00c7al\u0131\u015ft\u0131r\u0131labilir Hale Getirme:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo chmod +x \/usr\/local\/bin\/docker-compose<\/code><\/pre>\n<p>3.  <strong>Kurulumu Do\u011frulama:<\/strong><\/p>\n<pre><code class=\"language-bash\">docker-compose version<\/code><\/pre>\n<p>    \u00c7\u0131kt\u0131 olarak <code>Docker Compose version v2.24.5<\/code> gibi bir ifade g\u00f6rmelisiniz.<\/p>\n<p>Art\u0131k Docker Machine ve Docker Compose sisteminize kuruldu ve uzak Docker hostlar\u0131n\u0131 sa\u011flamaya haz\u0131rs\u0131n\u0131z.<\/p>\n<h2>2. Uzak Docker Hostlar\u0131n\u0131n Sa\u011flanmas\u0131 (Provisioning)<\/h2>\n<p>Docker Machine&#8217;in en g\u00fc\u00e7l\u00fc \u00f6zelliklerinden biri, farkl\u0131 ortamlarda yeni Docker hostlar\u0131n\u0131 kolayca sa\u011flayabilmesidir. Bu hostlar, yerel sanal makinelerden (VirtualBox) bulut sa\u011flay\u0131c\u0131lar\u0131na (DigitalOcean, AWS) veya hatta mevcut uzak sunuculara kadar \u00e7e\u015fitlilik g\u00f6sterebilir.<\/p>\n<h3>2.1. Genel Bak\u0131\u015f: Docker Machine S\u00fcr\u00fcc\u00fcleri (Drivers)<\/h3>\n<p>Docker Machine, farkl\u0131 platformlarla entegre olmak i\u00e7in &#8220;s\u00fcr\u00fcc\u00fcler&#8221; (drivers) kullan\u0131r. Her s\u00fcr\u00fcc\u00fc, belirli bir platformda Docker Engine&#8217;i kurmak ve yap\u0131land\u0131rmak i\u00e7in gereken ad\u0131mlar\u0131 otomatize eder. Baz\u0131 yayg\u0131n s\u00fcr\u00fcc\u00fcler \u015funlard\u0131r:<\/p>\n<p>*   <strong><code>virtualbox<\/code><\/strong>: Yerel VirtualBox sanal makineleri olu\u015fturmak i\u00e7in.<br \/>\n*   <strong><code>digitalocean<\/code><\/strong>: DigitalOcean Droplet&#8217;leri \u00fczerinde Docker hostlar\u0131 olu\u015fturmak i\u00e7in.<br \/>\n*   <strong><code>amazonec2<\/code><\/strong>: AWS EC2 \u00f6rnekleri \u00fczerinde Docker hostlar\u0131 olu\u015fturmak i\u00e7in.<br \/>\n*   <strong><code>azure<\/code><\/strong>: Microsoft Azure \u00fczerinde Docker hostlar\u0131 olu\u015fturmak i\u00e7in.<br \/>\n*   <strong><code>google<\/code><\/strong>: Google Cloud Platform \u00fczerinde Docker hostlar\u0131 olu\u015fturmak i\u00e7in.<br \/>\n*   <strong><code>generic<\/code><\/strong>: Docker y\u00fckl\u00fc mevcut bir uzak sunucuyu y\u00f6netmek i\u00e7in.<\/p>\n<p>\u015eimdi bu s\u00fcr\u00fcc\u00fcleri kullanarak farkl\u0131 senaryolarda hostlar olu\u015ftural\u0131m.<\/p>\n<h3>2.2. VirtualBox ile Yerel Bir Host Olu\u015fturma (Test Ama\u00e7l\u0131)<\/h3>\n<p>VirtualBox, yerel geli\u015ftirme ve test ortamlar\u0131 i\u00e7in harika bir se\u00e7enektir. Docker Machine ile VirtualBox \u00fczerinde bir Docker hostu olu\u015fturmak olduk\u00e7a kolayd\u0131r.<\/p>\n<p>1.  <strong>VirtualBox Kurulumu:<\/strong><br \/>\n    E\u011fer VirtualBox sisteminizde kurulu de\u011filse, a\u015fa\u011f\u0131daki komutlarla kurabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">sudo apt install virtualbox -y<\/code><\/pre>\n<p>2.  <strong>Docker Host Olu\u015fturma:<\/strong><br \/>\n    <code>docker-machine create<\/code> komutunu <code>--driver virtualbox<\/code> ile kullanarak bir host olu\u015ftural\u0131m:<\/p>\n<pre><code class=\"language-bash\">docker-machine create --driver virtualbox dev-host<\/code><\/pre>\n<p>    Bu komut, <code>dev-host<\/code> ad\u0131nda yeni bir VirtualBox VM olu\u015fturacak, \u00fczerine Docker&#8217;\u0131 kuracak ve gerekli sertifikalar\u0131 yap\u0131land\u0131racakt\u0131r. \u0130\u015flem birka\u00e7 dakika s\u00fcrebilir.<\/p>\n<p>3.  <strong>Host Durumunu Kontrol Etme:<\/strong><br \/>\n    Olu\u015fturdu\u011funuz host&#8217;un durumunu g\u00f6rmek i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">docker-machine ls<\/code><\/pre>\n<p>    \u00c7\u0131kt\u0131 \u015f\u00f6yle bir \u015fey olacakt\u0131r:<\/p>\n<pre><code class=\"language-\">NAME        ACTIVE   DRIVER       STATE     URL                         SWARM   DOCKER        ERRORS\n    dev-host    -        virtualbox   Running   tcp:\/\/192.168.99.100:2376           v20.10.24<\/code><\/pre>\n<p>4.  <strong>Docker Ortam\u0131n\u0131 Ayarlama:<\/strong><br \/>\n    Yerel Docker CLI&#8217;nizin <code>dev-host<\/code> ile ileti\u015fim kurmas\u0131n\u0131 sa\u011flamak i\u00e7in ortam de\u011fi\u015fkenlerini ayarlaman\u0131z gerekir:<\/p>\n<pre><code class=\"language-bash\">eval $(docker-machine env dev-host)<\/code><\/pre>\n<p>    Bu komut, <code>DOCKER_TLS_VERIFY<\/code>, <code>DOCKER_HOST<\/code>, <code>DOCKER_CERT_PATH<\/code> ve <code>DOCKER_MACHINE_NAME<\/code> gibi de\u011fi\u015fkenleri ayarlar.<\/p>\n<p>5.  <strong>Docker Komutlar\u0131n\u0131 \u00c7al\u0131\u015ft\u0131rma:<\/strong><br \/>\n    Art\u0131k yerel makinenizden Docker komutlar\u0131n\u0131 sanki do\u011frudan <code>dev-host<\/code> \u00fczerinde \u00e7al\u0131\u015f\u0131yormu\u015f gibi kullanabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">docker run hello-world\n    docker ps -a<\/code><\/pre>\n<p>    \u00c7\u0131kt\u0131, <code>hello-world<\/code> konteynerinin <code>dev-host<\/code> \u00fczerinde ba\u015far\u0131yla \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 g\u00f6sterecektir.<\/p>\n<h3>2.3. DigitalOcean \u00dczerinde Bir Host Olu\u015fturma<\/h3>\n<p>DigitalOcean, bulut sunucular\u0131 (Droplet&#8217;ler) sa\u011flamak i\u00e7in pop\u00fcler ve kullan\u0131m\u0131 kolay bir platformdur.<\/p>\n<p>1.  <strong>DigitalOcean API Token Alma:<\/strong><br \/>\n    DigitalOcean hesab\u0131n\u0131za giri\u015f yap\u0131n. Ayarlar\u0131n\u0131za gidin ve &#8220;API&#8221; sekmesinden yeni bir &#8220;Personal Access Token&#8221; olu\u015fturun. Bu token&#8217;\u0131 g\u00fcvende tutun, \u00e7\u00fcnk\u00fc sunucular\u0131n\u0131z\u0131 y\u00f6netmek i\u00e7in kullan\u0131lacakt\u0131r.<\/p>\n<p>2.  <strong>Docker Host Olu\u015fturma:<\/strong><br \/>\n    A\u015fa\u011f\u0131daki komutu kullanarak bir DigitalOcean Droplet&#8217;i \u00fczerinde Docker hostu olu\u015ftural\u0131m. <code>{YOUR_DIGITALOCEAN_TOKEN}<\/code> k\u0131sm\u0131n\u0131 kendi API token&#8217;\u0131n\u0131zla de\u011fi\u015ftirin.<\/p>\n<pre><code class=\"language-bash\">docker-machine create --driver digitalocean \\\n      --digitalocean-access-token YOUR_DIGITALOCEAN_TOKEN \\\n      --digitalocean-region fra1 \\\n      --digitalocean-size s-1vcpu-1gb \\\n      --digitalocean-image ubuntu-18-04-x64 \\\n      do-host<\/code><\/pre>\n<p>    *   <code>--digitalocean-region<\/code>: Droplet&#8217;in olu\u015fturulaca\u011f\u0131 b\u00f6lge (\u00f6rne\u011fin, <code>fra1<\/code> &#8211; Frankfurt).<br \/>\n    *   <code>--digitalocean-size<\/code>: Droplet&#8217;in boyutu (\u00f6rne\u011fin, <code>s-1vcpu-1gb<\/code> &#8211; 1 CPU, 1GB RAM).<br \/>\n    *   <code>--digitalocean-image<\/code>: Droplet i\u00e7in kullan\u0131lacak i\u015fletim sistemi g\u00f6r\u00fcnt\u00fcs\u00fc (burada Ubuntu 18.04).<br \/>\n    *   <code>do-host<\/code>: Olu\u015fturulacak Docker hostunun ad\u0131.<\/p>\n<p>    Bu i\u015flem de birka\u00e7 dakika s\u00fcrecektir.<\/p>\n<p>3.  <strong>Host Durumunu Kontrol Etme:<\/strong><\/p>\n<pre><code class=\"language-bash\">docker-machine ls<\/code><\/pre>\n<p>    <code>do-host<\/code> ad\u0131nda yeni bir giri\u015f g\u00f6rmelisiniz.<\/p>\n<p>4.  <strong>Ortam\u0131 Ayarlama ve Test Etme:<\/strong><\/p>\n<pre><code class=\"language-bash\">eval $(docker-machine env do-host)\n    docker run -p 80:80 --name webserver nginx<\/code><\/pre>\n<p>    Art\u0131k DigitalOcean Droplet&#8217;inizde Nginx \u00e7al\u0131\u015f\u0131yor olmal\u0131. Droplet&#8217;in IP adresini <code>docker-machine ip do-host<\/code> komutuyla al\u0131p taray\u0131c\u0131n\u0131zdan kontrol edebilirsiniz.<\/p>\n<h3>2.4. AWS EC2 \u00dczerinde Bir Host Olu\u015fturma<\/h3>\n<p>Amazon Web Services (AWS), en b\u00fcy\u00fck bulut sa\u011flay\u0131c\u0131lar\u0131ndan biridir ve Docker Machine ile EC2 \u00f6rnekleri \u00fczerinde Docker hostlar\u0131 olu\u015fturabilirsiniz.<\/p>\n<p>1.  <strong>AWS Kimlik Bilgileri ve Ayarlar\u0131:<\/strong><br \/>\n    *   <strong>IAM Kullan\u0131c\u0131s\u0131:<\/strong> AWS hesab\u0131n\u0131zda Docker Machine&#8217;in EC2 \u00f6rnekleri olu\u015fturabilmesi i\u00e7in gerekli izinlere sahip bir IAM kullan\u0131c\u0131s\u0131 olu\u015fturun. Bu kullan\u0131c\u0131ya <code>AmazonEC2FullAccess<\/code> ve <code>IAMFullAccess<\/code> (anahtar \u00e7ifti olu\u015fturmak i\u00e7in) gibi yetkiler vermeniz gerekebilir.<br \/>\n    *   <strong>Eri\u015fim Anahtarlar\u0131:<\/strong> IAM kullan\u0131c\u0131s\u0131 i\u00e7in bir &#8220;Access Key ID&#8221; ve &#8220;Secret Access Key&#8221; olu\u015fturun. Bu anahtarlar\u0131 g\u00fcvende tutun.<br \/>\n    *   <strong>G\u00fcvenlik Grubu:<\/strong> EC2 \u00f6rne\u011fi i\u00e7in, SSH (port 22) ve Docker daemon (port 2376) eri\u015fimine izin veren bir g\u00fcvenlik grubu olu\u015fturman\u0131z gerekecektir. Kaynak IP&#8217;yi kendi IP&#8217;nizle s\u0131n\u0131rlaman\u0131z \u00f6nerilir.<\/p>\n<p>2.  <strong>Docker Host Olu\u015fturma:<\/strong><br \/>\n    A\u015fa\u011f\u0131daki komutu kullanarak bir AWS EC2 \u00f6rne\u011fi \u00fczerinde Docker hostu olu\u015ftural\u0131m. <code>{YOUR_AWS_ACCESS_KEY_ID}<\/code>, <code>{YOUR_AWS_SECRET_ACCESS_KEY}<\/code> ve di\u011fer yer tutucular\u0131 kendi bilgilerinizle de\u011fi\u015ftirin.<\/p>\n<pre><code class=\"language-bash\">docker-machine create --driver amazonec2 \\\n      --amazonec2-access-key YOUR_AWS_ACCESS_KEY_ID \\\n      --amazonec2-secret-key YOUR_AWS_SECRET_ACCESS_KEY \\\n      --amazonec2-region eu-central-1 \\\n      --amazonec2-vpc-id vpc-0123456789abcdef0 \\\n      --amazonec2-instance-type t2.micro \\\n      --amazonec2-ami ami-07d0cf3af28718e71 \\\n      --amazonec2-security-group sg-0abcdef0123456789 \\\n      aws-host<\/code><\/pre>\n<p>    *   <code>--amazonec2-region<\/code>: EC2 \u00f6rne\u011finin olu\u015fturulaca\u011f\u0131 b\u00f6lge (\u00f6rne\u011fin, <code>eu-central-1<\/code> &#8211; Frankfurt).<br \/>\n    *   <code>--amazonec2-vpc-id<\/code>: EC2 \u00f6rne\u011finin yerle\u015ftirilece\u011fi VPC kimli\u011fi.<br \/>\n    *   <code>--amazonec2-instance-type<\/code>: EC2 \u00f6rne\u011finin tipi (\u00f6rne\u011fin, <code>t2.micro<\/code>).<br \/>\n    *   <code>--amazonec2-ami<\/code>: Kullan\u0131lacak AMI kimli\u011fi. Burada Ubuntu 18.04 LTS i\u00e7in ge\u00e7erli bir AMI kullan\u0131lm\u0131\u015ft\u0131r. B\u00f6lgenize g\u00f6re farkl\u0131l\u0131k g\u00f6sterebilir, AWS konsolundan do\u011fru AMI&#8217;yi bulman\u0131z \u00f6nemlidir.<br \/>\n    *   <code>--amazonec2-security-group<\/code>: Olu\u015fturdu\u011funuz g\u00fcvenlik grubunun ad\u0131 veya kimli\u011fi.<br \/>\n    *   <code>aws-host<\/code>: Olu\u015fturulacak Docker hostunun ad\u0131.<\/p>\n<p>    Bu i\u015flem de biraz zaman alacakt\u0131r.<\/p>\n<p>3.  <strong>Host Durumunu Kontrol Etme ve Test Etme:<\/strong><\/p>\n<pre><code class=\"language-bash\">docker-machine ls\n    eval $(docker-machine env aws-host)\n    docker run -d -p 80:80 --name myapache httpd<\/code><\/pre>\n<p>    <code>docker-machine ip aws-host<\/code> komutuyla AWS \u00f6rne\u011finizin genel IP adresini al\u0131p taray\u0131c\u0131n\u0131zdan kontrol edebilirsiniz.<\/p>\n<h3>2.5. Mevcut Bir Uzak Sunucuyu Y\u00f6netmek (Generic Driver)<\/h3>\n<p>Zaten bir uzak sunucunuz varsa ve \u00fczerinde Docker kuruluysa veya kurmak istiyorsan\u0131z, <code>generic<\/code> s\u00fcr\u00fcc\u00fcs\u00fc ile Docker Machine&#8217;e ekleyebilirsiniz.<\/p>\n<p>1.  <strong>\u00d6n Ko\u015ful: Uzak Sunucuda Docker Kurulumu (Gerekliyse)<\/strong><br \/>\n    E\u011fer uzak sunucunuzda Docker kurulu de\u011filse, SSH ile ba\u011flan\u0131p kurman\u0131z gerekir. Ubuntu 18.04 i\u00e7in basit bir Docker kurulumu \u015fu \u015fekildedir:<\/p>\n<pre><code class=\"language-bash\"># Uzak sunucuya SSH ile ba\u011flan\u0131n\n    ssh <KULLANICI>@<IP_ADRES\u0130>\n\n    # Docker kurulumu\n    sudo apt update\n    sudo apt install apt-transport-https ca-certificates curl gnupg-agent software-properties-common -y\n    curl -fsSL https:\/\/download.docker.com\/linux\/ubuntu\/gpg | sudo apt-key add -\n    sudo add-apt-repository \"deb [arch=amd64] https:\/\/download.docker.com\/linux\/ubuntu $(lsb_release -cs) stable\"\n    sudo apt update\n    sudo apt install docker-ce docker-ce-cli containerd.io -y\n\n    # Kullan\u0131c\u0131n\u0131z\u0131 docker grubuna ekleyin (iste\u011fe ba\u011fl\u0131 ama \u00f6nerilir)\n    sudo usermod -aG docker $USER\n    # \u00c7\u0131k\u0131\u015f yap\u0131p tekrar giri\u015f yapman\u0131z gerekebilir\n    exit<\/code><\/pre>\n<p>2.  <strong>Docker Machine ile Mevcut Hostu Ekleme:<\/strong><br \/>\n    <code>generic<\/code> s\u00fcr\u00fcc\u00fcs\u00fc ile mevcut sunucuyu Docker Machine&#8217;e ekleyelim. Uzak sunucunuza SSH eri\u015fimi i\u00e7in bir kullan\u0131c\u0131 ad\u0131 ve SSH anahtar yolu belirtmeniz gerekecektir.<\/p>\n<pre><code class=\"language-bash\">docker-machine create --driver generic \\\n      --generic-ip-address <UZAK_SUNUCU_IP_ADRES\u0130> \\\n      --generic-ssh-user <SSH_KULLANICI_ADI> \\\n      --generic-ssh-key ~\/.ssh\/id_rsa \\\n      generic-host<\/code><\/pre>\n<p>    *   <code>--generic-ip-address<\/code>: Uzak sunucunuzun IP adresi.<br \/>\n    *   <code>--generic-ssh-user<\/code>: Uzak sunucuya SSH ile ba\u011flanmak i\u00e7in kullan\u0131lacak kullan\u0131c\u0131 ad\u0131 (\u00f6rne\u011fin, <code>ubuntu<\/code> veya <code>root<\/code>).<br \/>\n    *   <code>--generic-ssh-key<\/code>: SSH anahtar\u0131n\u0131z\u0131n yolu (genellikle <code>~\/.ssh\/id_rsa<\/code>).<br \/>\n    *   <code>generic-host<\/code>: Bu host i\u00e7in Docker Machine&#8217;de kullan\u0131lacak ad.<\/p>\n<p>    Docker Machine, bu sunucuya SSH ile ba\u011flanacak, Docker Engine&#8217;i yap\u0131land\u0131racak ve TLS sertifikalar\u0131n\u0131 kuracakt\u0131r. E\u011fer Docker zaten kuruluysa, bu ad\u0131mlar\u0131 atlayacakt\u0131r.<\/p>\n<p>3.  <strong>Host Durumunu Kontrol Etme ve Test Etme:<\/strong><\/p>\n<pre><code class=\"language-bash\">docker-machine ls\n    eval $(docker-machine env generic-host)\n    docker ps<\/code><\/pre>\n<p>    Art\u0131k mevcut uzak sunucunuzu Docker Machine \u00fczerinden y\u00f6netebilirsiniz.<\/p>\n<h2>3. Uzak Docker Hostlar\u0131n\u0131 Y\u00f6netme<\/h2>\n<p>Docker Machine, hostlar\u0131 sa\u011flad\u0131ktan sonra onlar\u0131 y\u00f6netmek i\u00e7in de bir dizi komut sunar. Bu komutlar, hostlar\u0131n durumunu kontrol etmekten, onlar\u0131 ba\u015flat\u0131p durdurmaya, hatta \u00fczerlerindeki Docker Engine&#8217;i y\u00fckseltmeye kadar geni\u015f bir yelpazeyi kapsar.<\/p>\n<h3>3.1. Host Durumunu G\u00f6r\u00fcnt\u00fcleme<\/h3>\n<p>T\u00fcm y\u00f6netilen Docker hostlar\u0131n\u0131z\u0131n listesini ve durumunu g\u00f6rmek i\u00e7in <code>ls<\/code> komutunu kullanabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">docker-machine ls<\/code><\/pre>\n<p>Bu komut, her host i\u00e7in ad\u0131n\u0131, etkin olup olmad\u0131\u011f\u0131n\u0131, s\u00fcr\u00fcc\u00fcs\u00fcn\u00fc, durumunu (Running, Stopped vb.), URL&#8217;sini ve Docker s\u00fcr\u00fcm\u00fcn\u00fc g\u00f6sterir.<\/p>\n<p>Belirli bir host&#8217;un detayl\u0131 bilgilerini almak i\u00e7in <code>inspect<\/code> komutunu kullanabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">docker-machine inspect <HOST_ADI><\/code><\/pre>\n<p>Bu komut, host hakk\u0131nda IP adresi, s\u00fcr\u00fcc\u00fc bilgileri, sertifika yollar\u0131 gibi ayr\u0131nt\u0131l\u0131 JSON \u00e7\u0131kt\u0131s\u0131 sa\u011flar.<\/p>\n<h3>3.2. Docker Ortam\u0131n\u0131 Ayarlama<\/h3>\n<p>Yerel Docker CLI&#8217;nizin belirli bir uzak Docker hostu ile etkile\u015fime girmesi i\u00e7in ortam de\u011fi\u015fkenlerini ayarlaman\u0131z gerekir. Bu, <code>docker-machine env<\/code> komutuyla yap\u0131l\u0131r:<\/p>\n<pre><code class=\"language-bash\">eval $(docker-machine env <HOST_ADI>)<\/code><\/pre>\n<p>Bu komutu \u00e7al\u0131\u015ft\u0131rd\u0131ktan sonra, <code>docker<\/code> komutlar\u0131 otomatik olarak belirtilen uzak host \u00fczerinde \u00e7al\u0131\u015facakt\u0131r. Hangi host&#8217;un etkin oldu\u011funu do\u011frulamak i\u00e7in <code>docker-machine active<\/code> komutunu kullanabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">docker-machine active<\/code><\/pre>\n<p>Veya <code>docker-machine env <HOST_ADI><\/code> \u00e7\u0131kt\u0131s\u0131n\u0131 inceleyerek <code>DOCKER_HOST<\/code> de\u011fi\u015fkeninin do\u011fru IP adresini g\u00f6sterip g\u00f6stermedi\u011fini kontrol edebilirsiniz.<\/p>\n<p>Uzak host ile i\u015finiz bitti\u011finde veya yerel Docker daemon&#8217;a geri d\u00f6nmek istedi\u011finizde, ortam de\u011fi\u015fkenlerini s\u0131f\u0131rlayabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">eval $(docker-machine env -u)<\/code><\/pre>\n<h3>3.3. SSH ile Host&#8217;a Ba\u011flanma<\/h3>\n<p>Docker Machine, y\u00f6netti\u011fi hostlara do\u011frudan SSH ba\u011flant\u0131s\u0131 kurman\u0131z\u0131 sa\u011flar:<\/p>\n<pre><code class=\"language-bash\">docker-machine ssh <HOST_ADI><\/code><\/pre>\n<p>Bu komut, host&#8217;a SSH ile ba\u011flan\u0131r ve size bir terminal oturumu a\u00e7ar. Bu sayede host \u00fczerinde manuel olarak i\u015flemler yapabilir, loglar\u0131 kontrol edebilir veya ek yaz\u0131l\u0131mlar kurabilirsiniz.<\/p>\n<h3>3.4. Host&#8217;u Ba\u015flatma, Durdurma ve Yeniden Ba\u015flatma<\/h3>\n<p>Docker hostlar\u0131n\u0131z\u0131 t\u0131pk\u0131 yerel bir sanal makine gibi ba\u015flatabilir, durdurabilir ve yeniden ba\u015flatabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">docker-machine start <HOST_ADI>    # Host'u ba\u015flat\u0131r\ndocker-machine stop <HOST_ADI>     # Host'u durdurur\ndocker-machine restart <HOST_ADI>  # Host'u yeniden ba\u015flat\u0131r<\/code><\/pre>\n<p>Bu komutlar, \u00f6zellikle bulut sa\u011flay\u0131c\u0131lar\u0131ndaki \u00f6rneklerin maliyetini y\u00f6netmek veya bak\u0131m i\u015flemleri yapmak i\u00e7in kullan\u0131\u015fl\u0131d\u0131r. \u00d6rne\u011fin, kullanmad\u0131\u011f\u0131n\u0131z bir host&#8217;u durdurarak bulut maliyetlerinden tasarruf edebilirsiniz.<\/p>\n<h3>3.5. Host&#8217;u Y\u00fckseltme (Upgrade)<\/h3>\n<p>Docker Machine, bir host \u00fczerindeki Docker Engine s\u00fcr\u00fcm\u00fcn\u00fc y\u00fckseltmenize olanak tan\u0131r:<\/p>\n<pre><code class=\"language-bash\">docker-machine upgrade <HOST_ADI><\/code><\/pre>\n<p>Bu komut, Docker Engine&#8217;i host \u00fczerinde en son kararl\u0131 s\u00fcr\u00fcme g\u00fcnceller. Bu, g\u00fcvenlik yamalar\u0131 ve yeni \u00f6zelliklerden faydalanmak i\u00e7in \u00f6nemlidir.<\/p>\n<h3>3.6. Host&#8217;u Silme<\/h3>\n<p>Bir Docker hostuna art\u0131k ihtiyac\u0131n\u0131z kalmad\u0131\u011f\u0131nda, <code>rm<\/code> komutuyla silebilirsiniz:<\/p>\n<pre><code class=\"language-bash\">docker-machine rm <HOST_ADI><\/code><\/pre>\n<p>Bu komut, host&#8217;u Docker Machine&#8217;den kald\u0131r\u0131r ve ayn\u0131 zamanda ili\u015fkili sanal makineyi veya bulut \u00f6rne\u011fini (VirtualBox VM, DigitalOcean Droplet, AWS EC2 \u00f6rne\u011fi vb.) de siler. <strong>Bu i\u015flem geri al\u0131namaz ve host \u00fczerindeki t\u00fcm veriler kaybolur.<\/strong> Bu nedenle, bu komutu kullanmadan \u00f6nce dikkatli olun ve \u00f6nemli verileri yedekledi\u011finizden emin olun.<\/p>\n<p>Birden fazla hostu ayn\u0131 anda silmek i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">docker-machine rm host1 host2 host3<\/code><\/pre>\n<h2>4. Docker Machine ile \u00c7al\u0131\u015fma Ak\u0131\u015f\u0131 ve En \u0130yi Uygulamalar<\/h2>\n<p>Docker Machine, basit bir ara\u00e7 olmas\u0131na ra\u011fmen, do\u011fru kullan\u0131ld\u0131\u011f\u0131nda geli\u015ftirme ve operasyonel s\u00fcre\u00e7lerinizi \u00f6nemli \u00f6l\u00e7\u00fcde h\u0131zland\u0131rabilir. \u0130\u015fte Docker Machine ile \u00e7al\u0131\u015fma ak\u0131\u015f\u0131n\u0131z\u0131 optimize etmek ve en iyi uygulamalar\u0131 takip etmek i\u00e7in baz\u0131 ipu\u00e7lar\u0131.<\/p>\n<h3>4.1. Ortam De\u011fi\u015fkenlerini Y\u00f6netme<\/h3>\n<p>Farkl\u0131 Docker hostlar\u0131 aras\u0131nda s\u0131k\u00e7a ge\u00e7i\u015f yap\u0131yorsan\u0131z, <code>eval $(docker-machine env <HOST_ADI>)<\/code> komutunu s\u00fcrekli \u00e7al\u0131\u015ft\u0131rmak yorucu olabilir. Bunun yerine, bu komutlar\u0131 shell profilinize (\u00f6rne\u011fin, <code>~\/.bashrc<\/code> veya <code>~\/.zshrc<\/code>) ekleyebilir veya k\u0131sa fonksiyonlar tan\u0131mlayabilirsiniz:<\/p>\n<pre><code class=\"language-bash\"># .bashrc veya .zshrc dosyan\u0131za ekleyin\nfunction dm-use() {\n  if [ -z \"$1\" ]; then\n    echo \"Kullan\u0131m: dm-use <host_ad\u0131>\"\n    docker-machine ls\n  else\n    eval $(docker-machine env \"$1\")\n    echo \"\u015eu anki aktif host: $(docker-machine active)\"\n  fi\n}\n\nfunction dm-local() {\n  eval $(docker-machine env -u)\n  echo \"Yerel Docker daemon'a ge\u00e7ildi.\"\n}<\/code><\/pre>\n<p>Bu fonksiyonlar\u0131 tan\u0131mlad\u0131ktan sonra, <code>dm-use dev-host<\/code> ile <code>dev-host<\/code>&#8216;a ge\u00e7ebilir, <code>dm-use do-host<\/code> ile DigitalOcean host&#8217;una ge\u00e7ebilir ve <code>dm-local<\/code> ile yerel Docker daemon&#8217;a geri d\u00f6nebilirsiniz.<\/p>\n<h3>4.2. G\u00fcvenlik Hususlar\u0131<\/h3>\n<p>Docker Machine, varsay\u0131lan olarak TLS (Transport Layer Security) kullanarak istemci ile uzak Docker daemon aras\u0131ndaki ileti\u015fimi \u015fifreler. Ancak, yine de baz\u0131 g\u00fcvenlik hususlar\u0131na dikkat etmek \u00f6nemlidir:<\/p>\n<p>*   <strong>SSH Anahtarlar\u0131:<\/strong> Docker Machine, hostlara SSH ile ba\u011flanmak i\u00e7in anahtar \u00e7iftleri kullan\u0131r. Bu anahtarlar\u0131 g\u00fcvende tutun ve asla payla\u015fmay\u0131n. <code>~\/.ssh<\/code> dizininizin izinlerinin do\u011fru ayarland\u0131\u011f\u0131ndan emin olun (<code>chmod 600 ~\/.ssh\/id_rsa<\/code>).<br \/>\n*   <strong>API Token&#8217;lar\u0131\/Anahtarlar\u0131:<\/strong> DigitalOcean, AWS gibi bulut sa\u011flay\u0131c\u0131lar\u0131 i\u00e7in kullan\u0131lan API token&#8217;lar\u0131 ve eri\u015fim anahtarlar\u0131 son derece hassas bilgilerdir. Bunlar\u0131 do\u011frudan komut sat\u0131r\u0131nda a\u00e7\u0131k\u00e7a belirtmek yerine, ortam de\u011fi\u015fkenleri olarak ayarlamak (<code>export DIGITALOCEAN_ACCESS_TOKEN=\"<TOKEN>\"<\/code>) veya Docker Machine&#8217;in kendi ortam de\u011fi\u015fkenlerini kullanmak (<code>--digitalocean-access-token $DIGITALOCEAN_ACCESS_TOKEN<\/code>) daha g\u00fcvenlidir.<br \/>\n*   <strong>G\u00fcvenlik Gruplar\u0131\/Firewall:<\/strong> Bulut sa\u011flay\u0131c\u0131lar\u0131nda host olu\u015ftururken, Docker daemon portu (2376) ve SSH portu (22) i\u00e7in g\u00fcvenlik grubu\/firewall kurallar\u0131n\u0131 m\u00fcmk\u00fcn oldu\u011funca k\u0131s\u0131tlay\u0131n. Yaln\u0131zca belirli IP adreslerinden eri\u015fime izin verin.<br \/>\n*   <strong>Root Eri\u015fimini K\u0131s\u0131tlama:<\/strong> M\u00fcmk\u00fcnse, uzak hostlarda <code>root<\/code> yerine sudo yetkilerine sahip standart bir kullan\u0131c\u0131 hesab\u0131 kullan\u0131n.<\/p>\n<h3>4.3. Docker Compose ile Entegrasyon<\/h3>\n<p>Docker Machine, Docker Compose ile sorunsuz bir \u015fekilde entegre olur. Bir host&#8217;a <code>eval $(docker-machine env <HOST_ADI>)<\/code> komutuyla ba\u011fland\u0131ktan sonra, <code>docker-compose<\/code> komutlar\u0131n\u0131 normalde yapt\u0131\u011f\u0131n\u0131z gibi \u00e7al\u0131\u015ft\u0131rabilirsiniz.<\/p>\n<p>\u00d6rne\u011fin, <code>docker-compose.yml<\/code> dosyan\u0131z\u0131n oldu\u011fu bir dizinde:<\/p>\n<pre><code class=\"language-bash\">eval $(docker-machine env do-host) # DigitalOcean host'una ba\u011flan\ndocker-compose up -d              # Uygulamay\u0131 DigitalOcean host'unda ba\u015flat\ndocker-compose ps                 # \u00c7al\u0131\u015fan servisleri kontrol et\ndocker-compose down               # Uygulamay\u0131 durdur ve konteynerleri kald\u0131r<\/code><\/pre>\n<p>Bu, karma\u015f\u0131k \u00e7ok konteynerli uygulamalar\u0131 uzak sunuculara kolayca da\u011f\u0131tman\u0131z\u0131 sa\u011flar.<\/p>\n<h3>4.4. Otomasyon ve Scripting<\/h3>\n<p>Docker Machine komutlar\u0131, shell script&#8217;leri i\u00e7inde otomasyon i\u00e7in idealdir. \u00d6rne\u011fin, bir geli\u015ftirme ortam\u0131 i\u00e7in birden fazla hostu otomatik olarak olu\u015fturabilir, yap\u0131land\u0131rabilir ve da\u011f\u0131t\u0131m yapabilirsiniz.<\/p>\n<p>Basit bir \u00f6rnek:<\/p>\n<pre><code class=\"language-bash\">#!\/bin\/bash\n\n<h2>Geli\u015ftirme hostu olu\u015ftur<\/h2>\ndocker-machine create --driver virtualbox dev-host\n\n<h2>Test hostu olu\u015ftur (DigitalOcean)<\/h2>\nexport DIGITALOCEAN_ACCESS_TOKEN=\"YOUR_TOKEN\"\ndocker-machine create --driver digitalocean --digitalocean-access-token $DIGITALOCEAN_ACCESS_TOKEN test-host\n\n<h2>Dev host'a ba\u011flan ve uygulama da\u011f\u0131t<\/h2>\neval $(docker-machine env dev-host)\ndocker-compose up -d\n\n<h2>Test host'a ba\u011flan ve ba\u015fka bir uygulama da\u011f\u0131t<\/h2>\neval $(docker-machine env test-host)\n<h2>... test uygulamas\u0131n\u0131 da\u011f\u0131t ...<\/h2>\n\n<h2>T\u00fcm hostlar\u0131 listele<\/h2>\ndocker-machine ls<\/code><\/pre>\n<p>Bu t\u00fcr script&#8217;ler, CI\/CD boru hatlar\u0131nda veya tak\u0131m \u00fcyeleri i\u00e7in standartla\u015ft\u0131r\u0131lm\u0131\u015f geli\u015ftirme ortamlar\u0131 kurmakta kullan\u0131labilir.<\/p>\n<h2>5. Sorun Giderme<\/h2>\n<p>Docker Machine kullan\u0131rken kar\u015f\u0131la\u015fabilece\u011finiz baz\u0131 yayg\u0131n sorunlar ve \u00e7\u00f6z\u00fcm \u00f6nerileri:<\/p>\n<p>*   <strong><code>Error with pre-create check: \"This computer doesn't have VT-X\/AMD-v enabled...\"<\/code> (VirtualBox):<\/strong><br \/>\n    Bu hata, sanalla\u015ft\u0131rma teknolojisinin BIOS\/UEFI ayarlar\u0131n\u0131zda etkinle\u015ftirilmedi\u011fini g\u00f6sterir. Bilgisayar\u0131n\u0131z\u0131n BIOS\/UEFI ayarlar\u0131na girerek &#8220;Intel VT-x&#8221; veya &#8220;AMD-V&#8221; \u00f6zelli\u011fini etkinle\u015ftirmeniz gerekir.<\/p>\n<p>*   <strong><code>Error creating machine: Error in driver during machine creation: Error getting IP address:<\/code> (Bulut sa\u011flay\u0131c\u0131lar\u0131):<\/strong><br \/>\n    Bu genellikle bir a\u011f veya g\u00fcvenlik grubu sorunudur.<br \/>\n    *   Bulut sa\u011flay\u0131c\u0131n\u0131zda SSH (port 22) ve Docker daemon (port 2376) portlar\u0131n\u0131n gelen ba\u011flant\u0131lara a\u00e7\u0131k oldu\u011fundan emin olun.<br \/>\n    *   API anahtar\u0131n\u0131z\u0131n\/token&#8217;\u0131n\u0131z\u0131n do\u011fru ve ge\u00e7erli oldu\u011fundan emin olun.<br \/>\n    *   Belirtilen b\u00f6lge, g\u00f6r\u00fcnt\u00fc veya boyutun ge\u00e7erli oldu\u011fundan emin olun.<\/p>\n<p>*   <strong><code>Error running connection: ssh: handshake failed: ssh: unable to authenticate, attempted methods [publickey]<\/code> (Generic Driver):<\/strong><br \/>\n    *   Uzak sunucudaki SSH kullan\u0131c\u0131s\u0131n\u0131n ve SSH anahtar\u0131n\u0131n do\u011fru oldu\u011fundan emin olun.<br \/>\n    *   SSH anahtar\u0131n\u0131z\u0131n do\u011fru izinlere sahip oldu\u011fundan (<code>chmod 600 ~\/.ssh\/id_rsa<\/code>) ve parola korumal\u0131ysa do\u011fru parolay\u0131 girdi\u011finizden emin olun.<br \/>\n    *   Uzak sunucuda SSH servisi \u00e7al\u0131\u015f\u0131yor mu kontrol edin.<\/p>\n<p>*   <strong><code>Cannot connect to the Docker daemon at tcp:\/\/X.X.X.X:2376. Is the docker daemon running?<\/code>:<\/strong><br \/>\n    Bu hata, <code>eval $(docker-machine env <HOST_ADI>)<\/code> komutunu \u00e7al\u0131\u015ft\u0131rmad\u0131\u011f\u0131n\u0131zda veya Docker daemon&#8217;un uzak host \u00fczerinde \u00e7al\u0131\u015fmad\u0131\u011f\u0131nda ortaya \u00e7\u0131kabilir.<br \/>\n    *   \u00d6ncelikle <code>eval $(docker-machine env <HOST_ADI>)<\/code> komutunu \u00e7al\u0131\u015ft\u0131rd\u0131\u011f\u0131n\u0131zdan emin olun.<br \/>\n    *   <code>docker-machine ssh <HOST_ADI><\/code> ile host&#8217;a ba\u011flan\u0131n ve <code>sudo systemctl status docker<\/code> komutuyla Docker servisinin durumunu kontrol edin. Gerekirse <code>sudo systemctl start docker<\/code> ile ba\u015flat\u0131n.<\/p>\n<p>*   <strong>TLS Sertifika Hatalar\u0131:<\/strong><br \/>\n    Bazen sertifikalarla ilgili sorunlar ya\u015fanabilir (\u00f6rne\u011fin, sertifikalar\u0131n s\u00fcresi dolmu\u015fsa veya bozulmu\u015fsa).<br \/>\n    *   <code>docker-machine regenerate-certs <HOST_ADI><\/code> komutuyla sertifikalar\u0131 yeniden olu\u015fturmay\u0131 deneyin.<\/p>\n<p>*   <strong><code>docker-machine debug<\/code> Kullan\u0131m\u0131:<\/strong><br \/>\n    Daha karma\u015f\u0131k sorunlar i\u00e7in <code>docker-machine debug<\/code> komutunu kullanabilirsiniz. Bu komut, hata ay\u0131klama \u00e7\u0131kt\u0131s\u0131n\u0131 etkinle\u015ftirir ve sorun gidermeye yard\u0131mc\u0131 olabilecek daha fazla bilgi sa\u011flar.<\/p>\n<pre><code class=\"language-bash\">docker-machine -D create --driver virtualbox debug-host<\/code><\/pre>\n<p>    Bu, komutun her ad\u0131m\u0131n\u0131 ve olas\u0131 hata mesajlar\u0131n\u0131 detayl\u0131 olarak g\u00f6sterecektir.<\/p>\n<h2>Sonu\u00e7<\/h2>\n<p>Bu makalede, Ubuntu 18.04 \u00fczerinde Docker Machine&#8217;in nas\u0131l kurulaca\u011f\u0131n\u0131 ve uzak Docker hostlar\u0131n\u0131n farkl\u0131 platformlarda nas\u0131l sa\u011flan\u0131p y\u00f6netilece\u011fini ayr\u0131nt\u0131l\u0131 olarak inceledik. Docker Machine&#8217;in, yerel VirtualBox ortamlar\u0131ndan DigitalOcean ve AWS gibi bulut sa\u011flay\u0131c\u0131lar\u0131na kadar \u00e7e\u015fitli altyap\u0131larda Docker Engine&#8217;i h\u0131zl\u0131 ve tutarl\u0131 bir \u015fekilde da\u011f\u0131tma yetene\u011fini g\u00f6rd\u00fck. Ayr\u0131ca, mevcut uzak sunucular\u0131 y\u00f6netmek i\u00e7in <code>generic<\/code> s\u00fcr\u00fcc\u00fcs\u00fcn\u00fcn nas\u0131l kullan\u0131laca\u011f\u0131n\u0131 da ele ald\u0131k.<\/p>\n<p>Docker Machine, \u00f6zellikle \u00e7oklu ortam geli\u015ftirme, test ve da\u011f\u0131t\u0131m senaryolar\u0131nda, Docker hostlar\u0131n\u0131 manuel olarak kurma ve yap\u0131land\u0131rma zahmetini ortadan kald\u0131rarak \u00f6nemli bir zaman tasarrufu sa\u011flar. Ortam de\u011fi\u015fkenlerini y\u00f6netme, g\u00fcvenlik hususlar\u0131 ve Docker Compose ile entegrasyon gibi en iyi uygulamalar, Docker Machine&#8217;in potansiyelini tam olarak kullanman\u0131za yard\u0131mc\u0131 olacakt\u0131r.<\/p>\n<p>Docker Machine, Docker ekosisteminde \u00f6nemli bir rol oynam\u0131\u015f olsa da, Docker Inc. taraf\u0131ndan 2020&#8217;den itibaren &#8220;bak\u0131m moduna&#8221; al\u0131nm\u0131\u015ft\u0131r. Bu, yeni \u00f6zelliklerin eklenmeyece\u011fi ve yaln\u0131zca kritik g\u00fcvenlik yamalar\u0131n\u0131n sa\u011flanaca\u011f\u0131 anlam\u0131na gelir. Gelecekteki projeleriniz i\u00e7in, Docker&#8217;\u0131n daha yeni versiyonlar\u0131nda yer alan <code>docker context<\/code> gibi yerle\u015fik \u00f6zelliklere veya Kubernetes gibi konteyner orkestrasyon ara\u00e7lar\u0131na y\u00f6nelmek daha uygun olabilir. Ancak, mevcut sistemleri y\u00f6netmek veya daha basit uzaktan Docker hostu sa\u011flama ihtiya\u00e7lar\u0131 i\u00e7in Docker Machine hala son derece kullan\u0131\u015fl\u0131 ve g\u00fcvenilir bir ara\u00e7 olmaya devam etmektedir.<\/p>\n<p>Docker Machine ile edindi\u011finiz bu bilgiler, konteynerle\u015ftirilmi\u015f uygulamalar\u0131n\u0131z\u0131 daha esnek ve verimli bir \u015fekilde y\u00f6netme yolculu\u011funuzda size de\u011ferli bir temel sa\u011flayacakt\u0131r.<br \/>\n<\/body><\/p>\n","protected":false},"excerpt":{"rendered":"Uzak Docker Hostlar\u0131n\u0131 Docker Machine ile Ubuntu 18.04 \u00dczerinde Sa\u011flama ve Y\u00f6netme\nGiri\u015f\nModern yaz\u0131l\u0131m geli\u015ftirme ve da\u011f\u0131t\u0131m s\u00fcre\u00e7ler","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1468],"tags":[],"class_list":{"0":"post-36093","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-ubuntu","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Uzak Docker Hostlar\u0131n\u0131 Docker Machine ile Ubuntu 18.04 \u00dczerinde Sa\u011flama ve Y\u00f6netme - Kodlar\u0131n Gizemli D\u00fcnyas\u0131<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/uzak-docker-hostlarini-docker-machine-ile-ubuntu-18-04-uzerinde-saglama-ve-yonetme\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Uzak Docker Hostlar\u0131n\u0131 Docker Machine ile Ubuntu 18.04 \u00dczerinde Sa\u011flama ve Y\u00f6netme\" \/>\n<meta property=\"og:description\" content=\"Uzak Docker Hostlar\u0131n\u0131 Docker Machine ile Ubuntu 18.04 \u00dczerinde Sa\u011flama ve Y\u00f6netme Giri\u015f Modern yaz\u0131l\u0131m geli\u015ftirme ve da\u011f\u0131t\u0131m s\u00fcre\u00e7ler\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/uzak-docker-hostlarini-docker-machine-ile-ubuntu-18-04-uzerinde-saglama-ve-yonetme\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-12-08T00:40:51+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"20 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/uzak-docker-hostlarini-docker-machine-ile-ubuntu-18-04-uzerinde-saglama-ve-yonetme\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/uzak-docker-hostlarini-docker-machine-ile-ubuntu-18-04-uzerinde-saglama-ve-yonetme\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Uzak Docker Hostlar\u0131n\u0131 Docker Machine ile Ubuntu 18.04 \u00dczerinde Sa\u011flama ve Y\u00f6netme\",\"datePublished\":\"2025-12-08T00:40:51+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/uzak-docker-hostlarini-docker-machine-ile-ubuntu-18-04-uzerinde-saglama-ve-yonetme\/\"},\"wordCount\":3207,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"articleSection\":[\"Ubuntu\"],\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/uzak-docker-hostlarini-docker-machine-ile-ubuntu-18-04-uzerinde-saglama-ve-yonetme\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/uzak-docker-hostlarini-docker-machine-ile-ubuntu-18-04-uzerinde-saglama-ve-yonetme\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/uzak-docker-hostlarini-docker-machine-ile-ubuntu-18-04-uzerinde-saglama-ve-yonetme\/\",\"name\":\"Uzak Docker Hostlar\u0131n\u0131 Docker Machine ile Ubuntu 18.04 \u00dczerinde Sa\u011flama ve Y\u00f6netme - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-12-08T00:40:51+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/uzak-docker-hostlarini-docker-machine-ile-ubuntu-18-04-uzerinde-saglama-ve-yonetme\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/uzak-docker-hostlarini-docker-machine-ile-ubuntu-18-04-uzerinde-saglama-ve-yonetme\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/uzak-docker-hostlarini-docker-machine-ile-ubuntu-18-04-uzerinde-saglama-ve-yonetme\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Uzak Docker Hostlar\u0131n\u0131 Docker Machine ile Ubuntu 18.04 \u00dczerinde Sa\u011flama ve Y\u00f6netme\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Uzak Docker Hostlar\u0131n\u0131 Docker Machine ile Ubuntu 18.04 \u00dczerinde Sa\u011flama ve Y\u00f6netme - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/uzak-docker-hostlarini-docker-machine-ile-ubuntu-18-04-uzerinde-saglama-ve-yonetme\/","og_locale":"tr_TR","og_type":"article","og_title":"Uzak Docker Hostlar\u0131n\u0131 Docker Machine ile Ubuntu 18.04 \u00dczerinde Sa\u011flama ve Y\u00f6netme","og_description":"Uzak Docker Hostlar\u0131n\u0131 Docker Machine ile Ubuntu 18.04 \u00dczerinde Sa\u011flama ve Y\u00f6netme Giri\u015f Modern yaz\u0131l\u0131m geli\u015ftirme ve da\u011f\u0131t\u0131m s\u00fcre\u00e7ler","og_url":"https:\/\/fatihsoysal.com\/blog\/uzak-docker-hostlarini-docker-machine-ile-ubuntu-18-04-uzerinde-saglama-ve-yonetme\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-12-08T00:40:51+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"20 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/uzak-docker-hostlarini-docker-machine-ile-ubuntu-18-04-uzerinde-saglama-ve-yonetme\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/uzak-docker-hostlarini-docker-machine-ile-ubuntu-18-04-uzerinde-saglama-ve-yonetme\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Uzak Docker Hostlar\u0131n\u0131 Docker Machine ile Ubuntu 18.04 \u00dczerinde Sa\u011flama ve Y\u00f6netme","datePublished":"2025-12-08T00:40:51+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/uzak-docker-hostlarini-docker-machine-ile-ubuntu-18-04-uzerinde-saglama-ve-yonetme\/"},"wordCount":3207,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"articleSection":["Ubuntu"],"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/uzak-docker-hostlarini-docker-machine-ile-ubuntu-18-04-uzerinde-saglama-ve-yonetme\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/uzak-docker-hostlarini-docker-machine-ile-ubuntu-18-04-uzerinde-saglama-ve-yonetme\/","url":"https:\/\/fatihsoysal.com\/blog\/uzak-docker-hostlarini-docker-machine-ile-ubuntu-18-04-uzerinde-saglama-ve-yonetme\/","name":"Uzak Docker Hostlar\u0131n\u0131 Docker Machine ile Ubuntu 18.04 \u00dczerinde Sa\u011flama ve Y\u00f6netme - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-12-08T00:40:51+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/uzak-docker-hostlarini-docker-machine-ile-ubuntu-18-04-uzerinde-saglama-ve-yonetme\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/uzak-docker-hostlarini-docker-machine-ile-ubuntu-18-04-uzerinde-saglama-ve-yonetme\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/uzak-docker-hostlarini-docker-machine-ile-ubuntu-18-04-uzerinde-saglama-ve-yonetme\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Uzak Docker Hostlar\u0131n\u0131 Docker Machine ile Ubuntu 18.04 \u00dczerinde Sa\u011flama ve Y\u00f6netme"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/36093","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=36093"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/36093\/revisions"}],"predecessor-version":[{"id":36094,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/36093\/revisions\/36094"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=36093"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=36093"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=36093"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}