2017-03-22 10 views
10

मैं django को डॉकर कंटेनर में uwsgi के माध्यम से चलाने की कोशिश कर रहा हूं।पाइथन पैकेज के लिए डॉकर क्यों देख रहा/सरल है?

मैं था वेब सर्वर में अपनी बनाया के साथ, डोकर में चल रहा है, लेकिन अब है कि मैं requirements.txt uwsgi शामिल करने के लिए संशोधन किया है, मैं निम्न त्रुटि संदेश प्राप्त हो रही है django:

पुनः प्रयास किया जाएगा (पुन: प्रयास करें (कुल = 4, कनेक्ट = कोई नहीं, पढ़ना = कोई नहीं, रीडायरेक्ट = कोई नहीं)) 'न्यूकनेक्शन एरर' (': नया कनेक्शन स्थापित करने में विफल: कनेक्शन के बाद विफल: [Errno -2] नाम या सेवा ज्ञात नहीं है,'// सरल/uwsgi/

तो यह यूआरएल डोकर की तरह लगता है पिप संकुल /simple है के लिए उपयोग कर रहा है, लेकिन यह कैसे बदली गई? जब मैंने पहली बार कंटेनर डीजेंगो बनाया और psycopg ठीक डाउनलोड किया गया।

मैंने uwsgi पैकेज का पूरा यूआरएल निर्दिष्ट करने की कोशिश की, लेकिन यह काम नहीं किया।

डोकर-compose.yaml:

version: '3' 
services: 
    db: 
    image: postgres 
    web: 
    dns: 8.8.8.8 
    build: . 
    command: uwsgi --http :8000 --module destExp.wsgi 
    volumes: 
     - .:/code 
    ports: 
     - "8000:8000" 
    depends_on: 
     - db 

Dockerfile:

FROM python:3.5 
ENV PYTHONUNBUFFERED 1 
RUN mkdir /code 
WORKDIR /code 
ADD requirements.txt /code/ 
RUN pip install -r requirements.txt 
ADD . /code/ 
CMD uwsgi --http :8000 --module destExp.wsgi 
+0

क्या आप अपने वेब भाग में 'dns: 8.8.8.8' जोड़ने का प्रयास कर सकते हैं? – hurturk

+0

हाय ज़ट्टा। मैंने आज कोशिश की कि मैं अपने प्रश्न को अपडेट करना भूल गया था। अभी भी कोई भाग्य नहीं है :( –

+0

क्या 'डॉकर रन-एट - आरएम - डीएनएस 8.8.8.8 पायथन: 3.5 पीई यूवीजीआईआई सफलतापूर्वक चलाएं? कम्पोज़ में डीएनएस भाग के लिए, v3 में dns' विकल्प का विकल्प v3 में अनदेखा किया जाता है यदि आप हैं स्वार का उपयोग करना। – hurturk

उत्तर

6

कि त्रुटि के कारण पिप दर्पण की मेजबानी के लिए तक पहुँचने में असमर्थ है। भाग /simple/uwsgi पाइप यूआरएल पथ के रूप में उपयोग किया जा रहा है।

कंपोज़ में DNS लाइन को v3 विनिर्देश के लिए अनदेखा किया जाता है यदि आप doc में बताए गए अनुसार स्वार पर तैनात हैं।

RUN echo nameserver 8.8.8.8 > /etc/resolv.conf && pip install -r requirements.txt 

आशा है कि मदद करता है: यहाँ पिप उपयोग विभिन्न डीएनएस क्षण भर के बनाने के लिए, बस निम्न के Dockerfile में अपने पिप लाइन अद्यतन एक समाधान नहीं है। एक स्थायी समाधान के रूप में, आपको जांच करनी चाहिए कि अपने ऑर्केस्ट्रेशन को कस्टम DNS का उपयोग कैसे करें या अपने मामले के लिए कंटेनर से वर्तमान DNS का समस्या निवारण कैसे करें।

संबंधित मुद्दे