Görüntüleri Kayıt Depolarına Gönderme
Oluşturduğunuz Docker görüntülerini Docker Hub veya GitHub Container Registry gibi kapsayıcı kayıt depolarına gönderecek iş akışlarını yapılandırın.
Görüntüleri Kayıt Depolarına Gönderme, CoddyKit'te ücretsiz bir CI/CD with GitHub Actions & DevOps Pipelines dersidir. Bu, 4 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, CI/CD with GitHub Actions & DevOps Pipelines öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. CI/CD with GitHub Actions & DevOps Pipelines kursu toplamda 4 dersten oluşur.
Konteyner Kayıt Defterleri Nedir?
Konteyner kayıt defteri, Docker görüntüleriniz için güvenli bir çevrim içi depolama hizmetidir. Bunu, özellikle uygulamanızın paketleri için tasarlanmış bir bulut sürücüsü olarak düşünebilirsiniz.
- Görüntülerinizin farklı sürümlerini depolarlar.
- Görüntüleri başkalarıyla paylaşmanızı kolaylaştırırlar.
- Çeşitli ortamlara dağıtım için kritik öneme sahiptirler.
Kayıt Defterleri Neden Kullanılır?
Kayıt defterleri, modern yazılım geliştirme için çok önemlidir. Birkaç temel avantaj sağlarlar:
- Görüntü Paylaşımı: Uygulama görüntülerinizi kolayca dağıtın.
- Sürüm Denetimi: Uygulamanızın farklı sürümlerini depolayın ve yönetin.
- Güvenilir Dağıtım: Ortamlar arasında tutarlı dağıtımlar sağlayın.
- Güvenlik: Birçok kayıt defteri güvenlik açığı taraması sunar.
Yaygın Kayıt Defteri Hizmetleri
Çok sayıda konteyner kayıt defteri hizmeti bulunmaktadır. Sıkça karşılaşacağınız iki popüler hizmet şunlardır:
- Docker Hub: Yaygın olarak kullanılan herkese açık bir kayıt defteridir. Herkese açık görüntüleri paylaşmak ve kişisel projeler için harikadır.
- GitHub Konteyner Kayıt Defteri (GHCR): GitHub depolarıyla sıkı bir şekilde bütünleşmiştir. Özel görüntüler ve hâlihazırda GitHub kullanan kuruluşlar için mükemmeldir.
Diğer büyük bulut sağlayıcıları da AWS ECR veya Google Konteyner Kayıt Defteri gibi kendi kayıt defterlerini sunar.
Kayıt Defteri Kimlik Doğrulaması
Bir görüntüyü kayıt defterine göndermeden önce kim olduğunuzu kanıtlamanız gerekir. Bu işleme kimlik doğrulama veya "oturum açma" denir.
Genellikle bir kullanıcı adı ile kişisel erişim belirteci (PAT) veya parola sağlarsınız. Bu kimlik bilgileri, yalnızca yetkili kullanıcıların özel depolarınızdan görüntü gönderebilmesini veya çekebilmesini sağlar.
docker/login-action Kullanımı
GitHub Actions'ta Docker uyumlu çoğu kayıt defteriyle kimlik doğrulamanın en iyi yolu docker/login-action eylemini kullanmaktır.
Bu eylem, iş akışınızın belirtilen kayıt defterinde güvenli biçimde oturum açmasını sağlar ve sonraki adımların görüntü göndermesine olanak tanır. Girdi olarak username ve password değerlerini alır.
Docker Hub'a Görüntü Gönderme
Docker Hub'a bir görüntü göndermek için iş akışınızın şunları yapması gerekir:
- Oturum açma: GitHub Gizli Bilgisi olarak saklanan Docker Hub kullanıcı adınız ve Kişisel Erişim Belirteciniz (PAT) ile
docker/login-actioneylemini kullanın. - Derleme ve Gönderme: Görüntünüzü oluşturmak için
docker/build-push-actioneylemini kullanın vepush: trueayarını yapın. Görüntü etiketinizin Docker Hub kullanıcı adınızı içerdiğinden emin olun; örneğinyour_username/my-app:latest.
Docker Hub İş Akışı Örneği
İşte Docker Hub'a Docker görüntüsü oluşturup gönderen bir GitHub Actions iş akışı örneği. Deponuzda DOCKER_USERNAME ve DOCKER_TOKEN değerlerini GitHub Gizli Bilgileri olarak ayarlamayı unutmayın.
name: Publish Docker image to Docker Hub
on:
push:
branches: [ "main" ]
jobs:
build-and-push:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Log in to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_TOKEN }}
- name: Build and push Docker image
uses: docker/build-push-action@v5
with:
context: .
push: true
tags: ${{ secrets.DOCKER_USERNAME }}/my-app:latestGHCR'a Görüntü Gönderme
GitHub Konteyner Kayıt Defteri (GHCR), sorunsuz bir bütünleşme sunar. GHCR için temel farklar şunlardır:
- Kimlik Doğrulama: Kimlik doğrulama için yerleşik
GITHUB_TOKENdeğerini kullanabilirsiniz.username: ${{ github.actor }}vepassword: ${{ secrets.GITHUB_TOKEN }}ayarlarını yapın. - İzinler: İşinizin
packages: writeiznine sahip olması gerekir. - Görüntü Etiketleme: Görüntüler
ghcr.io/<OWNER>/<REPOSITORY>:<TAG>biçiminde etiketlenir.
GHCR İş Akışı Örneği
Bu iş akışı, GitHub Konteyner Kayıt Defteri'ne görüntü göndermeyi gösterir. permissions bloğuna ve görüntü etiketi biçimine dikkat edin.
name: Publish Docker image to GHCR
on:
push:
branches: [ "main" ]
jobs:
build-and-push:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write # Required for GHCR
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Log in to GHCR
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and push Docker image
uses: docker/build-push-action@v5
with:
context: .
push: true
tags: ghcr.io/${{ github.repository }}:latestAnladıklarınızı Kontrol Edin
Kapsayıcı kayıt defterlerine imaj gönderme hakkında öğrendiklerinizi hızlıca gözden geçirelim.
Özet: İmajlarınızı Gönderin!
Harika iş çıkardınız! GitHub Actions kullanarak Docker imajlarını kapsayıcı kayıt defterlerine nasıl göndereceğinizi öğrendiniz.
- Kapsayıcı kayıt defterleri Docker imajlarınızı depolar ve yönetir.
- Kimlik doğrulama, kimlik bilgileri kullanılarak gerçekleştirilen kritik bir ilk adımdır.
docker/login-action, güvenli bir şekilde oturum açmanıza yardımcı olur.- Hem Docker Hub hem de GitHub Container Registry için örnekler gördünüz ve bunların kendilerine özgü kimlik doğrulama ve etiketleme gereksinimlerini öğrendiniz.
Sırada bu imajları Kubernetes'e nasıl dağıtacağınızı öğreneceksiniz!
Sıkça Sorulan Sorular
“Görüntüleri Kayıt Depolarına Gönderme” dersi ücretsiz mi?
Evet — “Görüntüleri Kayıt Depolarına Gönderme” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve CI/CD with GitHub Actions & DevOps Pipelines kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. CI/CD with GitHub Actions & DevOps Pipelines kursu toplamda 4 dersten oluşur.
“Görüntüleri Kayıt Depolarına Gönderme” dersinde ne öğreneceğim?
Oluşturduğunuz Docker görüntülerini Docker Hub veya GitHub Container Registry gibi kapsayıcı kayıt depolarına gönderecek iş akışlarını yapılandırın. CI/CD with GitHub Actions & DevOps Pipelines ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
CI/CD with GitHub Actions & DevOps Pipelines öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te CI/CD with GitHub Actions & DevOps Pipelines, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 2. dersidir.
“Görüntüleri Kayıt Depolarına Gönderme” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu CI/CD with GitHub Actions & DevOps Pipelines dersinde kod yazıp çalıştırabilir miyim?
Evet. Her CI/CD with GitHub Actions & DevOps Pipelines dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Actions ile Docker Görüntüleri Oluşturma
- Görüntüleri Kayıt Depolarına Gönderme
- Actions ile Kubernetes'e Dağıtım
- CI/CD'de Helm Grafikleri ve Kubernetes Manifestoları