डॉकर: डॉकटर कंटेनर में नैनो चलाना


128

मैं एक डॉक कंटेनर में एक इंटरेक्टिव शेल को खोलता हूं

sudo docker exec -t -i {container_name} bash

अब तक तो अच्छा है लेकिन nanoपरिणाम चलाने की कोशिश कर रहा है :

टर्मिनल खोलने में त्रुटि: अज्ञात।


यह कौन सा कंटेनर है? यह भी कि आपका पैठ चर कैसा दिखता है?
उस्मान इस्माइल

जवाबों:


196

मुझे लगता है कि यह डॉकर इशू # 9299 से संबंधित हो सकता है ।

उस मुद्दे में कुछ वर्कअराउंड टिप्पणी की गई हैं:

  • एक छद्म-TTY (विकल्प -t) आवंटित करने वाले कंटेनर को चलाएँ ।
  • निर्यात वातावरण चर $ अवधि = कार्यकारी में कंटेनर की प्रक्रिया समय में टर्म (यानी: export TERM=xterm)

मुख्य मुद्दा वास्तव में यह एक
पियरे डे लेसपिन

2
एक छद्म-टीटीवाई आवंटित करना मेरे लिए काम नहीं करता TERMथा लेकिन बदल गया ।
नाथन उस्मान

यह मुद्दा पर्यावरण के आधार पर निराशाजनक है। विन 10 पर विंडोज के लिए डॉकर का उपयोग करने वाले सेंटोस 8 के लिए, केवल TERM=xterm-colorमेरे लिए काम करने लगता है। सर्वरफ़ॉल्ट उत्तर
mdisibio

123

रन कॉमैंड: export TERM=xterm


1
केवल स्पष्ट करने हेतु। Docker कंटेनर को पुनरारंभ किए बिना। apt-get install नैनो। फिर TERM = xterm निर्यात करें। फिर नैनो file.txt। (यदि आप अपने डॉकटर कंटेनर को पुनः आरंभ करते हैं तो यह आसपास नहीं होगा।)
चाड

ठीक काम किया, बस उस कमान को चलाया और फिर नैनो ने काम किया, कोई कंटेनर फिर से शुरू नहीं हुआ
बेन वाइंडिंग

36

आप जोड़ सकते हो

ENV TERM xterm

यदि आप नियमित रूप से संपादक का उपयोग करेंगे तो अपने डॉकरफाइल को। हमारे पास हमारे बेस कंटेनर में वह सेटिंग है, क्योंकि हम लगातार vi / emacs के साथ चीजों को डिबग कर रहे हैं।


किसी तरह यह मेरे लिए काम नहीं कर रहा है जबकि docker exec -it [CONTAINER_ID] /bin/bash -c "export TERM=xterm; exec bash"ठीक काम करता है। मैंने सिर्फ बयान ENV TERM xtermसे पहले जोड़ा EXPOSE, क्या यह सही है?
लुकास ओपरमैन

कोई बात नहीं, इसे "हल" किया। मूल रूप से मुझे कमांड ENV TERM xtermसे पहले जोड़ने की जरूरत थी RUN
लुकास ओपरमैन


10

जैसा $TERMकि पहले से ही सेट था, xtermलेकिन अभी भी मेरे लिए काम नहीं कर रहा है, यहाँ एक तरीका है जो काम करता है:docker exec -it [CONTAINER_ID] /bin/bash -c "export TERM=xterm; exec bash"


5

मैंने एक वर्कअराउंड किया, मेरे .bashrc में मैंने जोड़ा है:

alias nano='export TERM=xterm && nano'

इस स्थिति में त्रुटि दिखाई नहीं देती है



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