CREATED STATUS PORTS NAMES55e1fd18acf1 simpleappnodedocker_web "node app.js" 6 seconds ago Up 6 seconds 0.0.0.0:9000->3000/tcp myapp9879ff20e241 postgres:9.6 "docker-entrypoint..." 36 hours ago Up 36 hours 0.0.0.0:5432->5432/tcp nd-db
मैं शेल में प्रवेश करने के लिए बैश चलाने की कोशिश करता हूं, लेकिन मुझे एक त्रुटि मिलती है, इसे कैसे हल किया जाए, मुझे लगता है कि मैं कुछ गलत कर रहा हूं ।
$docker-compose run myapp /bin/bash ERROR: No such service: myapp
उपयोग करें docker-compose कंटेनर शुरू करने और चल रहे कंटेनर में एक कमांड चलाने के लिए:
docker-compose updocker-compose exec web /bin/bash
docker-compose सेवा के नाम का उपयोग करता है-आपके मामले में यह है web - जबकि docker कंटेनर नाम का उपयोग करता है - इस मामले में myapp.
तो चलाने के लिए /bin/bash के माध्यम से docker, आप निम्नलिखित का उपयोग करेंगे:
docker exec -ti myapp /bin/bash
आप हटा सकते हैं container_name से docker-compose.yaml, फिर कंटेनर को स्वचालित रूप से नाम दिया जाएगा docker-compose - सेवा के समान, लेकिन के नाम के साथ उपसर्ग docker-compose ढेर (के foldername जहां docker-compose.yaml स्थित है) ।
एक और जवाब सही है, लेकिन किसी भी तरह से इसकी व्यापक व्याख्या में थोड़ा भ्रमित था;डॉकर और डॉकर-रचना और उद्धरण के संबंध;
प्रश्न में त्रुटि से छुटकारा पाने के लिए मुख्य बात यह है कि त्रुटि क्या कहती है: और उद्धरण;त्रुटि: ऐसी कोई सेवा नहीं: और उद्धरण; इसलिए, आप चाहिए ऐसी सेवा चुनें जो आपकी कंपोज़ फ़ाइल में हो, और नहीं कंटेनर का नाम। उदाहरण में, यह है web, और नहीं myapp.
यह भी सुनिश्चित करें कि आप अपने डॉकर-कंपोज़ की तुलना में उसी फ़ोल्डर में कमांड चला रहे हैं । वाईएमएल, अन्यथा आपको वही त्रुटि संदेश मिलेगा लेकिन ऊपर फिलिप का जवाब काम नहीं करेगा ।