उत्पादन बनाम विकास में अलग-अलग व्यवहार करने के लिए "फोरमैन तरीका" क्या है? हम चाहते हैं कि फोरमैन देव में सामानों का एक समूह शुरू करना शुरू कर दे, हालांकि उसके अनुसूचित जनजाति उत्पादन में हमें (उदाहरण के लिए) solr शुरू करने की आवश्यकता नहीं है।फोरमैन डेवलपमेंट बनाम उत्पादन (रेल)
उत्तर
फोरमैन एक अलग फ़ाइल (-डी) और तर्कों का उपयोग करने के लिए तर्क लेता है कि यह निर्धारित करने के लिए कि क्या चलाना है। यह .foreman
फ़ाइल का भी समर्थन करता है जो उन तर्कों को डिफ़ॉल्ट बनने की अनुमति देता है। अधिक जानकारी के लिए http://ddollar.github.com/foreman/ देखें
मैं सम्मेलन का पालन करता हूं;
Procfile
को परिभाषित करता है सभी प्रक्रियाओं.foreman
द्वारा निर्धारित विशिष्ट फोरमैन चर
विकास:
.env
प्रत्येक डेवलपर के लिए सेट वातावरण चर.env.example
रों विकास के लिए ETS चूकforeman start
शुरू होता है सभी प्रक्रियाओं
उत्पादन:
heroku config
सेट वातावरण चरheroku ps:scale
पर या बंद हो जाती है, जो भी प्रक्रियाओं उत्पादन के लिए
यहाँ की जरूरत है एक परियोजना से एक उदाहरण।
Procfile:
web: bundle exec unicorn_rails -p $PORT -c ./config/unicorn.rb
worker: bundle exec rake jobs:work
search: bundle exec rake sunspot:solr:run
.env.example:
# default S3 bucket
S3_KEY=keykeykeykeykeykey
S3_SECRET=secretsecretsecret
S3_BUCKET=myapp-development
.env
# developer's private S3 bucket
S3_KEY=mememememememememe
S3_SECRET=mysecretmysecret
S3_BUCKET=myapp-development
.foreman:
# development port is 3000
port: 3000
मैंने पर्यावरण-विशिष्ट Procfile
एस पहले उपयोग किया है, जो कि बहुत आसान है और ठीक काम करता है।
मूल रूप से आप Procfile.development
है, Procfile.production
, आदि प्रत्येक में आप procs आप शुरू करना चाहते अनुकूलित कर सकते हैं, तो जैसे foreman
के माध्यम से उन्हें चलाने:
foreman start -f Procfile.development
एक और दृष्टिकोण आपके Procfile
में स्क्रिप्ट को संदर्भित करने के लिए है, और प्रत्येक स्क्रिप्ट के भीतर पर्यावरण के आधार पर उचित प्रक्रिया शुरू होती है। The creator of Foreman does this और an example from his Anvil project your reference है।
- 1. एक रेल साइट चलाना: विकास बनाम उत्पादन
- 2. रेल + फोरमैन + कर्मचारी सर्वर लटकता है
- 3. रेल बंडल केवल उत्पादन उत्पादन
- 4. आईफोन डेवलपमेंट - एक्सएमएलपार्स बनाम libxml2 बनाम TouchXML
- 5. आईफोन डेवलपमेंट - CLLocationManager बनाम MapKit
- 6. फोरमैन NGINX
- 7. स्टेजिंग ऐप बनाम उत्पादन ऐप
- 8. उत्पादन सर्वर पर रेल कंसोल बनाम सर्वर अंतर
- 9. उत्पादन रेल कंसोल
- 10. रेल: परीक्षण उत्पादन
- 11. रेल के साथ टेस्ट ड्राइव डेवलपमेंट (टीडीडी)
- 12. एंड्रॉइड डेवलपमेंट: एपीआई 14 बनाम एपीआई 15
- 13. Magento थीम डेवलपमेंट बेस बनाम डिफ़ॉल्ट
- 14. फोरमैन शुरू Heroku ट्यूटोरियल
- 15. रेल 3. उत्पादन डेटाबेस बनाना
- 16. उत्पादन सर्वर पर रेल सुरक्षा
- 17. रिमोट डेवलपमेंट
- 18. रेल बनाम बनाम
- 19. विकास बनाम उत्पादन: कनेक्शन स्ट्रिंग्स
- 20. अज़ूर डिटेक्ट स्टेजिंग बनाम उत्पादन
- 21. एग्इल सॉफ्टवेयर डेवलपमेंट 6.0
- 22. रेल वर्तमान_पृष्ठ? बनाम नियंत्रक.controller_name
- 23. "मानचित्र उत्पादन materialized बाइट्स" बनाम "उत्पादन बाइट्स के नक्शे"
- 24. एसवीएन वेब डेवलपमेंट वर्कफ़्लो
- 25. रेल 3 form_for नहीं उत्पादन कुछ करे
- 26. रेल उत्पादन 'सीएसएस precompiled नहीं है'
- 27. रेल रेक संपत्तियां: उत्पादन के लिए प्रीकंपाइल
- 28. उत्पादन के लिए रेल अनुप्रयोग बदलें
- 29. रेल 2.3.3 - उत्पादन मोड में सेट करना
- 30. रेल: उत्पादन से स्टेजिंग को अलग करना