Parandus: Dockeri deemoniga ei saa ühendust luua



Proovige Meie Instrumenti Probleemide Kõrvaldamiseks

Võimalik, et olete väga segaduses, kui Linuxi terminal viskab teile tõrke „Ei saa ühendust Dockeri deemoniga ühendada”, sest Dockeri deemon töötab enam kui tõenäoliselt seda nähes. Ehkki soovite veenduda, et see nii on, olete tõenäoliselt hämmingus, kui leiate, et see viga pole isegi seotud teenuse käivitamata jätmisega. Enamasti visatakse seda kasutajatele, kes pole end Dockeri gruppi lisanud.



Docker väljastab Linuxi süsteemides eraldi kasutajarühma ja need, kellel on kasutajakontosid, mida sellesse ei lisata, ei saa sellega ühendust luua. Pidage meeles, et kasutajakonto lisamine Dockeri rühma on funktsionaalselt juurekvivalent, kuna deemon töötab alati juurkasutajana. Seda võib eeldada ühekasutaja Ubuntu Serveri süsteemis, kuid kindlasti on see, mida peaks meeles pidama neile, kes Dockerit Archi, Fedora või Debiani kaudu kasutavad.



1. meetod: Dockeri teenuse oleku kontrollimine

Kuigi see on peaaegu kindlasti nii, peate kontrollima, kas Dockeri teenus töötab praegu. Terminaliaknas käivitage systemctl olek docker.service tavakasutajana. Peaksite saama teavet selle kohta, milline PID-number Dockeri deemon omistati. Kui te seda ei tee, peate teenuse taaskäivitama.



Kui oleksite selle taaskäivitanud, proovige teha mis iganes, mis tõi teile tõrke „Dockeri deemoniga ei saa ühendust”. Kui see nüüd töötab, siis lihtsalt ei olnud teenust käimas ja te ei pea tegelikult muretsema muu pärast selle põhjuse, et see ei töötanud. Kahjuks ei tööta see enamikul juhtudel, seega peate sellistes olukordades edasi liikuma.

2. meetod: kasutajate lisamine Dockeri rühma

Jookse dokkija info käsurealt, mis tavaliselt annab teile uuesti tõrke 'ei saa ühendust Dockeri deemoniga'.

Sel juhul peate kandideerima sudo groupadd docker; sudo usermod -aG docker $ USER et lisada ennast õigesse rühma. Kui see peaks andma vea, kuna teil pole kasutajat, saate käsku muuta nii, et see käivituks sudo groupadd docker; sudo gpasswd -a $ USER dokk , kuid see ei tohiks üldjuhul olla probleem, sest enamik kommertsklassi Linuxi jaotusi töötab sama tööriistakomplektiga. Igal juhul jookse newgrp dokk et saaksite uude dokkerirühma sisse logida, kui te pole seda veel teinud.



Pidage meeles, et see lisab alati kasutaja, kellena olete praegu sisse logitud, mis ei tohiks olla liiga suur probleem enamike inimeste süsteemides, kellel pole mitu kontot peale ühe kasutaja ja juurkonto. Kuna teil on praegu administraatorijuurdepääs sisse logitud, käivitage sudo chgrp docker / usr / bin docker; sudo chgrp docker /var/run/docker.sock dokkimispesa ja käsu õiguste parandamiseks. Tavaliselt kuulub sokli fail ainult juurkasutajale, nii et see parandab.

Pärast selle käivitamist ei tohiks teil probleeme olla, sest see kuulub nüüd samasse rühma, mille olite loonud eelmises käsus. Proovige siiski, kas dokkija töötab ilma sudota, nii et tippige dokk jooksma tere-maailma tavakasutajana veendumaks, et teil pole muid vigu.

Siiani saavad väga vähesed kasutajad endiselt mingisugust veateadet. Enamik asju tuleks selles kohas parandada, kuid kui teil on endiselt probleeme, võiksite täielikult välja logida. Proovige avada teine ​​terminaliemulaatori aken, kuid kui see ei toimi, aitab see mõnikord süsteemi täielikuks taaskäivitamiseks alla lasta, kui see on üldse teostatav

3. meetod: ACL-ide kasutamine Dockeri metaandmete muutmiseks

Kui te ei soovi kuuluda gruppi, mis teeb teid nagu juurkasutaja, saate sokli faili seadistada töötama ainult teatud õigustega. Kui soovite seda teha just nii, võite protsessi gpasswd ignoreerida. Kui peate turvakontrolli läbiviijatel koormama failisüsteemi erinevate ACL-kirjete leidmise eest, siis see takistab teil täielikult dokkimisrühma kasutamist.

Kui soovite seda teha nii, siis võite joosta sudo setfacl -m kasutaja: nimi: rw /var/run/docker.sock samal ajal asendades kasutaja ja nimi vastavate siltidega. See annab loa juurdepääsuks Dockeri soklile aadressil /var/run/docker.sock, mis peaks töötama Debiani ja Ubuntu Serveriga.

3 minutit loetud