මගේ වැඩපොළේ දේශීය හුදකලා සංවර්ධන පරිසරයන් සංවිධානය කිරීමේ ප්රවේශයක් ගැන මම කතා කරමි. පහත සඳහන් සාධකවල බලපෑම යටතේ ප්රවේශය වර්ධනය විය:
- විවිධ භාෂාවලට විවිධ IDE සහ මෙවලම් දාම අවශ්ය වේ;
- විවිධ ව්යාපෘති මෙවලම් දාම සහ පුස්තකාලවල විවිධ අනුවාද භාවිතා කළ හැක.
ප්රවේශය වන්නේ ග්රැෆික් ප්රතිදානය සත්කාරක වෙත හරවා යවන ලද ග්රැෆික් ප්රතිදානය සමඟ දේශීයව ලැප්ටොප් එකක හෝ වැඩපොළක ධාවනය වන LXD බහාලුම් ඇතුළත සංවර්ධනය කිරීමයි.
උදාහරණ වින්යාසය උබුන්ටු 20.04.
විකල්ප සහ හේතු පිළිබඳ පරාවර්තන ලිපියේ අවසානයේ දක්වා ඇත.
1. LXD ස්ථාපනය
В උබුන්ටු 20.04 LXD තවදුරටත් deb පැකේජයක් ලෙස ස්ථාපනය සඳහා ලබා ගත නොහැක, snap හරහා පමණි:
$ snap install lxd
ස්ථාපනය කිරීමෙන් පසු, ඔබ ආරම්භ කිරීම සිදු කළ යුතුය:
$ lxd init
මම වෙනස් කරන එකම පරාමිතිය storage bakend
- මම පාවිච්චි කරනවා dir
සරලම එක ලෙස. මම පින්තූර සහ පිටපත් භාවිතා නොකරන බැවින්, අවවාද ඇත
ඒ හා සමානව, බහලුම පසුපෙළ අවසාන විකල්පය ලෙස සැලකිය යුතුය.
එය සියලුම ප්රධාන LXD විශේෂාංග සඳහා සහය දක්වයි, නමුත් එය ක්රියාත්මක කළ නොහැකි බැවින් ඉතා මන්දගාමී සහ අකාර්යක්ෂම වේ
ක්ෂණික පිටපත් හෝ ස්නැප්ෂොට් සහ ඒ නිසා සෑම අවස්ථාවකම සම්පූර්ණ ආචයනය පිටපත් කිරීමට අවශ්ය වේ.
2. LXD පැතිකඩ සැකසුම
default
පහත වෙනස්කම් සමඟ:
$ lxc profile device add default X0 disk source=/tmp/.X11-unix/X0 path=/tmp/.X11-unix/X0
— එවිට බහාලුම්වල ඇති යෙදුම් සත්කාරක X11 සේවාදායකය සමඟ අන්තර්ක්රියා කළ හැකිය;$ lxc profile set default environment.DISPLAY :0
- ඒ නිසා පාරිසරික විචල්යයDISPLAY
බහාලුම්වල නිවැරදිව ස්ථාපනය කර ඇත;$ lxc profile set default raw.idmap "both 1000 1000"
- නිවැරදි සඳහාහඳුනාගැනීමේ සිතියම්කරණය .
3. බහාලුමක් නිර්මාණය කිරීම සහ සැකසීම
රූපයක් මත පදනම්ව කන්ටේනරයක් නිර්මාණය කිරීම images:ubuntu/20.04
:
$ lxc launch images:ubuntu/20.04 dev1
මම කැමති ගබඩාවෙන් ලැබෙන පින්තූර වලට images:
රූපයේ නමට. උබුන්ටු ගබඩාවෙන් රූපයක් මත පදනම්ව බහාලුමක් නිර්මාණය කිරීම පහත පරිදි සිදු කළ හැකිය: $ lxc launch ubuntu/20.04 dev1
.
කන්ටේනරයේ මූල කවචයට ප්රවේශය:
$ lxc exec dev1 -- bash
මම ෆයර්ෆොක්ස් සහ වීඑස් කේතය (නිධිය වෙතින් ස්ථාපනය කරමි
$ apt update
$ apt install curl gpg firefox
$ curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg
$ install -o root -g root -m 644 packages.microsoft.gpg /usr/share/keyrings/
$ echo "deb [arch=amd64 signed-by=/usr/share/keyrings/packages.microsoft.gpg] https://packages.microsoft.com/repos/vscode stable main" > /etc/apt/sources.list.d/vscode.list
$ apt update
$ apt install code
මම පැහැදිලිකම සඳහා කන්ටේනරයක් ඇතුළත් කරමි.
poweroff
පාරිතෝෂිකය! GPU එකක් බහාලුමකට විසි කිරීම ඉතා පහසු වන අතර එමඟින් එහි ක්රියාත්මක වන යෙදුම් වලට ග්රැෆික් කාඩ්පත භාවිතා කළ හැකිය. මෙය සිදු කිරීම සඳහා ඔබට අවශ්ය:
- උපාංගය එකතු කරන්න
$ lxc config device add dev1 mygpu gpu
; - කන්ටේනරයේ වීඩියෝ කාඩ්පත් ධාවක ස්ථාපනය කරන්න - ධාරකයේ ස්ථාපනය කර ඇති ඒවාම.
4. කන්ටේනරයක් භාවිතා කිරීම
කන්ටේනරය තවමත් ක්රියාත්මක නොවේ නම්, ඔබ එය ආරම්භ කළ යුතුය:
lxc start dev1
Root නොවන පරිශීලකයෙකු ලෙස VS කේතය ධාවනය කිරීම උබුන්ටු:
lxc exec dev1 -- sudo --login --user ubuntu code
Firefox දියත් කරන්න:
lxc exec dev1 -- sudo --login --user ubuntu firefox
යෙදුම් කවුළු ධාරකයෙහි දර්ශනය වනු ඇත, නමුත් ඒවා බහාලුම තුළ ක්රියාත්මක වනු ඇත - ssh භාවිතයෙන් චිත්රක ඉදිරියට යැවීමට සමාන වේ.
මම ධාවනය වන බහාලුම් අතින් වසා දමන්නේ නැත, මන්ද එහි වැඩි කරුණක් මට නොපෙනේ - ධාවනය වන යෙදුම්වල කවුළු වැසීමට මම සීමා වෙමි.
5. නිගමනය
සංවර්ධන මෙවලම් ස්ථාපනය කිරීම, පුස්තකාලවල දෝශ නිරාකරණ අනුවාද, නිශ්චිත ආකාරයකින් පද්ධති සංරචක වින්යාස කිරීම සහ වෙනත් උපාමාරු අවශ්ය වන බැවින්, සංවර්ධනය සඳහා ධාරක OS භාවිතා නොකිරීමට මම කැමැත්තෙමි. මේ සියල්ල වෙනත් සංවර්ධන නොවන මෘදුකාංගවල හෝ සමස්ත OS හි අනපේක්ෂිත හැසිරීම් වලට තුඩු දිය හැකිය. උදාහරණයක් ලෙස, OpenSSL වින්යාසයේ වෙනස්කම් නිසා OS එක නිවැරදිව ආරම්භ වීම නැවැත්විය හැක.
සංවර්ධන පරිසරයන් හුදකලා කිරීමට මම විවිධ මෙවලම් උත්සාහ කර ඇත:
- අතථ්ය යන්ත්ර (KVM, VirtualBox, ආදිය) වඩාත්ම පැහැදිලි විකල්පය වේ, නමුත් ඒවා සැලකිය යුතු ලෙස වැඩි සම්පත් පරිභෝජනය කරයි, නමුත් වින්ඩෝස් යටතේ සංවර්ධනය සඳහා වෙනත් විකල්ප නොමැත (ධාරකය Linux නම්);
- දේශීය යන්ත්රයක ක්රියාත්මක වන ක්ලවුඩ් සංවර්ධන මෙවලම් (කන්ටේනරයක හෝ අතථ්ය යන්ත්රයක Cloud9, Eclipse Che, ආදිය) - ඒවා මෙම මෙහෙයුම් ආකාරය සඳහා සංවර්ධනය කර නැත, ඒවාට අමතර වින්යාස කිරීම සහ නඩත්තු කිරීම අවශ්ය වේ, ඒවා අපේක්ෂිත සඳහා භාවිතා කිරීම වඩාත් සුදුසුය. අරමුණ - වලාකුළෙහි;
- ඩොකර් බහාලුම් නැවතත් වෙනත් දෙයක් සඳහා අදහස් කෙරේ; මගේ මතය අනුව, වෙනම බහාලුම්වල තවමත් ඇසුරුම් කර නොමැති මෘදුකාංග භාවිතයෙන් ඉක්මනින් මූලාකෘති කිරීම සඳහා ඒවා එතරම් පහසු නොවේ.
තෝරාගත් ප්රවේශය එහි සරල බව සහ ඇතුළුවීමට ඇති අඩු බාධක සමඟ මා සිත් ගත්තේය. බහාලුම් තුළම, ඔබට ව්යාපෘති-විශේෂිත ප්රවේශයන් භාවිතා කළ හැකිය: සියල්ල අතින් ස්ථාපනය කර වින්යාස කරන්න, නැතහොත් ස්වයංක්රීයකරණය භාවිතා කරන්න (Puppet, Ansible, ආදිය), යෙදවීමට පවා $ lxc launch images:ubuntu/16.04 dev16
.
හුදකලා කිරීම සම්බන්ධයෙන් ගත් කල, බහාලුම්කරණයට අථත්යකරණයට සාපේක්ෂව විශාල ප්රහාරක මතුපිටක් ඇති බව මතක තබා ගැනීම වැදගත්ය - ධාරකය සහ බහාලුම තනි හරයක් බෙදා ගන්නා අතර, අනිෂ්ට මෘදුකාංග කන්ටේනරයෙන් ගැලවීමට ඉඩ සලසන අවදානමකි. සැක සහිත මෘදුකාංග සමඟ අත්හදා බැලීම් කරන විට, වඩාත් සුදුසු හුදකලා යාන්ත්රණ භාවිතා කිරීම වඩා හොඳය.
ප්රයෝජනවත් සබැඳි
- Habré පිළිබඳ ධාරිතාව සහිත ලිපිය
LXD - Linux බහාලුම් පද්ධතිවල මූලික ලක්ෂණ LXD ව්යාපෘති ද්වාරය , LXD LXC සමඟ පටලවා නොගැනීම වැදගත්ය - ඒවා එකිනෙකට වෙනස් නමුත් එකිනෙකට සම්බන්ධ දේවල්.බ්ලොග් Simos Xenitellis — මෙම බ්ලොගයේ LXD පිළිබඳ ප්රයෝජනවත් ව්යවහාරික තොරතුරු රාශියක් ඇත.සංවර්ධකයින් සඳහා Windows 10 අතථ්ය යන්ත්රවල සූදානම් කළ රූප — මයික්රොසොෆ්ට් වරින් වර නව ගොඩනැගීම් එකතු කර විශේෂ බලපත්රයක් සමඟ ඒවා බෙදා හරියි.
මූලාශ්රය: www.habr.com