के साथ एक वाग्रेंट बॉक्स पर अनुमतियां मैं कई परियोजनाओं के लिए योनि + कठपुतली वातावरण उत्पन्न करने के लिए सफलतापूर्वक http://www.puphpet.com का उपयोग कर रहा हूं। फिर इस हफ्ते मुझे लार्वेल 4 का उपयोग करके एक परियोजना के लिए एक प्रोटोटाइप लिखने के लिए काम सौंपा गया। चूंकि मैं पूरी तरह से परियोजना पर काम करने वाला नहीं हूं, मुझे लगा कि इसके लिए वीएम पर्यावरण बनाना सबसे अच्छा होगा व्यक्ति सिर्फ रेपो के लिए क्लोन कर सकते हैं। लैरवेल 4 के साथ ज्यादा अनुभव नहीं है मुझे देव पर्यावरण में बस कुछ ठीक करने के लिए मिला है। फिर मैंने पहला माइग्रेशन चलाने की कोशिश की और यहां समस्याएं app/storage
फ़ाइल अनुमतियों से शुरू होती हैं। से समन्वयित फ़ोल्डर प्रावधान आवारा और इतने तरह www-आंकड़ों के मालिक & समूह सेट:लैरवेल 4 पंपेट
1. एप्लिकेशन/भंडारण वेब उपयोगकर्ता
ठीक से लिखने योग्य होना चाहिए, आईडी बाहर ले
config.vm.synced_folder "./www", "/var/www", owner: "www-data", group: "www-data"
2. कारीगर केवल DB
ठीक करने के लिए उपयोग किया है आवारा बॉक्स के अंदर से चलाया जा सकता, vagrant ssh
और www फ़ोल्डर से कारीगर चलाएं।
3. ऐप/भंडारण & एप्लिकेशन/डेटाबेस आदेश माइग्रेशन
गरर का उपयोग करने के आवारा उपयोगकर्ता द्वारा लिखने योग्य रहना होगा, ठीक है, आवारा फ़ाइल (ध्यान दें करने के लिए कोड की निम्न भयानक टुकड़ा कहा, पहले कठपुतली में ऐसा करने की कोशिश की और यह नहीं लिया):
config.vm.provision :shell, :inline =>
"usermod -a -G www-data vagrant"
4. एप्लिकेशन/भंडारण & एप्लिकेशन/डेटाबेस समूह द्वारा लिखने योग्य नही हैं
अरग !!! ठीक है, आइए इस कठपुतली निर्देश का प्रयास करें:
file { "/var/www/app/storage":
source => "/var/www/app/storage/",
mode => 0775,
ensure => 'directory',
owner => 'www-data',
group => 'www-data',
recurse => true
}
नहीं, काम नहीं करता है। Puppet exec {}
निर्देश के साथ कोई प्रभाव नहीं करने का प्रयास किया। ऐसा लगता है कि योनि सिंक किए गए फ़ोल्डर के लिए अनुमति मेजबान मशीन द्वारा सेट की जाती है, अतिथि नहीं।
अंततः होस्ट मशीन में फ़ोल्डर के लिए अनुमतियों को मैन्युअल रूप से बदलना समाप्त हो गया। क्या ऐसा करने का कोई आसान तरीका है? मैं वास्तव में अगले देव को एक चिंता मुक्त वातावरण देने में सक्षम होना चाहूंगा जो वे रेपो से क्लोन कर सकते हैं, क्लोनिंग के बाद उन्हें सबकुछ फिर से सेट नहीं किया गया है।
अद्यतन
हम समझ गए होंगे कि अगर हम अपाचे चलाने उपयोगकर्ता को बदलने, आवारा पुनः लोड करने पर यह हावी नहीं होता। इसलिए हमने इसे मैन्युअल रूप से किया है और यह सिंक किए गए फ़ोल्डर की अनुमतियों & स्वामी को बदलने से बेहतर काम कर रहा है। अब हम यह समझने की कोशिश कर रहे हैं कि पपेट में मैन्युअल रूप से उस बदलाव को कैसे बनाया जाए।
मैं के इस खंड पर एक नज़र डालें आप और आरई के समान नाव में मी: # 2। क्या आप xip.io पता (इसलिए test.10.10.10.10.xip.io) का उपयोग करके अपना पर्यावरण सेट अप नहीं कर सके और फिर रूट विशेषाधिकार (या उपयोगकर्ता को आपकी लार्वेल इंस्टॉलेशन कनेक्ट हो रहा है) दूरस्थ विशेषाधिकार प्रदान करते हैं? फिर, जब आप होस्ट पर कारीगर डीबी कमांड चलाते हैं तो यह mysql बॉक्स को ढूंढने और लॉग इन करने में सक्षम होना चाहिए .. समझ में आता है? नोट: मैं भी mysql निकल पड़ा: /etc/mysql/my.cnf sudo नैनो; छोड़-बाह्य-लॉक ; बाँध-पता बचाने के लिए और फिर से लोड। उम्मीद है कि इससे मदद मिलती है! – dpluscc
यूप, हम इसे आज़माएंगे और देखेंगे कि यह कैसा चल रहा है। पारितोषिक के लिए धन्यवाद। – Adrian
आखिरकार यह अनुमतियों को बदलने की बात थी। हालांकि, मैं अभी भी डीबी की रिमोट पहुंच प्राप्त करने के लिए आपके सुझाव का उपयोग कर सकता हूं। – Adrian