docker push
- Docker & Kubernetes kursu
- Başlangıç
- Ders 40/82
- 4 dk
docker push ile image'ı registry'ye göndermeyi öğrenirsin.
docker push
docker push, yerel image'ı registry'ye yükler. Image adı hedef registry ve hesabı içermelidir; Docker Hub için kullanıcı/depo:etiket:
docker login
docker tag api:1.2.0 ali/api:1.2.0
docker push ali/api:1.2.0Registry'de zaten var olan katmanlar yeniden yüklenmez (Layer already exists); yalnızca değişenler gider.
Tüm etiketleri göndermek
Bir depodaki tüm etiketleri tek seferde göndermek için --all-tags kullanılır. Başka bir registry için adın başına adresi yazılır:
docker push --all-tags ali/api
docker tag api:1.2.0 ghcr.io/ali/api:1.2.0
docker push ghcr.io/ali/api:1.2.0Uygulama Docker Hub'a yayınla
Üç komut yaz: Docker Hub'a giriş yap; yerel api:1.3.0 image'ını ali/api:1.3.0 olarak etiketle; onu gönder.
Başlangıç kodu
# buraya yazÖrnek çözüm
docker login
docker tag api:1.3.0 ali/api:1.3.0
docker push ali/api:1.3.0Beklenen çıktı
Login Succeeded The push refers to repository [docker.io/ali/api] 5f6e7d8c9b0a: Pushed a2318d6c47ec: Layer already exists 1.3.0: digest: sha256:7b1c… size: 1789
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 docker push api:1.2.0 neden "denied: requested access to the resource is denied" hatası verir?
- Image çok büyüktür
- İnternet yoktur
- Etiket yanlış biçimdedir
- Ad bir hesap içermediği için library/api'ye yüklemeye çalışır Doğru cevap
Açıklama: Önce kullanici/api:1.2.0 olarak etiketlenmelidir.
2 Deponun tüm etiketlerini gönder.
docker push ____ ali/api
docker push --all-tags ali/api
Açıklama: --all-tags depodaki her etiketi yükler.
3 Eşleştir.
| Kavram | Anlamı |
|---|---|
docker login |
Kimlik doğrulama |
docker tag |
Hedef adı ver |
docker push |
Yükle |
Layer already exists |
Atlanan katman |