හුදකලා පරිසරයක් නිර්මාණය කිරීම සඳහා මා වැග්‍රන්ට් හෝ ඩෝකර් භාවිතා කළ යුතුද? [වසා ඇත]


2085

මම උබුන්ටු සංවර්ධනය හා යෙදවීම සඳහා භාවිතා කරන අතර හුදෙකලා පරිසරයක් නිර්මාණය කිරීමේ අවශ්‍යතාවයක් ඇත.

මම මේ සඳහා වැග්‍රන්ට් හෝ ඩෝකර් සලකා බලමි. වාසි සහ අවාසි මොනවාද, නැතහොත් මෙම විසඳුම් සැසඳෙන්නේ කෙසේද?


27
දැන් දෙදෙනාම combinable ඇත: docs.vagrantup.com/v2/provisioning/docker.html
ලේබර් පක්ෂ

78
සේවා දෙකේ ලේඛකයන්ගේ පිළිතුරු ලබා ගැනීමට ඔබගේ ප්‍රශ්නය වාසනාවන්තයි: මිචෙල් සහ සොලමන් හයික්ස්
එහිසෑඩ්

4
මම නව සාරාංශයක් දීමට කැමතියි - ප්‍රශ්නය බොහෝ දුරට වැරදිය. නිවැරදි ප්‍රශ්නය නම්: හුදකලා පරිසරයක් නිර්මාණය කිරීම සඳහා මම වැග්‍රන්ට් හෝ ඩොකර්-රචනා භාවිතා කළ යුතුද? පිළිතුර නම්, වැග්‍රන්ට් සහ ඩොකර්-රචනා පරිසරය විස්තර කිරීමේ එකම කාර්යය ඉටු කරන අතර ඔබ ඒ වෙනුවට ඩොකර්ව අතථ්‍ය පෙට්ටියට සංසන්දනය කළ යුතුය. වෙනස නම් විග්‍රන්ට් හට ඩෝකර්, වීඑම්වෙයාර්, වින්ඩෝස්, ලිනක්ස් හෝ ඕඑස්එක්ස් හි අථත්‍යකරණය වැනි ඕනෑම අථත්‍යකරණයක් භාවිතා කළ හැකි නමුත් ඩොකර්-රචනා කළ හැක්කේ ලිනක්ස් පාදක කරගත් ඩෝකර් රූප පමණි.
PHZ.fi-Pharazon

මට පිළිතුර නම් “නිත්‍ය වැඩ කටයුතුවලදී ඔබට වේගය කොතරම් වැදගත්ද” යන්නයි. වැග්‍රන්ට් ඩොකර්ට වඩා මන්දගාමී බව මට පෙනේ. ඩොකර් මත, විශේෂයෙන් ආරම්භක ඇදීමකින් පසුව, ඩොකර්ගේ හැඹිලිය සහ ස්ථර ප්‍රවේශය එය සංවර්ධකයෙකු ලෙස මට භාවිතා කිරීමට පහසුම හා වේගවත් කරයි
මයිකල් ඩුරන්ට්

Answers:


1156

ඔබේ අරමුණ හුදකලාව නම්, මම හිතන්නේ ඩෝකර් ඔබට අවශ්‍ය දෙයයි.

වැග්‍රන්ට් යනු අතථ්‍ය යන්ත්‍ර කළමනාකරුවෙකි. අථත්‍ය යන්ත්‍ර වින්‍යාසය මෙන්ම ප්‍රතිපාදන ද ස්ක්‍රිප්ට් කිරීමට එය ඔබට ඉඩ සලසයි. කෙසේ වෙතත්, එය තවමත් විශාල පොදු කාර්යයක් සහිත වර්චුවල් බොක්ස් (හෝ වෙනත්) මත පදනම්ව අථත්‍ය යන්ත්‍රයකි . ඔබට විශාල දෘ hard තැටියක් තිබිය යුතු අතර එය විශාල රැම් ප්‍රමාණයක් අවශ්‍ය වන අතර කාර්ය සාධනය එතරම් හොඳ නොවනු ඇත.

Docker අනෙක් අතට භාවිතා කර්නලය cgroup හා හරහා namespacing LXC . එයින් අදහස් වන්නේ ඔබ ධාරකය හා එකම ගොනු පද්ධතිය භාවිතා කරන එකම කර්නලය භාවිතා කරන බවයි. ඔබේ බහාලුමේ docker buildප්‍රතිපාදන සහ වින්‍යාසය හැසිරවීම සඳහා ඔබට විධානය සමඟ ඩොකර්ෆයිල් භාවිතා කළ හැකිය . ඔබගේ Dockerfile සාදා ගන්නේ කෙසේද යන්න පිළිබඳ docs.docker.com හි ඔබට උදාහරණයක් තිබේ ; එය ඉතා බුද්ධිමත් ය.

ඔබේ උබුන්ටු පෙට්ටියේ BSD, Windows හෝ වෙනත් ලිනක්ස් නොවන සංවර්ධනයක් කිරීමට අවශ්‍ය නම් ඔබට වැග්‍රන්ට් භාවිතා කිරීමට අවශ්‍ය එකම හේතුවයි. එසේ නොමැතිනම් ඩෝකර් වෙත යන්න.


13
අවාසනාවට, තවම නැත. ඔබ සිටින්නේ බිට් 32 පද්ධතියක නම්, ඩොකර් ධාවනය කිරීම සඳහා ඔබට බිට් 64 ආගන්තුක පද්ධතියක් සහිත වීඑම් එකක් අවශ්‍ය වේ. කෙසේ වෙතත්, go1.1 සමඟ බිට් 32 සහය වඩා හොඳ වන අතර ඩොකර් ඉක්මනින් බිට් 32 ආරුක්කු සඳහා සහය
දැක්විය හැකිය

8
මැක් සහ වින්ඩෝස් සඳහා මෙය සත්‍ය වේ, නමුත් ඩොකර් 0.7 සිට ඕනෑම ලිනක්ස් ඩිස්ට්‍රෝ හොඳින් ක්‍රියා කරයි. වැඩ නොකරන එකක් ගැන ඔබ දන්නේ නම්, කරුණාකර මට දන්වන්න. එසේම, ඔබට මැක් හෝ වින්ඩෝස් තොගයක් නොමැති නම් (එය සිදුවිය නොහැක්කකි නමුත් සිදුවිය හැකිය), ඔබට ඩොකර් ධාවනය කිරීමට අවශ්‍ය නොව ලිනක්ස් මත ය. ඩොකර් සේවාදායකයා මැක්හි හොඳින් ක්‍රියා කරයි, ඉක්මනින් බීඑස්ඩී මත වැඩ කළ යුතු අතර ඩීමන් අවසානයේ බීඑස්ඩී, සොලාරිස් සහ මැක් සඳහා සහාය වනු ඇත.
creack

9
යමෙකු මෙම අදහස් කියවන්නේ නම්, දින 12 කට පෙර ඩොකර් ver1.0 ට පහර දුන් බව ඔබ දැනගත යුතුය ( blog.docker.com/2014/06/its-here-docker-1-0 ) සහ විවිධ වේදිකා රාශියක් ස්ථාවර වේ සහ දැන් සහය දක්වයි ( docs.docker.com/installation )
ජෝර්ජ්ආර්ට්වෙයාර්

17
වැග්‍රන්ට් සතුව එල්එක්ස් සහ ඩොකර් ප්‍රතිපාදන ඇත. කෙසේ වෙතත් - වැග්‍රන්ට් සහ ඩොකර් මූලික වශයෙන් වෙනස් දේවල් වේ. වැග්‍රන්ට් තනිකරම සංවර්ධන පරිසරයන් සඳහා වන අතර, ඩොකර් නිෂ්පාදනය සඳහා වන අතර ලිනක්ස් පමණි.
ඩැනීබෝයි

2
ඩෝකර් දැන් වින්ඩෝස් 10 ප්‍රෝ සහ ඉහළ සහ වින්ඩෝස් සර්වර් 2016 හි ක්‍රියා කරයි. මම වින්ඩෝස් 10 හෝම් සිට වින්ඩෝස් 10 ප්‍රෝ වෙත යාවත්කාලීන කර ඩොකර් යෙදුම ස්ථාපනය කළෙමි. මට දැන් වින්ඩෝස් 10 හි ලිනක්ස් ඩොකර් රූප ධාවනය කළ හැකිය. එය අති දක්ෂයි!
ප්‍රෙස්ටන් ඩොක්ස්

2342

වියාචනය: මම ලිව්වේ වැග්‍රන්ට්! නමුත් මම වැග්‍රන්ට් ලිවූ නිසා, මම වැඩි කාලයක් ගත කරන්නේ ඩෝකර් වැනි මෘදුකාංග ඇතුළත් ඩෙවොප්ස් ලෝකයේ ය. මම වැග්‍රන්ට් භාවිතා කරන සමාගම් රාශියක් සමඟ වැඩ කරන අතර බොහෝ දෙනෙක් ඩොකර් භාවිතා කරන අතර, දෙක එකිනෙකට සම්බන්ධ වන ආකාරය මම දකිමි.

මම ඕනෑවට වඩා කතා කිරීමට පෙර, answer ජු පිළිතුරක්: ඔබේ නිශ්චිත තත්වය තුළ (ඔබ තනිවම වැඩ කිරීම, ලිනක්ස් මත වැඩ කිරීම, නිෂ්පාදනයේ ඩෝකර් භාවිතා කිරීම), ඔබට ඩෝකර් සමඟ පමණක් රැඳී සිටිමින් දේවල් සරල කළ හැකිය. වෙනත් බොහෝ අවස්ථා වලදී (මම තවදුරටත් සාකච්ඡා කරමි), එය එතරම් පහසු නැත.

වැග්‍රන්ට්ව ඩෝකර් සමඟ කෙලින්ම සංසන්දනය කිරීම නිවැරදි නොවේ. සමහර අවස්ථා වලදී, ඒවා අතිච්ඡාදනය වන අතර, අතිමහත් බහුතරයක් තුළ ඒවා සිදු නොවේ. ඇත්ත වශයෙන්ම, වඩාත් උචිත සංසන්දනය වනුයේ වැග්‍රන්ට් හා බූට් 2 ඩොකර් (ඩොකර් ධාවනය කළ හැකි අවම මෙහෙයුම් පද්ධතිය) වැනි ය. වැග්‍රන්ට් යනු වියුක්ත කිරීම් අනුව ඩොකර්ට වඩා ඉහළ මට්ටමකි, එබැවින් එය බොහෝ අවස්ථාවන්හි සාධාරණ සංසන්දනයක් නොවේ.

සංවර්ධනයේ අරමුණු සඳහා යෙදුම් / සේවාවන් ක්‍රියාත්මක කිරීම සඳහා වැග්‍රන්ට් දේවල් දියත් කරයි. මෙය VirtualBox, VMware මත විය හැකිය. එය AWS, OpenStack වැනි දුරස්ථ විය හැකිය. ඒවා තුළ, ඔබ බහාලුම් භාවිතා කරන්නේ නම්, වැග්‍රන්ට් එය ගණන් ගන්නේ නැත, එය වැලඳ ගනී: උදාහරණයක් ලෙස ඩොකර් බහාලුම් ස්වයංක්‍රීයව ස්ථාපනය කිරීමට, පහළට ඇද ගැනීමට, ගොඩ නැගීමට සහ ක්‍රියාත්මක කිරීමට එයට හැකිය. වැග්‍රන්ට් 1.6 සමඟ, වැග්‍රන්ට් ඩොකර් මත පදනම් වූ සංවර්ධන පරිසරයන් ඇති අතර ලිනක්ස්, මැක් සහ වින්ඩෝස් හරහා වැග්‍රන්ට් මෙන් එකම කාර්ය ප්‍රවාහයක් සහිත ඩෝකර් භාවිතා කිරීමට සහාය වේ. වැග්‍රන්ට් මෙහි ඩෝකර් වෙනුවට ආදේශ කිරීමට උත්සාහ නොකරයි, එය ඩෝකර් භාවිතයන් වැලඳ ගනී.

ඩෝකර් විශේෂයෙන් ඩෝකර් බහාලුම් ධාවනය කරයි. ඔබ කෙලින්ම වැග්‍රන්ට් සමඟ සංසන්දනය කරන්නේ නම්: එය විශේෂයෙන් වඩාත් නිශ්චිත (ඩොකර් බහාලුම් පමණක් ධාවනය කළ හැකිය), අඩු නම්යශීලී (ලිනක්ස් හෝ ලිනක්ස් ධාරකය කොතැනක හෝ අවශ්‍ය වේ) විසඳුමකි. ඇත්ත වශයෙන්ම ඔබ නිෂ්පාදනය හෝ සීඅයි ගැන කතා කරන්නේ නම්, වැග්‍රන්ට් සමඟ සැසඳීමක් නොමැත! වැග්‍රන්ට් මෙම පරිසරවල ජීවත් නොවන බැවින් ඩෝකර් භාවිතා කළ යුතුය.

ඔබේ සංවිධානය ඔවුන්ගේ සියලුම ව්‍යාපෘති සඳහා ඩොකර් බහාලුම් පමණක් ධාවනය කරන්නේ නම් සහ ලිනක්ස් මත සංවර්ධකයින් පමණක් ක්‍රියාත්මක වන්නේ නම්, හරි, ඩෝකර්ට අනිවාර්යයෙන්ම ඔබ වෙනුවෙන් වැඩ කළ හැකිය!

එසේ නොමැතිනම්, ඩොකර් පමණක් භාවිතා කිරීමට උත්සාහ කිරීමෙන් මට ප්‍රයෝජනයක් නොපෙනේ, මන්ද ඔබට සැබෑ ව්‍යාපාර / tivity ලදායිතා ප්‍රතිලාභ ඇති වැග්‍රන්ට් විසින් පිරිනමනු ලබන බොහෝ දේ ඔබට අහිමි වේ:

  • Vagrant හට VirtualBox, VMware, AWS, OpenStack යනාදිය දියත් කළ හැකිය. ඔබට අවශ්‍ය දේ කමක් නැත, වැග්‍රන්ට් හට එය දියත් කළ හැකිය. ඔබ ඩෝකර් භාවිතා කරන්නේ නම්, වැග්‍රන්ට් හට ඩොකර් ස්ථාපනය කළ හැකි අතර එමඟින් ඔබට ඒවා ඒ සඳහා භාවිතා කළ හැකිය.

  • වැග්‍රන්ට් යනු ඔබගේ සියලු ව්‍යාපෘති සඳහා තනි කාර්ය ප්‍රවාහයකි. නැතහොත් වෙනත් ආකාරයකින් කිවහොත්, එය ව්‍යාපෘතියක් ඩෝකර් බහාලුමක් තුළ තිබේද නැද්ද යන්න ක්‍රියාත්මක කිරීමට මිනිසුන් ඉගෙන ගත යුතු එක් දෙයක් පමණි. උදාහරණයක් ලෙස, අනාගතයේදී, තරඟකරුවෙකු ඩොකර් සමඟ කෙලින්ම තරඟ කිරීමට ඉදිරිපත් වුවහොත්, වැග්‍රන්ට් හට එය ද ක්‍රියාත්මක කිරීමට හැකි වනු ඇත.

  • වැග්‍රන්ට් වින්ඩෝස් (ආපසු එක්ස්පී වෙත), මැක් (ආපසු 10.5 දක්වා) සහ ලිනක්ස් (කර්නලය වෙත 2.6 වෙත) ක්‍රියා කරයි. මෙම අවස්ථා තුනෙහිම, කාර්ය ප්‍රවාහය සමාන වේ. ඔබ ඩෝකර් භාවිතා කරන්නේ නම්, වැග්‍රන්ට් හට මෙම පද්ධති තුනම ඩොකර් ධාවනය කළ හැකි යන්ත්‍රයක් (වීඑම් හෝ දුරස්ථ) දියත් කළ හැකිය.

  • ජාලකරණය සහ ෆෝල්ඩර සමමුහුර්ත කිරීම වැනි දියුණු හෝ සුළු නොවන දේවල් වින්‍යාසගත කරන්නේ කෙසේදැයි වැග්‍රන්ට් දනී. උදාහරණයක් ලෙස: යන්ත්‍රයකට හෝ ඉදිරි වරායට ස්ථිතික අයිපී ඇමිණිය යුතු ආකාරය වැග්‍රන්ට් දන්නා අතර ඔබ භාවිතා කරන පද්ධතිය කුමක් වුවත් වින්‍යාසය සමාන වේ (වර්චුවල් බොක්ස්, වීඑම්වෙයාර් ආදිය) සමමුහුර්ත කළ ෆෝල්ඩර සඳහා, වැග්‍රන්ට් ඔබේ දේශීය ලබා ගැනීම සඳහා විවිධ යාන්ත්‍රණ සපයයි දුරස්ථ යන්ත්‍රයට ගොනු (වර්චුවල් බොක්ස් හවුල් ෆෝල්ඩර, එන්එෆ්එස්, ආර්සින්ක්, සම්බා [ප්ලගිනය] ආදිය). ඔබ ඩොකර් භාවිතා කරන්නේ නම්, වැග්‍රන්ට් නොමැතිව වීඑම් සහිත ඩෝකර් පවා, ඔබට මෙය අතින් කළ යුතුව ඇත, නැතහොත් ඔවුන්ට මෙම නඩුවේ වැග්‍රන්ට් යලි සොයා ගැනීමට සිදුවේ.

  • වැග්‍රන්ට් 1.6 ඩොකර් මත පදනම් වූ සංවර්ධන පරිසරයන් සඳහා පළමු පන්තියේ සහාය ඇත. මෙය ලිනක්ස් හි අථත්‍ය යන්ත්‍රයක් දියත් නොකරන අතර මැක් සහ වින්ඩෝස් මත අථත්‍ය යන්ත්‍රයක් ස්වයංක්‍රීයව දියත් කරනු ඇත. අවසාන ප්‍රති result ලය වනුයේ ඩෝකර් සමඟ වැඩ කිරීම සියලු වේදිකා හරහා ඒකාකාරී වන අතර, වැග්‍රන්ට් තවමත් ජාලකරණය, සමමුහුර්ත කළ ෆෝල්ඩර වැනි දේ පිළිබඳ වෙහෙසකර තොරතුරු හසුරුවයි.

වැග්‍රන්ට් වෙනුවට ඩෝකර් භාවිතා කිරීමට මා අසා ඇති නිශ්චිත ප්‍රතිවිරුද්ධ තර්ක ආමන්ත්‍රණය කිරීම සඳහා:

  • "එය අඩු චලනය වන කොටස්" - ඔව්, ඔබ සෑම ව්‍යාපෘතියක් සඳහාම ඩෝකර් භාවිතා කරන්නේ නම් එය එසේ විය හැකිය. එසේ වුවද, එය ඩෝකර් අගුළු දැමීම සඳහා නම්‍යශීලී බවක් කැප කරයි. අතීතය, වර්තමානය හෝ අනාගතය සඳහා ඩොකර් භාවිතා නොකිරීමට ඔබ කවදා හෝ තීරණය කළහොත් ඔබට තවත් චලනය වන කොටස් තිබේ. ඔබ වැග්‍රන්ට් භාවිතා කර ඇත්නම්, ඉතිරි කොටස සඳහා සහාය වන එක් චලනය වන කොටසක් ඔබ සතුව ඇත.

  • "එය වේගවත්!" - ඔබට ලිනක්ස් බහාලුම් ධාවනය කළ හැකි ධාරකය ලැබුනු පසු, ඩොකර් අනිවාර්යයෙන්ම ඕනෑම අථත්‍ය යන්ත්‍රයක් දියත් කිරීමට වඩා බහාලුමක් ධාවනය කිරීමේදී වේගවත් වේ. නමුත් අතථ්‍ය යන්ත්‍රයක් (හෝ දුරස්ථ යන්ත්‍රයක්) දියත් කිරීම එක් වරක් පිරිවැය වේ. දවස පුරා, බොහෝ වැග්‍රන්ට් භාවිතා කරන්නන් කිසි විටෙකත් ඔවුන්ගේ වීඑම් විනාශ නොකරයි. එය සංවර්ධන පරිසරයන් සඳහා අමුතු ප්‍රශස්තකරණයකි. නිෂ්පාදනයේදී, ඩෝකර් සැබවින්ම බැබළෙන තැනක, බහාලුම් ඉක්මනින් ඉහළට / පහළට කැරකීමේ අවශ්‍යතාවය මට වැටහේ.

ඩෝකර්ව වැග්‍රන්ට් සමඟ සංසන්දනය කිරීම ඉතා අසීරු බව මම විශ්වාස කරමි. ඩිව් පරිසරයන් සඳහා, වැග්‍රන්ට් වඩාත් වියුක්ත, වඩාත් පොදු ය. ඩෝකර් (සහ ඔබට එය වැග්‍රන්ට් මෙන් හැසිරීමට හැකි විවිධ ක්‍රම) වැග්‍රන්ට් හි නිශ්චිත භාවිත අවස්ථාවකි, වැග්‍රන්ට් විසින් ලබා දිය යුතු අනෙක් සියල්ල නොසලකා හැරේ.

අවසාන වශයෙන්: අතිශයින්ම විශේෂිත භාවිත අවස්ථා වලදී, ඩෝකර් නිසැකවම වැග්‍රන්ට් වෙනුවට ආදේශ කළ හැකිය. බොහෝ භාවිත අවස්ථා වලදී එය එසේ නොවේ. ඔබේ ඩෝකර් භාවිතයට වැග්‍රන්ට් බාධාවක් නොවේ; එය සැබවින්ම එම අත්දැකීම වඩාත් සුමට කිරීමට කළ හැකි දේ කරයි. මෙය සත්‍ය නොවන බව ඔබ දුටුවහොත්, දේවල් වැඩිදියුණු කිරීම සඳහා යෝජනා ගැනීම ගැන මම සතුටු වෙමි, වැග්‍රන්ට්ගේ අරමුණ ඕනෑම පද්ධතියක් සමඟ සමානව වැඩ කිරීමයි.

මෙය දේවල් ඉවත් කරයි කියා සිතමු!


4
@ ජරෙඩ් මාකෙල් මම හිතන්නේ සමහර විට ඔහු ප්‍රොටොබොක්ස් වැනි ඔහුගේ වැග්‍රන්ට් යන්ත්‍ර කළමනාකරණය කිරීමට ඉඩ දෙන වෙබ් පාදක සේවාවක් සොයයි .
රයන් කෙනඩි

73
It මිචෙල් මට අවශ්‍ය වූයේ මෙය විස්තරාත්මකව පැහැදිලි කිරීම ගැන ස්තූතියි. නිසැකවම ඔබට සම්පූර්ණයෙන්ම වෛෂයික විය නොහැකි බැවින් ඒවා භාවිතා කළ හැකි සූක්ෂ්ම හා විවිධ තත්වයන් පැහැදිලි කිරීමට ඔබ කාලය ගත් බව මම අගය කරමි. මම හිතන්නේ අද විවිධ මෙවලම් වටා ඇති බොහෝ ව්‍යාකූලතා නම් ඒවා අතිච්ඡාදනය වන අතර බොහෝ දෙනෙකුට අවශ්‍ය වන්නේ එක් ප්‍රමාණයකට සරිලන විසඳුමකි, එහිදී කවුරුහරි ඔවුන්ට කළ යුතු දේ පවසන අතර ඔවුන්ට එය ක්‍රියාත්මක කළ හැකිය. ඔබේ පිළිතුරේ සුන්දරත්වය නම්, එය යටින් පවතින ප්‍රශ්නයට පිළිතුරු සපයයි: මට හුදකලා පරිසරයක් නිර්මාණය කරන්නේ කෙසේද? (මෙවලම් නොසලකා).
ජෝර්දාන්

4
@ ජරෙඩ් මාකල් ඩොකර් සතුව REST API ඇත docs.docker.com/reference/api/docker_remote_api
Tarnay Kálmán

3
@ OğuzÇelikdemir Vagrant ට ඊට වඩා බොහෝ දේ කළ හැකිය. ඇත්ත වශයෙන්ම, ඔබ සෑම ව්යාපෘතියක් සඳහාම විශේෂිත අථත්ය යාන්ත්රණයක් සකස් කරන්නේ නම්, මෙය පවතිනු ඇත. නමුත් සංවර්ධනයේදී මම බොහෝ විට තවත් සේවාවන් / ඩීමන් / සැකසුම් එකතු කිරීම අවසන් කරමි (උදා: සංවර්ධන කාලය තුළ ව්‍යාපෘතියක් සඳහා හාවා MQ භාවිතා කිරීමට මම තීරණය කළ විට). තනිකරම VM ප්‍රවේශය මඟින් ඔබට නව රූපයක් සකස් කිරීමට අවශ්‍ය වනු ඇත, RabbitMQ ස්ථාපනය කර වින්‍යාස කර ඇති අතර සංවර්ධකයින්ට ඔවුන්ගේ VM මෙම නව එකක් ලෙස වෙනස් කිරීමට බල කරයි. වැග්‍රන්ට් සඳහා - මම නොපැහැදිලි වින්‍යාසය තුළ සුදුසු රේඛා එක් කරන අතර සියලුම සංවර්ධකයින්ට ඔවුන්ගේ වීඑම් පහසුවෙන් යාවත්කාලීන කළ හැකිය (භාවිතා කරමින් vagrant provision).
ටොමාස් ස්ට්‍රක්සියාස්කි

5
: (ඔබ "හෙලිදරව්වක්", වැදගත් එළිදරව් දෙයක් නොව, "වගකීමෙන් යුතුව ඔබ එවන", වගකීමක් ප්රතික්ෂේප අදහස් english.stackexchange.com/q/115850 )
Jerry101

1420

මම ඩොකර්ගේ කතුවරයා වෙමි.

කෙටි පිළිතුර නම් ඔබට යන්ත්‍ර කළමනාකරණය කිරීමට අවශ්‍ය නම් ඔබ වැග්‍රන්ට් භාවිතා කළ යුතු බවයි. ඔබට යෙදුම් පරිසරයන් තැනීමට සහ ක්‍රියාත්මක කිරීමට අවශ්‍ය නම්, ඔබ ඩෝකර් භාවිතා කළ යුතුය.

වැග්‍රන්ට් යනු අථත්‍ය යන්ත්‍ර කළමනාකරණය කිරීමේ මෙවලමකි. ඩෝකර් යනු සැහැල්ලු බහාලුම්වල ඇසුරුම් කිරීමෙන් යෙදුම් තැනීම හා යෙදවීම සඳහා වූ මෙවලමකි. කන්ටේනරයකට ඕනෑම මෘදුකාංග සංරචකයක් එහි පරායත්තතාවයන් (ක්‍රියාත්මක කළ හැකි, පුස්තකාල, වින්‍යාස ලිපිගොනු ආදිය) රඳවා තබා ගත හැකි අතර එය සහතික කළ හැකි සහ නැවත නැවත ක්‍රියාත්මක වන පරිසරයක ක්‍රියාත්මක කළ හැකිය. මෙය ඔබගේ යෙදුම එක් වරක් තැනීම සහ ඕනෑම තැනක යෙදවීම ඉතා පහසු කරයි - පරීක්ෂා කිරීම සඳහා ඔබේ ලැප්ටොප් පරිගණකයේ, පසුව සජීවී යෙදවීම සඳහා විවිධ සේවාදායකයන් යනාදිය.

ඔබට ලිනක්ස් හි ඩොකර් පමණක් භාවිතා කළ හැකි බව පොදු වැරදි මතයකි. එය වැරදියි; ඔබට මැක් සහ වින්ඩෝස් වල ඩොකර් ස්ථාපනය කළ හැකිය. මැක්හි ස්ථාපනය කර ඇති විට, ඩෝකර් ඉතා කුඩා ලිනක්ස් වීඑම් එකක් (තැටියේ 25 MB!) ඔබේ බහාලුම සඳහා එතීම ලෙස ක්‍රියා කරයි. ස්ථාපනය කිරීමෙන් පසු මෙය සම්පූර්ණයෙන්ම විනිවිද පෙනෙන ය; ඔබට ඩොකර් විධාන රේඛාව හරියටම එකම ආකාරයකින් භාවිතා කළ හැකිය. මෙය ඔබට ලෝක දෙකෙහිම හොඳම දේ ලබා දෙයි: ඔබට ඉතා සැහැල්ලු, පරීක්ෂා කිරීමට පහසු සහ එහා මෙහා යාමට පහසු වන බහාලුම් භාවිතයෙන් ඔබේ යෙදුම පරීක්ෂා කර සංවර්ධනය කළ හැකිය (උදාහරණයක් ලෙස නැවත භාවිතා කළ හැකි බහාලුම් බෙදා ගැනීම සඳහා https://hub.docker.com බලන්න ඩොකර් ප්‍රජාව), සහ අථත්ය යාන්ත්රණ කළමණාකරනය පිළිබඳ අශෝභන තොරතුරු ගැන කරදර විය යුතු නැත, ඒවා කෙසේ හෝ අවසානයක් සඳහා වූ මාධ්‍යයකි.

න්‍යායට අනුව ඩොකර් සඳහා වියුක්ත ස්ථරයක් ලෙස වැග්‍රන්ට් භාවිතා කළ හැකිය. හේතු දෙකක් නිසා මම මෙයට එරෙහිව නිර්දේශ කරමි:

  • පළමුව, වැග්‍රන්ට් ඩොකර්ට හොඳ සාරාංශයක් නොවේ. වැග්‍රන්ට් නිර්මාණය කර ඇත්තේ අථත්‍ය යන්ත්‍ර කළමනාකරණය කිරීම සඳහා ය. ඩෝකර් නිර්මාණය කර ඇත්තේ යෙදුම් ධාවන වේලාව කළමනාකරණය කිරීම සඳහා ය. මෙයින් අදහස් කරන්නේ ඩෝකර්ට සැලසුම අනුව යෙදුමක් සමඟ පොහොසත් ආකාරයකින් අන්තර් ක්‍රියා කළ හැකි අතර යෙදුම් ධාවන කාලය පිළිබඳ වැඩි විස්තර ඇති බවයි. ඩෝකර් හි ප්‍රාථමිකයන් වන්නේ ක්‍රියාවලි, ලොග් ප්‍රවාහ, පරිසර විචල්‍යයන් සහ සංරචක අතර ජාල සම්බන්ධතා ය. වැග්‍රන්ට් හි ප්‍රාථමිකයන් වන්නේ යන්ත්‍ර, වාරණ උපාංග සහ ssh යතුරු ය. වැග්‍රන්ට් හුදෙක් තොගයේ පහළට වාඩි වී සිටින අතර, එය කන්ටේනරයක් සමඟ අන්තර්ක්‍රියා කළ හැකි එකම ක්‍රමය වන්නේ එය වෙනත් ආකාරයේ යන්ත්‍රයක් ලෙස මවා පෑමයි, ඔබට "ඇරඹීමට" සහ "ලොග් වීමට" හැකි ය. ඉතින්, නිසැකවම, ඔබට ඩෝකර් ප්ලගිනයක් සමඟ "විචලනය" ටයිප් කළ හැකි අතර ලස්සන දෙයක් සිදුවනු ඇත. ඩොකර්ට කළ හැකි දේවල සම්පූර්ණ පළල සඳහා එය ආදේශකයක් ද? ස්වදේශික ඩොකර් දින කිහිපයක් උත්සාහ කර ඔබම බලන්න :)

  • දෙවනුව, අගුළු දැමීමේ තර්කය. "ඔබ වැග්‍රන්ට් සාරාංශයක් ලෙස භාවිතා කරන්නේ නම්, ඔබ ඩෝකර් වෙත අගුළු දමනු නොලැබේ!". යන්ත්‍ර කළමනාකරණය කිරීම සඳහා නිර්මාණය කර ඇති වැග්‍රන්ට්ගේ දෘෂ්ටි කෝණයෙන් මෙය මනාව අර්ථවත් කරයි: බහාලුම් යනු වෙනත් ආකාරයේ යන්ත්‍රයක් නොවේද? ඇමේසන් ඊසී 2 සහ වීඑම්වෙයාර් මෙන්ම, අපගේ සැපයුම් මෙවලම් කිසියම් විශේෂිත වෙළෙන්දෙකු සමඟ ගැටගැසීමට අප වගබලා ගත යුතුය! මෙය අගුළු දැමීමක් නිර්මාණය කරනු ඇත - ඒ සියල්ල වැග්‍රන්ට් සමඟ වියුක්ත කිරීමට වඩා හොඳය. මෙය ඩොකර්ගේ කරුණ මුළුමනින්ම මග හැරේ. ඩෝකර් යන්ත්‍ර සපයන්නේ නැත; එය ඕනෑම තැනක අතහැර දැමිය හැකි සැහැල්ලු අතේ ගෙන යා හැකි ධාවන වේලාවක ඔබේ යෙදුම ආවරණය කරයි.

ඔබගේ යෙදුම සඳහා ඔබ තෝරා ගන්නා ධාවන කාලය ඔබේ යන්ත්‍ර සපයන ආකාරය සමඟ කිසිදු සම්බන්ධයක් නැත! නිදසුනක් ලෙස, වෙනත් අයෙකු විසින් සපයා ඇති යන්ත්‍ර වෙත යෙදුම් යෙදවීම බොහෝ විට සිදු වේ (නිදසුනක් ලෙස ඔබේ පද්ධති පරිපාලක විසින් යොදවා ඇති EC2 උදාහරණයක්, සමහර විට වැග්‍රන්ට් භාවිතා කරයි), හෝ වැග්‍රන්ට් හට කිසිසේත් සැපයිය නොහැකි ලෝහ යන්ත යන්තම්. අනෙක් අතට, ඔබේ යෙදුම සංවර්ධනය කිරීමට කිසිදු සම්බන්ධයක් නැති යන්ත්‍ර සැපයීම සඳහා ඔබට වැග්‍රන්ට් භාවිතා කළ හැකිය - නිදසුනක් ලෙස භාවිතා කිරීමට සූදානම් වින්ඩෝස් IIS පෙට්ටියක් හෝ වෙනත් දෙයක්. හෝ ඩෝකර් භාවිතා නොකරන ව්‍යාපෘති සඳහා යන්ත්‍ර සැපයීම සඳහා ඔබට වැග්‍රන්ට් භාවිතා කළ හැකිය - සමහර විට ඔවුන් යැපුම් කළමනාකරණය සහ වැලිපිල්ල සඳහා රුබිජම් සහ ආර්වීඑම් සංයෝජනයක් භාවිතා කරයි.

සාරාංශයක් ලෙස: වැග්‍රන්ට් යනු යන්ත්‍ර කළමනාකරණය සඳහා වන අතර ඩෝකර් යනු යෙදුම් පරිසරයන් තැනීම සහ ක්‍රියාත්මක කිරීම සඳහා ය.


396
මෙම පිළිතුරේ වැග්‍රන්ට් අංශ වැරදි බව සටහන් කිරීමට අවශ්‍ය විය. වැග්‍රන්ට් යනු යන්ත්‍ර පාලනය කිරීම සඳහා නොවේ, වැග්‍රන්ට් යනු සංවර්ධන පරිසර කළමනාකරණය සඳහා ය. වැග්‍රන්ට් යන්ත්‍ර භ්‍රමණය වීම බොහෝ දුරට ic තිහාසික ය. වැග්‍රන්ට් හි මීළඟ අනුවාදයට ඩෝකර් භාවිතා කරමින් සෘජුවම සත්කාරක හෝ ඕනෑම වීඑම් (මැක්, වින්) හි සැපයුම්කරුවෙකු ලෙස ඩව් පරිසරය වෙනස් කිරීමට පළමු පන්තියේ සහාය ඇත. යමෙකුට අවශ්‍ය දේ තිබේ නම් (නැවතත්, ධාරකයේ හෝ වීඑම් මත) අමු LXC ද ඉහළට ඔසවා තැබිය හැකිය. VM නිර්මාණය කළත් නැතත් අතේ ගෙන යා හැකි සංවර්ධන පරිසරයක් නිර්මාණය කිරීම සඳහා හොඳම දේ කිරීමට වැග්‍රන්ට් උනන්දු වෙයි.
මිචෙල්

7
Av ඩේවිඩ් මෙය වඩාත් විස්තරාත්මකව ආවරණය කරයි: vagrantup.com/blog/…
මිචෙල්

48
"ඔබට ලිනක්ස් මත පමණක් ඩොකර් භාවිතා කළ හැකි බව පොදු වැරදි මතයකි" එය සත්‍යයක් වුවත්, ඔබට ඩෝකර් මත ලිනක්ස් පමණක් භාවිතා කළ හැකි බව පැවසීම නිවැරදි ය. විවිධාකාර අයදුම්පත් වින්‍යාසයන් (විවිධ දත්ත සමුදායන්, පීඑච්පී අනුවාදයන්, හැඹිලි පසුබිම් ආදිය) තුළ මගේ යෙදුම ක්‍රියාත්මක කරන පරීක්ෂණ ධාවකයෙකු සැකසීමට මට අවශ්‍ය නම්, මට පහසුවෙන් ඩොකර් බහාලුම් සමඟ එය කළ හැකිය. නමුත් මගේ යෙදුම වින්ඩෝස් IIS env එකක හෝ BSD හෝ OSX මත නිසියාකාරව ක්‍රියාත්මක වේදැයි බැලීමට මට නොහැකිය.
මික්සොලොජික්

10
: ඔබගේ පලමු රස්තියාදුකාර docker සපයන්නා සහාය ඉදි-කර ඇති බැවින් යල්පැනගිය docs.vagrantup.com/v2/provisioning/docker.html
ලේබර් පක්ෂ

19
තනතුර යල් පැන ඇත. වැග්‍රන්ට් දැන් ඩොකර්ට සැපයුම්කරුවෙකු ලෙස සහාය දක්වයි. තවද ඔවුන්ගේ බ්ලොග් අඩවියේ එකමුතුව ඔබට වැග්‍රන්ට් සහ ඩෝකර් භාවිතා කළ හැකි ආකාරය පෙන්වන වීඩියෝ කිහිපයක් තිබේ.
sargas

86

මම ඩෝකර් සමඟ කිසිදු අත්දැකීමක් නොමැති බව පිළිගැනීමෙන් මගේ පිළිතුරට පෙරවදනක් කරමි. එය විශාල ක්‍ෂේත්‍රයක් ලබා ගන්නා සැබවින්ම පිළිවෙලට විසඳුමක් ලෙස පෙනෙන දේ පිළිබඳ දැඩි නිරීක්ෂකයෙකු ලෙස හැර.

මට වැග්‍රන්ට් සමඟ හොඳ පළපුරුද්දක් ඇති අතර එය බෙහෙවින් නිර්දේශ කළ හැකිය. එය LXC මත පදනම් වූ VM මත පදනම්ව VM මත පදනම් වූවකි. කෙසේ වෙතත්, මම හොඳ ලැප්ටොප් පරිගණකයක් (8 GB RAM, i5 / i7 CPU) සංවර්ධන මෙවලම් සමඟ Vagrant / VirtualBox භාවිතා කරමින් VM ධාවනය කිරීමට කිසිදු ගැටළුවක් නොමැති බව සොයාගෙන ඇත.

වැග්‍රන්ට් සමඟ ඇති විශිෂ්ටතම දෙය නම් වින්‍යාසය ස්වයංක්‍රීය කිරීම සඳහා රූකඩ / චෙෆ් / ෂෙල් ස්ක්‍රිප්ට් සමඟ ඒකාබද්ධ කිරීමයි . ඔබේ නිෂ්පාදන පරිසරය වින්‍යාස කිරීම සඳහා ඔබ මෙම විකල්පයන්ගෙන් එකක් භාවිතා කරන්නේ නම්, ඔබට ලබා ගැනීමට යන තරමට සමාන සංවර්ධන පරිසරයක් නිර්මාණය කළ හැකිය, මෙය ඔබට අවශ්‍ය දේම වේ.

වැග්‍රන්ට් සමඟ ඇති අනෙක් විශිෂ්ට දෙය නම්, ඔබේ යෙදුම් කේතය සමඟ ඔබේ වැග්‍රන්ට්ෆයිල් සංස්කරණය කළ හැකිය. මෙයින් අදහස් කරන්නේ ඔබගේ කණ්ඩායමේ අනෙක් සියල්ලන්ට මෙම ගොනුව බෙදා ගත හැකි අතර සෑම දෙනාම එකම පරිසර වින්‍යාසය සමඟ කටයුතු කරන බවට ඔබට සහතික විය හැකි බවයි.

සිත්ගන්නා කරුණ නම්, වැග්‍රන්ට් සහ ඩෝකර් ඇත්තෙන්ම ප්‍රශංසනීය විය හැකිය. විවිධ අථත්‍යකරණ සැපයුම්කරුවන්ට සහය දැක්වීම සඳහා වැග්‍රන්ට් දිගු කළ හැකි අතර, ඩෝකර් යනු නුදුරු අනාගතයේ දී සහාය ලබා ගන්නා එවැනි සැපයුම්කරුවෙකු විය හැකිය. මාතෘකාව පිළිබඳ මෑත සාකච්ඡාව සඳහා https://github.com/dotcloud/docker/issues/404 බලන්න .


7
යාලුවනේ, මම ඩොකර් සඳහා පර්යේෂණාත්මක විචල්‍ය සැපයුම්කරුවෙකු මුදා හැරියා : github.com/fgrehm/docker-provider .
fgrehm

2
ඩෝකර් යනු අථත්‍යකරණය නොවේ, නමුත් එකම ධාරක කර්නලය භාවිතා කරමින් මෙහෙයුම් පද්ධතිය තමන්ගේම බහාලුමක් තුළ ධාවනය කරයි, එය වෙනත් වීඑම් මෙන් සැපයුම්කරුවෙකු නොවේ, එබැවින් ඩොකර්ට දැනටමත් වැග්‍රන්ට් සහාය දක්වයි.
අෆ්තබ් නවීඩ්

1
ඩෝකර් යනු මෙහෙයුම් පද්ධතියේ අථත්‍යකරණයයි, යටින් පවතින දෘඩාංග නැවත ව්‍යංගයෙන් නැවත භාවිතා කරයි. එය අථත්‍යකරණය වන අතර එය බහාලුම් තුළ ක්‍රියාත්මක වන ගොනු පද්ධතිය, ජාලකරණය සහ ක්‍රියාවලීන් වියුක්ත කර හුදකලා කරයි.
jose.angel.jimenez

63

ඒවා බොහෝ අනුපූරක වේ.

මම මාස කිහිපයක් තිස්සේ මගේ සියලු ව්‍යාපෘති සඳහා වර්චුවල් බොක්ස්, වැග්‍රන්ට් සහ ඩෝකර් සංයෝජනයක් භාවිතා කර ඇති අතර පහත සඳහන් ප්‍රතිලාභ දැඩි ලෙස දැනී සිටිමි.

වැග්‍රන්ට්හිදී ඔබට ඕනෑම සූපවේදී ඒකල ප්‍රතිපාදන සම්පූර්ණයෙන්ම ඉවත් කළ හැකි අතර ඔබට කළ යුතු වන්නේ ගොනුව ස්ථාපනය කිරීම සඳහා කුඩා ෂෙල් ස්ක්‍රිප්ට් එකක් ධාවනය කරන යන්ත්‍රයක් සකස් කිරීමයි. මෙයින් අදහස් කරන්නේ සෑම ව්‍යාපෘතියක් සඳහාම මගේ වැග්‍රන්ට්ෆයිල්ස් බොහෝ දුරට සමාන හා ඉතා සරල බවයි.

මෙන්න සාමාන්‍ය වැග්‍රන්ට්ෆයිල් එකක්

# -*- mode: ruby -*-
# vi: set ft=ruby :
VAGRANTFILE_API_VERSION = "2"
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  config.vm.box = "mark2"
  config.vm.box_url = "http://cloud-images.ubuntu.com/vagrant/trusty/current/trusty-server-cloudimg-amd64-vagrant-disk1.box"
  [3000, 5000, 2345, 15672, 5672, 15674, 27017, 28017, 9200, 9300, 11211, 55674, 61614, 55672, 5671, 61613].each do |p|
    config.vm.network :forwarded_port, guest: p, host: p
  end
  config.vm.network :private_network, ip: "192.168.56.20"
  config.vm.synced_folder ".", "/vagrant", :type => "nfs"
  config.vm.provider :virtualbox do |vb|
    vb.customize ["modifyvm", :id, "--memory", "2048"]
    vb.customize ["modifyvm", :id, "--cpus", "2"]
  end
  # Bootstrap to Docker
  config.vm.provision :shell, path: "script/vagrant/bootstrap", :privileged => true
  # Build docker containers
  config.vm.provision :shell, path: "script/vagrant/docker_build", :privileged => true
  # Start containers
  # config.vm.provision :shell, path: "script/vagrant/docker_start", :privileged => true
end

ඩොකර් ස්ථාපනය කරන බූට්ස්ට්‍රැප් ගොනුව මේ වගේ ය

#!/usr/bin/env bash
echo 'vagrant  ALL= (ALL:ALL) NOPASSWD: ALL' >> /etc/sudoers
apt-get update -y
apt-get install htop -y
apt-get install linux-image-extra-`uname -r` -y
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9
echo deb http://get.docker.io/ubuntu docker main > /etc/apt/sources.list.d/docker.list
apt-get update -y
apt-get install lxc-docker -y
apt-get install curl -y

දැන් මට අවශ්‍ය සියලුම සේවාවන් ලබා ගැනීම සඳහා මට ඩොකර්_ස්ටාර්ට් ස්ක්‍රිප්ට් එකක් තිබේ

#!/bin/bash
cd /vagrant
echo Starting required service containers
export HOST_NAME=192.168.56.20
# Start MongoDB
docker run --name=mongodb --detach=true --publish=27017:27017 --publish=28017:28017 dockerfile/mongodb
read -t5 -n1 -r -p "Waiting for mongodb to start..." key
# Start rabbitmq
docker run --name=rabbitmq --detach=true --publish=5671:5671 --publish=5672:5672 --publish=55672:55672 --publish=15672:15672 --publish=15674:15674 --publish=61613:61613 --env RABBITMQ_USER=guest --env RABBITMQ_PASS=guest rabbitmq
read -t5 -n1 -r -p "Waiting for rabbitmq to start..." key
# Start cache
docker run --name=memcached --detach=true --publish=11211:11211  ehazlett/memcached
read -t5 -n1 -r -p "Waiting for cache to start..." key
# Start elasticsearch
docker run --name=elasticsearch --detach=true --publish=9200:9200 --publish=9300:9300 dockerfile/elasticsearch
read -t5 -n1 -r -p "Waiting for elasticsearch to start..." key
echo "All services started"

මෙම උදාහරණයේ දී මම මොන්ගෝ ඩී බී, ඉලාස්ටිසර්ච්, රැබිට් එම්කියු සහ මෙම්චේච් ධාවනය කරමි

ඩොකර් නොවන සූපවේදී ඒකල වින්‍යාසය සැලකිය යුතු ලෙස සංකීර්ණ වනු ඇත.

ඔබ නිෂ්පාදනයට ගමන් කරන විට අවසාන විශාල ප්ලස් එකක් ලැබෙනු ඇත, සංවර්ධන පරිසරය ධාරකයන්ගේ යටිතල ව්‍යුහයකට පරිවර්තනය කිරීම, ඒ සියල්ලම එක හා සමාන වන අතර ඒවාට ඩොකර් ධාවනය කිරීමට ප්‍රමාණවත් වින්‍යාසයක් ඇති බැවින් ඇත්ත වශයෙන්ම ඉතා සුළු කාර්යයකි.

ඔබ කැමති නම් මගේම වෙබ් අඩවියේ සංවර්ධන පරිසරය පිළිබඳ වඩාත් සවිස්තරාත්මක ලිපියක් මා සතුව ඇත

වැග්‍රන්ට් / ඩෝකර් සංවර්ධන පරිසරයක් ක්‍රියාත්මක කිරීම


2
ඔබ ඒ ඩොකර්_ස්ටාර්ට් වාද්‍ය වෘන්දය සියල්ලම කළ නමුත් බහාලුම් එකට සම්බන්ධ කිරීමට කරදර නොවීය. ඔබ වාග්‍රන්ට් යටතේ ධාවනය කරන නිසා ඔබ දෘඩ කේත සහිත වරාය අංක සමඟ යනවාද?
වයින් සෝක්ඩ්

6
හායි වයින්සෝක්, ඉහත උදාහරණයෙන් එම සේවාවන් සියල්ලම භාවිතා කරන බහාලුම පෙන්වන්නේ නැත. ඔබ සඳහන් කළ බ්ලොග් සටහන දෙස බැලුවහොත් ව්‍යාපෘතිය සඳහා සංවර්ධන බහාලුම ගිනි තබන තවත් ස්ක්‍රිප්ට් ස්ක්‍රිප්ට් / වැග්‍රන්ට් / ඩොකර්_වෙබ් ඇත. මෙය සැබවින්ම ඩොකර් ධාවන විධානයෙහි --link භාවිතා කරන අතර රේල්ස් ව්‍යාපෘතිය මඟින් සේවාවන්ට සම්බන්ධ වීමට ඩොකර් එන්නත් කරන ලද පරිසර විචල්‍යයන් භාවිතා කරයි.
මාර්ක් ස්ට්‍රැට්මන්

1
නිෂ්පාදන දෙකම ඒකාබද්ධ කිරීමේ විභවය මට පෙනේ. පරිසර පරීක්ෂාව ලෙස විචල්‍යතාවය සහ යෙදුම් එතීම සඳහා ඩොකර්. මේ දෙකම ඒකාබද්ධ කිරීමෙන් ඔබට බොහෝ යෙදුම්වල තනි යෙදුමක් හෝ ඒකක පරීක්ෂණයක් කළ හැකිය. මම හිතන්නේ බොහෝ "පරීක්ෂණ වේදිකා සේවා" වරින් වර වැග්‍රන්ට් + ඩෝකර් භාවිතා කරයි.
m3nda

8
"ඔවුන් බොහෝ සෙයින් ප්‍රශංසනීයයි." - දෙකම භාවිතා කිරීමට නිදහස ඇත, ඇත්ත වශයෙන්ම.
Underyx

2
හායි කොප්පෝර් මම අවසන් වරට ඩොකර් යන්ත්‍රය භාවිතා කළේ මීට මාස තුනකට පමණ පෙර වන අතර තවමත් එය වෙත ගොස් නැත. මට තිබූ ගැටළුව වූයේ VMWare ධාවක භාවිතා කරන විට මගේ MAC ධාරක ධාරකයේ සිට VM ධාවනය වන ඩොකර් වෙත ෆෝල්ඩර බෙදා ගැනීමේ දෝෂයක් තිබීමයි. මෙයින් අදහස් කළේ මට මැක්හි දේශීයව කේත සංස්කරණය කිරීමට නොහැකි වූ අතර ඩොකර් බහාලුමේ වෙනස්කම් පිළිබිඹු විය. ඔවුන් තවම එය සවි කර ඇත්දැයි මම නොදනිමි, ඔවුන් එසේ කළ විට මම ඒ වෙත මාරු වෙමි. කෙසේ වෙතත්, මෙම පිළිතුර ලිවූ දා සිට මම මගේ බහාලුම් වාද්‍ය වෘන්දය ඩොකර් රචනා සඳහා මාරු කර ඇත්තෙමි
මාර්ක් ස්ට්‍රැට්මන්

53

Vagrant-lxc යනු වැග්‍රන්ට් සඳහා වන ප්ලගිනයකි, එමඟින් ඔබ වැග්‍රන්ට් සැපයීම සඳහා LXC භාවිතා කරමු. සුපුරුදු වැග්‍රන්ට් වීඑම් (වර්චුවල් බොක්ස්) සතුව ඇති සියලුම අංග එහි නොමැති නමුත් එය ඩොකර් බහාලුම්වලට වඩා නම්‍යශීලී වීමට ඉඩ දිය යුතුය. සබැඳියේ එහි හැකියාවන් පෙන්වන වීඩියෝවක් නැරඹීම වටී.


5
මෙහි ව්‍යාපෘතියට link ජු සම්බන්ධයක් ඇත github.com/fgrehm/vagrant-lxc
gertas

46

වැග්‍රන්ට් සමඟ දැන් ඔබට ඩොකර් සැපයුම්කරුවෙකු ලෙස සිටිය හැකිය. http://docs.vagrantup.com/v2/docker/ . වර්චුවල් බොක්ස් හෝ වීඑම්වෙයාර් වෙනුවට ඩෝකර් සැපයුම්කරු භාවිතා කළ හැකිය.

වැග්‍රන්ට් සමඟ ප්‍රතිපාදන සැපයීම සඳහා ඔබට ඩෝකර් භාවිතා කළ හැකි බව කරුණාවෙන් සලකන්න. මෙය ඩොකර් සැපයුම්කරුවෙකු ලෙස භාවිතා කිරීමට වඩා බෙහෙවින් වෙනස් ය. http://docs.vagrantup.com/v2/provisioning/docker.html

මෙයින් අදහස් කරන්නේ ඔබට සූපවේදී හෝ රූකඩ වෙනුවට ඩෝකර් ආදේශ කළ හැකි බවයි. ඔබට ඩොකර් වැනි සැපයුම්කරු ලෙස (වීඑම්) චෙෆ් සමඟ සැපයුම්කරු ලෙස භාවිතා කළ හැකිය. නැතහොත් ඔබට සැපයුම්කරු ලෙස වර්චුවල් බොක්ස් සහ සැපයුම්කරු ලෙස ඩෝකර් භාවිතා කළ හැකිය.


23
ලෝකය පිස්සු වැටී ඇත;) අපට ඩොකර් සැපයුම්කරු භාවිතා කර ඩොකර් බහාලුම් විචලනය තුළ ධාවනය කළ හැකිය
ඇන්ඩ්‍රෙජ් රෙහ්මාන්

ainzainengineer, වින්ඩෝස් හි වැග්‍රන්ට් සඳහා ඩොකර් සැපයුම්කරු තවමත් boot2docker භාවිතා කරයිද නැතහොත් එය ඩොකර් මෙවලම් පෙට්ටියේ යම් ප්‍රභේදයක් භාවිතා කරයිද?
ඩෙරෙක් මහර්

ainzainengineer ඔබට නිදර්ශන නිදසුන් සඳහා සබැඳි කිහිපයක් තිබේද (නොපැහැදිලි ලියකියවිලි නොවේ)?
ව්ලැඩ්

16

දෙකම භාවිතා කිරීම යෙදුම් බෙදා හැරීමේ පරීක්ෂණයේ වැදගත් කොටසකි. මම ඩෝකර් සමඟ සම්බන්ධ වීමට පටන් ගෙන ඇති අතර එහි මෘදුකාංග තැනීමේදී හා බෙදා හැරීමේදී දරුණු සංකීර්ණත්වයක් ඇති යෙදුම් කණ්ඩායමක් ගැන දැඩි ලෙස සිතමි. සම්භාව්‍ය ෆීනික්ස් ව්‍යාපෘතියක් / අඛණ්ඩව බෙදා හැරීමේ තත්වයක් ගැන සිතන්න.

සිතීම මේ වගේ දෙයක් වෙනවා:

  • ජාවා / ගො යෙදුම් අංගයක් ගෙන එය බහාලුමක් ලෙස සාදන්න (සටහන, යෙදුම කන්ටේනරය තුළ ගොඩනගා ගත යුතුද නැතිනම් කන්ටේනරයට ස්ථාපනය කළ යුතුද යන්න විශ්වාස නැත)
  • කන්ටේනරය වැග්‍රන්ට් වීඑම් වෙත භාර දෙන්න.
  • සියලුම යෙදුම් සංරචක සඳහා මෙය නැවත කරන්න.
  • කේත කිරීමට සං component ටක (ය) මත අනුකරණය කරන්න.
  • වැග්‍රන්ට් විසින් කළමනාකරණය කරන ලද වීඑම් (ය) වෙත බෙදා හැරීමේ යාන්ත්‍රණය අඛණ්ඩව පරීක්ෂා කරන්න
  • කන්ටේනරය යෙදවීමට කාලය එන විට හොඳින් දැනගෙන නිදාගන්න, ඒකාබද්ධ කිරීමේ පරීක්ෂණය ඩොකර්ට පෙර පැවති තත්වයට වඩා අඛණ්ඩ පදනමක් මත සිදු විය.

අඛණ්ඩ බෙදාහැරීමේ දී ෆාර්ලි / නිහතමානී චින්තනය සමඟ ඒකාබද්ධව වැග්‍රන්ට් සංවර්ධනය සඳහා වන බවට මිචෙල් කළ ප්‍රකාශයේ තාර්කික දිගුව මෙය බව පෙනේ. මට, සංවර්ධකයෙකු ලෙස, ඒකාබද්ධතා පරීක්ෂණ සහ යෙදුම් භාරදීම පිළිබඳ ප්‍රතිපෝෂණ වළල්ල හැකිලීමට හැකි නම්, උසස් තත්ත්වයේ සහ වඩා හොඳ සේවා පරිසරයන් අනුගමනය කරනු ඇත.

සංවර්ධකයෙකු ලෙස මම නිරන්තරයෙන් හා නිරන්තරයෙන් වීඑම් වෙත බහාලුම් ලබා දීම සහ යෙදුම වඩාත් පරිපූර්ණ ලෙස පරීක්ෂා කිරීම යන්නෙන් අදහස් වන්නේ නිෂ්පාදන නිකුත් කිරීම් තවදුරටත් සරල කරනු ඇති බවයි.

යෙදුම් යෙදවීම සඳහා ඩෝකර්ට ඇති විය හැකි භයානක ප්‍රතිවිපාක කිහිපයක් උකහා ගැනීමේ ක්‍රමයක් ලෙස වැග්‍රන්ට් පරිණාමය වෙමින් පවතින බව මම දකිමි.


ඔබට අහම්බෙන් මේ ගැන බ්ලොග් සටහනක් තිබේද? දැන් අවුරුදු දෙකකට ආසන්න කාලයක් ගත වී ඇත, එය කෙසේ සිදුවන්නේද? තවමත් ඩොකර් හෝ ඩෝකර් සහ ඩොකර්-ෆ්ලීට් / මැෂින් සමඟ විචලනය භාවිතා කරනවාද?
ඇන්ඩ්‍රෙජ් රෙහ්මාන්

මා සේවය කරමින් සිටි සමාගම අත්පත් කර ගත් අතර ඔවුන් මගේ සියලු අන්තර්ගතයන් @ හොටෝ ඉවත් කළහ. කෙටිම පිළිතුර නම් මගේ සුරතල් ව්‍යාපෘති සඳහා මම නිවසේදී ඩොකර් යන්ත්‍රය භාවිතා කිරීමයි. රැකියාවේදී මම <gulp> කළමනාකරු </ guulp> වන අතර වැඩි තාක්ෂණයක් නොකරන්න. අපට ඩෝකර් භාවිතා කිරීමේ සැලසුමක් නොමැති බැවින් අපගේ මෙවලම සාමාන්‍යයෙන් වැග්‍රන්ට් වේ.
බොයිඩ් හෙම්ෆිල්

10

ජයග්‍රහණය සඳහා අනිවාර්යයෙන්ම ඩෝකර්!

ඔබ දන්නා පරිදි වැග්‍රන්ට් යනු අථත්‍ය යන්ත්‍ර කළමනාකරණය සඳහා වන අතර ඩෝකර් මෘදුකාංග බහාලුම් කළමනාකරණය සඳහා වේ. ඔබ වෙනස නොදන්නේ නම්, මෙන්න: මෘදුකාංග බහාලුමකට එකම යන්ත්‍රය සහ කර්නලය වෙනත් මෘදුකාංග බහාලුම් සමඟ බෙදා ගත හැකිය. බහුවිධ මෙහෙයුම් පද්ධතිවල (කර්නල්) සම්පත් නාස්ති නොකරන නිසා බහාලුම් භාවිතා කිරීමෙන් ඔබට මුදල් ඉතිරි වේ, හොඳ හුදකලාවක් තබා ගනිමින් ඔබට එක් සේවාදායකයකට තවත් මෘදුකාංග ඇසුරුම් කළ හැකිය.

ඇත්ත වශයෙන්ම තමන්ගේම අන්තරායන් හා අභියෝග සමඟ කටයුතු කිරීම සඳහා නව විනයකි.

ඔබගේ අවශ්‍යතා තනි යන්ත්‍ර සම්පත් සීමාව ඉක්මවා ගියහොත් ඩෝකර් රංචුව වෙත යන්න.


8

වොග්‍රන්ට් (සහ රූකඩ) සමඟ ඩොකර් භාවිතා කිරීම පිළිබඳව සත්‍ය ඔරකල් ජාවා සඟරාවේ ඇත්ත වශයෙන්ම තොරතුරු සහිත ලිපියක් ඇත:

නිගමනය

ඩෝකර්ගේ සැහැල්ලු බහාලුම් සම්භාව්‍ය වීඑම් සමඟ සසඳන විට වේගවත් වන අතර එය සංවර්ධකයින් අතර ජනප්‍රිය වී ඇති අතර සීඩී සහ ඩිවෝප්ස් මුල පිරීම්වල කොටසක් වේ. ඔබේ අරමුණ හුදකලා නම්, ඩෝකර් විශිෂ්ට තේරීමකි. වැග්‍රන්ට් යනු වීඑම් කළමණාකරුවෙකු වන අතර එය එක් එක් වීඑම් වල වින්‍යාස වින්‍යාස කිරීමට මෙන්ම ප්‍රතිපාදන සැපයීමටද ඉඩ සලසයි. කෙසේ වෙතත්, එය සාපේක්ෂව විශාල පොදු කාර්යයක් සහිත VirtualBox (හෝ වෙනත් VM කළමණාකරුවෙකු) මත යැපෙන VM ය. ඔබට විශාල දෘඩ තැටියක් අක්‍රියව තිබිය යුතුය, එයට විශාල RAM ප්‍රමාණයක් අවශ්‍ය වන අතර කාර්ය සාධනය උපපෝෂිත විය හැකිය. ඩෝකර් LXC හරහා කර්නල් cgroups සහ නාම අවකාශ හුදකලාව භාවිතා කරයි. මෙයින් අදහස් කරන්නේ ඔබ ධාරකය හා එකම ile පද්ධතිය භාවිතා කරන එකම කර්නලය භාවිතා කරන බවයි. වැග්‍රන්ට් යනු වියුක්ත කිරීම අනුව ඩොකර්ට වඩා ඉහළ මට්ටමක පවතින බැවින් ඒවා සැබවින්ම සැසඳිය නොහැක. ඉලක්කගත පරිසරයන් සැපයීම සඳහා රූකඩ වැනි වින්‍යාස කළමනාකරණ මෙවලම් බහුලව භාවිතා වේ. පවතින රූකඩ පදනම් කරගත් විසඳුම් නැවත භාවිතා කිරීම ඩෝකර් සමඟ පහසුය. ඔබට ඔබේ විසඳුම කපා දැමිය හැකිය, එබැවින් යටිතල පහසුකම් රූකඩ සමඟ සපයා ඇත; මිඩ්ල්වෙයාර්, ව්‍යාපාරික යෙදුම හෝ දෙකම ඩොකර් සමඟ සපයා ඇත; ඩොකර් වැග්‍රන්ට් විසින් ඔතා ඇත. මෙම පරාසයේ මෙවලම් සමඟ, ඔබේ තත්වය සඳහා හොඳම දේ ඔබට කළ හැකිය.

ගොඩනැගීමට, භාවිතය හා උග්රකිරීම DevOps දී Docker කන්ටේනර් ආකාරය http://www.javamagazine.mozaicreader.com/JulyAug2015#&pageSet=34&page=0


1
බොහෝ ටී අතුරුදහන් විය
පෝල් වේරෙස්ට්
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.