28 Mart 2023 Salı

Docker Hub İlk Push Komutumu Kullandım

 Docker gerçekten çok keyifli bir ortam. Test ortamında yeni şeyler denedikçe daha fazla şey öğreniyorum ve gelişimim çok hızlı bir şekilde ilerliyor. Umarım sıkılmadan devam edebilirim :)


Bugün kullandığım bazı komutlar:

#Docker login and images push
docker login
docker logout
docker images
docker info | grep Registry
docker image tag alpine:3.12 gundillias/alpine:3.12
docker image push gundillias/alpine:3.12
docker pull hello-world
docker rmi feb5d9fea6a5

#Docker tüm konteynerlari kalıcı olarak silme
docker rmi $(docker images -aq)
docker rmi -f $(docker images -aq)

21 Mart 2023 Salı

Docker Container Prune - Çok Hızlı Çalışıyor

 Bir süredir Docker eğitim videolarına bakıyorum ve teknolojiyi öğrenmeye çalışıyorum. Bir sonraki hedefimde kubernetes ve AWS gibi sistemler olacak. Bugün ilginç bulduğum bir komut öğrendim. Pasif olan tüm konteynerleri imha etmeye yarıyor. Dikkatli kullanmakta yarar var.

#docker container prune

Denemek için sanal sunucuda birkaç tane konteyner oluşturup ardından prune komutunu deneyebilirsiniz. Sonuç aşağıdaki gibi oluyor.

Docker


14 Mart 2023 Salı

Oracle VM VirtualBox - Entegrasyon Problemi | Pencereye Tıklayamamak ve Ekranın Sol Üstüne Sürekli İmleç Kaymasının Çözümü

 Bu sorun benim başımı çok büyük bir şekilde ağrıtmıştı ve sırf bu sorun nedeniyle bilgisayarımı formatlayıp çalışmalarıma sıfırdan başlama kararı bile aldığım oldu. Şimdi bunun çözümüne ulaştım ve buradan da herkesle paylaşmak istiyorum. Kendime de kısa bir not olsun. Benzer bir mouse imleç problemi yaşadığınızda lütfen aşağıda gördüğünüz seçenekleri kontrol edin ve güncelledikten sonra sanal makinelerinizi yeniden çalıştırın. Ben bu şekilde çözebildim ve çok rahatladım. Ctrl gibi herhangi bir tuşa basmadan sanal makine penceresine ve normal bilgisayarımdaki ekranlara direkt geçiş sağlayabiliyorum ve çok rahat bir şekilde her şeyi kullanıyorum. Bu şekilde daha da rahat oluyor.

14 Ocak 2023 Cumartesi

DevOps Yolunda Önce Docker mı yoksa Kubernetes mi Öğrenmeliyiz?

Docker, uygulamaların çalışmasını sağlamak için kullanılan bir container teknolojisidir. Kubernetes ise, container'ların yönetimi, dağıtımı ve skalasını sağlamak için kullanılan bir araçtır. Öncelikle Docker öğrenmeniz önerilir, çünkü Kubernetes container'ları yönetirken Docker kullanır. Ancak, uygulamalarınızı dağıtmak ve skalalamak istiyorsanız, Kubernetes öğrenmeniz daha yararlı olabilir.

4 Ocak 2023 Çarşamba

Ansible Varsayılan Yapılandırma ve Görevleri Farklı Playbooklara Dağıtma

 Ansible eğitiminde fena gitmiyoruz. En son yapıyı yeniden kurgulamaya ve her bir görevi farklı playbooklara dağıtmaya çalışıyoruz. Aşağıdaki resimde de görüldüğü gibi bir dizin kurgusuna gittik. Bu sanırım Ansible Docs'un istediği veya önerdiği bir yapı. Her bir görevin altında dikkat ederseniz bir main.yml dosyası var. Ayrıca tree isimli yeni bir komut öğrendim. Linux'ta dizin alt yapısını öğrenmek için bu komutu kullanabiliyorsunuz ancak yüklü olması gerekiyor. Yüklemesi birkaç saniyelik bir işlem. Denemenizi öneririm.

Ansible Dosya Yapısı


27 Aralık 2022 Salı

Ansible'da Değişkenler ve Inventory Dosyasında Sunucuları Gruplandırma

 Ansible'ın yeteneklerini gördükçe heyecanlanıyorum ve gerçekten ufkum genişliyor diyebilirim. Birçok şey yapmaya başladık. Bugün varsayılan yml dosyası oluşturup inventory dosyamızda sunuclarımızı gruplandırdık ve görevleri yine worker'lar üzerindeki sunucu tiplerine göre çalıştırmayı başardık. Yeni yml dosyamızda artık görev görev yapılacak işlemleri ekleyip sonucunun gerçekleşmesini bekliyoruz. Yml dosyasının son hali:

inventory:

[web_sunuculari]
192.168.1.64 

[veritabani_sunuculari]
192.168.1.65 

apache_varsayilan.yml:

apache_sunucusu: apache2
php_kutuphane: libapache2-mod-php

***

---
  - hosts: all
    become: true
    tasks:

    - name: Bu gorev, sunucu güncellemeleri için hazırlanmıştır.
      ansible.builtin.package:
        upgrade: dist
        update_cache: yes
      when: ansible_distribution == "Ubuntu"
    # worker'ların arasında Rocky olsaydı update_only: yes ve
    distirbution kısmı "Rocky" olarak ayrıca eklenecekti.
       

    # Bu görev Ubuntu için Apache ve Php kütüphanesini yükler.
  - hosts: web_sunuculari
    become: true
    tasks:

      - name: İşletim sistemlerini tespit et.
        debug: var=ansible_os_family

      - name: Dosyalardan değişkenleri oku
        include_vars: "{{ lookup('first_found', params) }}"
        vars:
          params:
            files:
            - "vars/apache_{{ ansible_os_family }}"
            - "vars/apache_varsayilan.yml"

      - name: Bu gorev, Ubuntu için apache ve php kütüphanesi ile
                birlikte paket index'ini gunceller.
        ansible.builtin.package:
            name:
              - "{{ apache_sunucusu }}"
              - "{{ php_kutuphane }}"
            state: latest