2015-05-29 11 views
20

पर काउबॉय सर्वर के साथ फीनिक्स ऐप प्रारंभ करें क्या mix phoenix.server --port=4001 जैसे कुछ कमांड का उपयोग करके कंसोल से अलग-अलग बंदरगाहों पर स्थानीय रूप से कुछ फीनिक्स ऐप्स शुरू करना संभव है? यह निश्चित रूप से काम नहीं करता है, लेकिन, शायद, वही तरीका है।विभिन्न पोर्ट

उत्तर

32

हाँ! सुनिश्चित करें कि आप मिश्रण config env बंदरगाह संदर्भ के लिए, यानी

config :my_app, MyApp.Endpoint, 
    http: [port: {:system, "PORT"}], 

फिर टर्मिनल से सेट करें:

$ PORT=4001 mix phoenix.server 
$ PORT=4002 mix phoenix.server 
$ PORT=4003 mix phoenix.server 
+0

Thanx! यही मुझे – kovpack

+5

की आवश्यकता है नोट: 'config.exs' में ऐसा करना काम नहीं करता है, कारण मुझे लगता है कि' dev.exs' कॉन्फ़िगर को ओवरराइड करता है। इसलिए इसे 'dev.exs' में रखें। अधिक जानकारी के लिए इस समस्या को फीनिक्स https://github.com/phoenixframework/phoenix/issues/962 – tejasbubane

+0

नोट 2 पर देखें: आपको अपनी कॉन्फ़िगरेशन फ़ाइलों में लाइनें नहीं जोड़नी चाहिए लेकिन मौजूदा लाइनों को संपादित करना चाहिए। मुझे अपने ऐप के लिए लाइन जोड़कर एक गुप्त त्रुटि मिली। – Hartator

1

यह एक समाधान के रूप में मेरे लिए जरूरी था क्योंकि मेरी मुद्दा यह था कि मैं जाने के लिए की जरूरत C9.io बंदरगाह, हल समस्या हुक्म मेरे लिए, dev.exs फ़ाइल के लिए इस कोड को जोड़ने:

config :my_app, MyApp.Endpoint, 
    http: [port: {:system, "PORT"}], 

और फिर टर्मिनल में, मैं सिर्फ सर्वर के रूप में चलाने के लिए आवश्यक सामान्य:

mix phoenix.server 
20

संपादित अपने config/dev.exs और तरह Endpoint http पोर्ट बदलना निम्नलिखित:

PORT=4002 mix phoenix.server # to run on port 4002 
mix phoenix.server # to run on port 4000 
:

config :my_app, MyApp.Endpoint, 
    http: [port: System.get_env("PORT") || 4000], 

इस बंदरगाह स्थापित किया जाना, या छोड़ दिया डिफ़ॉल्ट 4000 के रूप में अनुमति देता है

इस उत्तर का वर्णन @ क्रिस-मैकॉर्ड on github द्वारा किया गया था।

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