Docker 'İzin Reddedildi' Hatası

Docker Izin Reddedildi Hatasi



Docker ile çalışırken komutun 'izin reddedildi' hatası döndürdüğü bir durumla karşılaşabilirsiniz. Bu hata, Docker'ı komut için yeterli izinler olmadan çalıştırmayı denediğinizde oluşur.

Docker, ilgili komutları varsayılan olarak yürütmek için sudo veya root izinlerine ihtiyaç duyar. Gerekli ayrıcalıklar olmadan herhangi bir komutu çalıştırmaya çalışmak, meşhur 'izin reddedildi' hatasına yol açar.







Bu eğitimde, Docker komutlarını çalıştırmayı denediğinizde 'izin reddedildi' hatasını düzeltmek için kullanabileceğiniz çeşitli yöntem ve teknikler sağlanmaktadır.



Docker'ın rootsuz ortamda çalıştırılma sürecini kapsamadığını unutmayın. Köksüz Docker hakkındaki eğitimimize aşağıdaki kaynaktan göz atabilirsiniz:



Gereksinimler:

Tahmin edebileceğiniz gibi, bu yazıya devam etmek için aşağıdakilere sahip olmanız gerekiyor:





    1. Docker sürümü 20.0 ve üzeri
    2. Ana sistemdeki Sudo veya root izinleri

“İzin Reddedildi” Hatası Nedir?

Docker'da 'izin reddedildi' hatası oluştuğunda, izinlerin yetersiz olması nedeniyle host sistemin Docker daemon'u ile iletişim kuramaması anlamına gelir. Aşağıda bir örnek gösterilmektedir:

$ liman işçisi koşusu -BT meşgul kutusu ş



Verilen hatayla karşılaşırsanız, nasıl düzelteceğinizi öğrenmek için aşağıdaki yöntemlerden bazılarını kullanabilirsiniz.



Yöntem 1: Docker'ı Kök olarak çalıştırın

Docker'ın 'izin reddedildi' hatasını çözmenin ilk ve en belirgin yöntemi 'sudo' komutunu kullanmaktır. Sudo ayrıcalıklarınız varsa sudo kullanarak ilgili komutu çalıştırarak sorunu düzeltebilirsiniz.

Örneğin söz konusu hatayı düzeltmek için komutun önüne şu şekilde sudo ekleyebiliriz:

$ sudo liman işçisi koşusu -BT meşgul kutusu ş



Gördüğünüz gibi Docker gerekli görselleri başarıyla çekiyor ve konteyneri çalıştırıyor.

Yöntem 2: Docker Daemon'u yeniden başlatın

Bazen motorda bir sorun olması durumunda Docker'da 'izin reddedildi' hatası alabilirsiniz. Sorunu manuel olarak takip etmek yerine, yeniden yüklemek için Docker arka plan programını hızlı bir şekilde yeniden başlatmayı deneyebilirsiniz.

Docker arka plan programının durumunu aşağıdaki gibi kontrol ederek başlayın:

$ liman işçisi systemctl durumu liman işçisi



Docker'ın çalıştığından emin olduktan sonra hizmeti aşağıdaki komutla yeniden başlatın:

$ sudo systemctl docker'ı yeniden başlat


Bu, Docker arka plan programını başlatmalı ve herhangi bir komutu çalıştırmanızı engelleyebilecek olası sorunları çözmelidir.

Yöntem 3: Root Dışı Kullanıcıyı Etkinleştirme

Docker'da 'izin reddedildi' hatasını çözmek için kullanabileceğiniz bir diğer yöntem ise root olmayan kullanıcıların Docker komutlarını çalıştırmasına izin vermektir.

Bu yöntemi etkinleştirmek için ana sisteme giriş yapın ve Docker için yeni bir grup oluşturun.

$ sudo grup ekleme -F liman işçisi


Daha sonra istediğiniz kullanıcıyı aşağıdaki gibi Docker grubuna ekleyin:

$ sudo kullanıcı modu -aG liman işçisi linuxhint


Önceki komut linuxhint kullanıcısını Docker grubuna eklemelidir.

Son olarak, aşağıdaki komutu kullanarak grup değişikliklerini geçerli oturuma uygulayın:

$ Newgrp liman işçisi


Tamamlandığında, Docker grubundaki herhangi bir kullanıcı için sudo kullanmadan herhangi bir Docker komutunu çalıştırabilirsiniz.

Yöntem 4: Docker İzinlerini Yeniden Yapılandırma

Kullanabileceğiniz bir sonraki yöntem Docker yuvalarının izinlerini sıfırlamaktır. Aşağıdaki komutu çalıştırarak Docker Unix soketinin sahipliğini değiştirerek başlayın:

$ sudo yenilmiş kök:docker / öyleydi / koşmak / liman işçisi.sock


Ardından, aşağıdaki komutu kullanarak ana dizininizdeki gizli Docker dizininin sahipliğini alın:

$ sudo yenilmiş -R ' $KULLANICI ' : ' $KULLANICI ' $ANA SAYFA / .liman işçisi


Son olarak, okuma ve yazma izinlerine sahip grubu aşağıdaki gibi dizine atayın:

$ sudo mod -R g+rw ' $ANA SAYFA /.liman işçisi'


Sağlanan yöntemler, temel Docker dosyaları ve dizinleri için yeterli izinleri ayarlamalıdır.

Çözüm

Bu eğitimde, Docker komutunu çağırırken Docker'ın 'izin reddedildi' hatasını çözmek için dört ana yöntemi nasıl kullanabileceğimizi öğrendik.