मुझे कुबेरनेट्स में इस डॉकर कमांड को चलाने की आवश्यकता है:
docker run -p 8080:8080 sagemath/sagemath sage -notebook
मैं "-नोटबुक " को छोड़कर सब कुछ मैप कर सकता हूं - क्या किसी को पता है कि यह कैसे करना है?
यहाँ मेरे पास अब तक क्या है, और निश्चित रूप से यह काम नहीं करता है क्योंकि" - नोटबुक " का अनुवाद कुबेक्टल में सही ढंग से नहीं किया गया है:
kubectl run --image=sagemath/sagemath sage --port=8080 --type=LoadBalancer -notebook
जब आप अपने ऋषि के लिए पॉड स्पेक परिभाषित करते हैं तो आप दोनों को परिभाषित कर सकते हैं command
और एक args
सरणी, तो आप के लिए यह की तरह होगा
command: sageargs:- -notebook
के साथ लॉन्च करने के लिए kubectl run
Usage: kubectl run NAME --image=image [--env="key=value"] [--port=port] [--replicas=replicas] [--dry-run=bool] [--overrides=inline-json] [--command] -- [COMMAND] [args...] [options]
तो साथ चलने की कोशिश करो --
सीमांकक : kubectl run --image=sagemath/sagemath --port=8080 --type=LoadBalancer -- sage -notebook
--
चाल करता है । इसका मतलब है कि कुबेक्टल पार्स नहीं करेगा क्योंकि कुबेक्टल निम्नलिखित स्ट्रिंग्स के साथ शुरू होता है -
तो आप उस कंटेनर को निष्पादित करते हैं:
kubectl run --image=sagemath/sagemath --port=8080 sage -- -notebook
और यदि आप जीकेई पर एक सार्वजनिक आईपी चाहते हैं, तो आपको कंटेनर को निष्पादित करना चाहिए:
kubectl expose deploy sage --type=LoadBalancer --port=8080
आप सार्वजनिक आईपी चला सकते हैं kubectl get service
पंक्ति में sage
कॉलम बाहरी-आईपी पर
command: sage notebookargs:
ऐसे मामलों के लिए
k run --image=sagemath/sagemath --port=8080 --command=true -- sage notebook
-- आदेश=असत्य यदि सही और अतिरिक्त तर्क मौजूद हैं, तो उन्हें 'आर्ग्स' फ़ील्ड के बजाय कंटेनर में 'कमांड' फ़ील्ड के रूप में उपयोग करें, जो डिफ़ॉल्ट है ।
'- नोटबुक डॉकर या कुबेक्टल का तर्क नहीं है, बल्कि
ऋषि ’ का तर्क है ।
Quinn
#6
हां-लेकिन मैं इसे कुबेक्टल में कैसे लागू करूं - यही सवाल है । ऊपर डॉकर कमांड लाइन काम करती है
आप जिस कमांड को चलाना चाहते हैं वह पहले की तरह ही अंत में जाता है ।