सूदो के रूप में चल रहा है


12

मैंने boot2docker स्थापित किया और मैं भाग गया:

./boot2docker start
 export DOCKER_HOST=tcp://localhost:4243

मैंने डॉकर साइट से एक ट्यूटोरियल शुरू किया।

मुझे एक बात समझ में नहीं आती - जब मैं दौड़ता हूँ:

sudo docker info
==>
Get http:///var/run/docker.sock/v1.11/info: dial unix /var/run/docker.sock: no such file or directory

हालाँकि जब मैं इसके बिना sudoकाम करता हूँ:

MacCris:bin cristianc$ docker info
Containers: 2
Images: 10
Storage Driver: aufs
 Root Dir: /mnt/sda1/var/lib/docker/aufs
 Dirs: 14
Execution Driver: native-0.2
Kernel Version: 3.14.1-tinycore64
Debug mode (server): true
Debug mode (client): false

किसी भी विचार क्यों ट्यूटोरियल में sudo के साथ चल रहा है काम नहीं करता है (कम से कम मेरे लिए)?


2
ऐसा इसलिए है क्योंकि sudo का उपयोग करने से आपका env क्लियर हो जाता है। यहां आपको sudo का उपयोग करने की कोई आवश्यकता नहीं है क्योंकि आप TCP इंटरफ़ेस से कनेक्ट कर रहे हैं
cpuguy83

जवाबों:


15

DOCKER_HOSTवातावरण चर सेट नहीं है। आप ऐसा करके इसकी पुष्टि कर सकते हैं:

> env

फिर सूडो के रूप में:

> sudo env

DOCKER_HOSTवैरिएबल सेट के बिना , डोकर डेमॉन से कनेक्ट नहीं हो सकता है।


3

प्रयत्न, कोशिश:

sudo DOCKER_HOST=$DOCKER_HOST docker run

इस तरह से आवश्यक पर्यावरण चर उपलब्ध होगा sudo


2

यदि आप चाहते हैं कि DOCKER_HOSTआपके प्रोफाइल से वैरिएबल उपलब्ध हो जब आप sudo के साथ docker कमांड चलाते हैं, तो आप sudoersफाइल करने के लिए निम्न लाइन जोड़ सकते हैं । के साथ खोलें:

sudo visudo

जोड़ें:

Defaults        env_keep += "DOCKER_HOST"

1

यदि आप boot2docker का उपयोग कर रहे हैं, तो /Applicationफ़ोल्डर में जाएं और कमांड चलाएं

$(boot2docker shellinit)

यह DOCKER_HOSTपर्यावरण में आपके चर को ठीक करेगा ।


0

मेरे DOCKER_HOSTलिए tcp://192.168.59.103:2375काम करने के लिए पर्यावरण चर सेट करना ।

त्वरित तरीका यह आपकी कमांड लाइन में चल रहा होगा (OSX / Unix / Linux मशीनों के लिए):

export DOCKER_HOST=tcp://192.168.59.103:2375
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.