Სარჩევი:

შექმენით დოკერის სურათი ჟოლოს პიისთვის: 7 ნაბიჯი
შექმენით დოკერის სურათი ჟოლოს პიისთვის: 7 ნაბიჯი

ვიდეო: შექმენით დოკერის სურათი ჟოლოს პიისთვის: 7 ნაბიჯი

ვიდეო: შექმენით დოკერის სურათი ჟოლოს პიისთვის: 7 ნაბიჯი
ვიდეო: OpenSSH for Windows: The IT Admin's Key to Remote Management 2024, ნოემბერი
Anonim
შექმენით დოკერის სურათი ჟოლოს პიისთვის
შექმენით დოკერის სურათი ჟოლოს პიისთვის

ეს ინსტრუქცია გვიჩვენებს, თუ როგორ უნდა ავაშენოთ დოკერის სურათი ჟოლოსთვის.

ნაბიჯი 1: რატომ დოკერი?

თქვენ შეგიძლიათ გამოიყენოთ Raspberry Pi (RPi) ბევრი რამის გაკეთება, პატარა ვებ სერვერი, AI ასისტენტი, Robotics … და ა.

ბევრი პროექტი გსურთ სცადოთ, მაგრამ ტკივილის წერტილებია:

აშენების დრო

RPi არ არის დაინტერესებული გადამამუშავებელი ენერგიით და SD/USB დისკმა შეზღუდა IO სიჩქარე. გამოიყენეთ apt install all დამოკიდებულების პაკეტი მოითხოვს საათს და წყაროს შექმნას მეტი საათი. განსაკუთრებით AI– სთან დაკავშირებული პროექტებისთვის, დროა დაელოდოთ უფრო მეტს, ვიდრე დრო სცადოთ.

ვერსია კონფლიქტი

ყველამ სცადოს ბევრი პროექტი ერთ RPi– ში. როდესაც თქვენ სცადეთ პროექტი და გსურთ სხვაზე გადართვა, თქვენ შეიძლება აღმოაჩინოთ ზოგიერთი ჩავარდნა, რომელიც გამოწვეულია დამოკიდებულების ბიბლიოთეკების ვერსიით წინა პროექტთან კონფლიქტით. ზოგიერთი ბიბლიოთეკა წყვეტს განვითარებას რამდენიმე წლის წინ და დამოკიდებულია ძველ ბიბლიოთეკებზე. ამის საპირისპიროდ, აქტიური პროექტი დამოკიდებული იყო უახლეს ბიბლიოთეკებზე. ორივე პროექტი არ შეიძლება თანაარსებობდეს იმავე SD/USB დისკზე ?.

სურათის სარეზერვო ასლი

ვინაიდან ზოგიერთი პროექტი არ შეიძლება თანაარსებობდეს, უბრალოდ იყიდეთ მეტი SD/USB დისკი, რომ თითოეული პროექტის სურათი დამოკიდებული იყოს. თუ ფული არ არის შეზღუდული?. მაგრამ ეს ზრდის ფაილის/სურათის მართვის სირთულეებს, ზოგჯერ თქვენ გჭირდებათ გაცვლა SD/USB და ჩატვირთვა ბევრჯერ იმის გასარკვევად, რაც გსურთ.

გაზიარება რთულია

როდესაც თქვენ ააშენეთ თქვენი პროექტი და გსურთ გაუზიაროთ წყარო მეგობრებს, თქვენმა მეგობრებმა შეიძლება მიიღონ უკმარისობის აღდგენა. დისტრიბუციის/ბიბლიოთეკების ვერსია ძალიან ძველი ან ძალიან ახალი, პარამეტრების შედგენა და რამდენიმე ხრიკი. თქვენ უნდა დახარჯოთ დრო სხვების პრობლემების გადასაჭრელად, მაგრამ არ შეუწყოთ ხელი თავად პროექტს.

ზემოაღნიშნული ტკივილები არის ჩემი გამოცდილება ამ რამდენიმე წლის განმავლობაში. დოკერს შეუძლია ამის უმეტესობა დაეხმაროს.

დოკერი აშენებას იწყებს წინასწარ აშენებული მშობლის სურათის შერჩევით. Მაგალითად. debian: jessie-slim დასაწყისი ძველი სტაბილური დებიანის მსუბუქი წონის განაწილებიდან; კვანძი: 10-ბასტრიანი თხელი დაწყება დებიანის მსუბუქი წონის განაწილებიდან Node.js 10 დაყენებული. წინასწარ აშენებულ სურათს შეუძლია დაზოგოს ბევრი დრო სურათის გადასაღებად, განახლების მისაღებად და დამოკიდებული ბიბლიოთეკების დასაყენებლად. თითოეული პროექტი შეიძლება დაიწყოს OS– ს სხვადასხვა ვერსიიდან, runtime ვერსიიდან და ბიბლიოთეკების ვერსიიდან. როდესაც დაამთავრებთ საკუთარი პროექტის შემუშავებას, შეგიძლიათ დოკერის გამოსახულება გადაიტანოთ დოკერის ცენტრში და გაუზიაროთ ყველას. თქვენ შეგიძლიათ შეინახოთ პროექტის ყველა მონაცემი ერთსა და იმავე SD/USB- ზე (მონაცემები უნდა იყოს რუტინული სარეზერვო სხვა მედიისთვის). ადგილობრივი შენახვის შესანახად, თქვენ შეგიძლიათ გაასუფთაოთ დოკერის სურათი, როდესაც არ იყენებთ, ნებისმიერ დროს შეგიძლიათ კვლავ გაიყვანოთ დოკერის კერადან.

ნაბიჯი 2: Docker ოვერჰედის

დოკერმა დაამატა ერთი ვირტუალიზაციის ფენა, ოვერჰედის საზრუნავია. მე არ მაქვს ბევრი ტესტირება დოკერის ოვერჰედის შესახებ. ყველაზე გუგლირებული შედეგი აცხადებს ძალიან დაბალ ხარჯებს და მე აღმოვაჩინე ეს დოკუმენტი დაკავშირებული კვლევების შესახებ:

domino.research.ibm.com/library/cyberdig.n…

ნაბიჯი 3: დააინსტალირეთ დოკერი

უბრალოდ გაუშვით:

curl -sSL https://get.docker.com | შ

მითითება.:

www.raspberrypi.org/blog/docker-comes-to-…

docs.docker.com/get-started/

ნაბიჯი 4: შექმენით დოკერის სურათი

გთხოვთ იპოვოთ ოფიციალური სახელმძღვანელო დოკერის სურათის მშენებლობის შესახებ:

docs.docker.com/get-started/part2/

მე მაქვს 2 პროექტი Docker– ის გამოყენებით, თქვენ შეგიძლიათ იპოვოთ Dockerfile როგორც მითითება:

BanateCAD მოითხოვს ლუას გაშვების დროს და დამატებით ლუას ბიბლიოთეკებს. მხოლოდ ლუა 5.1 -ს შეუძლია შეთავსებადი ყველა საჭირო ლუას ბიბლიოთეკასთან, მაგრამ ეს არის 2006 წ. ასე რომ, მე ავაშენე Lua 5.1 გარემო Docker Image მის გასაშვებად

github.com/moononournation/BanateCAD/tree/…

OpenCV არის აქტიურად განვითარებადი პროექტი, კოდის კოდი დამოკიდებულია უახლეს ბიბლიოთეკებზე და შემდგენელზე. ასე რომ, ძალიან დიდი შანსია ავაშენოთ წარუმატებელი, ბიბლიოთეკების მეთოდის ხელმოწერა, შემდგენლის ვერსია, დამოკიდებულების კონფლიქტი … მე მსურს გამოვიყენო opencv4nodejs მარტივი აპლიკაციის შესაქმნელად და არ საჭიროებს უახლეს ფუნქციებს. როდესაც ვიპოვე გზა opencv4nodejs წარმატების შესაქმნელად, მსურს გავყინო იგი Docker Image– ში და გავაკეთო ჩემი რეალური აპლიკაციის კოდირება

github.com/moononournation/face-aware-phot…

ნაბიჯი 5: განვითარების მშენებლობის სიჩქარე Vs გამოსახულების ზომა

განვითარების აშენების სიჩქარე Vs გამოსახულების ზომა
განვითარების აშენების სიჩქარე Vs გამოსახულების ზომა
განვითარების აშენების სიჩქარე Vs გამოსახულების ზომა
განვითარების აშენების სიჩქარე Vs გამოსახულების ზომა

თქვენ შეიძლება აღმოჩნდეთ, რომ ჩემს სახეზე გათვითცნობიერებულ ფოტო-ოსდის პროექტს აქვს Dockfile– ის 2 ვერსია:

github.com/moononournation/face-aware-phot…

განვითარების პროცესში, მე მომწონს გაყოფილი RUN ბრძანება რაც შეიძლება მცირე ზომის და მოვაწყობ სავარაუდოდ შეცვლის RUN ბრძანებას ბოლო საფეხურზე. ასე რომ, ყოველი ცვლილებისთვის, ცვლილებების შეტანისთვის, შემიძლია გამოვიყენო წინა აშენებული ფენა მაქსიმალურად და დაზოგო მშენებლობის სიჩქარე.

ამის საპირისპიროდ, მე გავაერთიანებ ყველა RUN ბრძანებას ერთში გამოშვებამდე. უფრო მცირე ფენას შეუძლია მნიშვნელოვნად შეამციროს დოკერის სურათის ზომა. ჩემი სახის გაცნობიერებული-ფოტო-ოსდის პროექტი, როგორც მაგალითად, მას შეუძლია 100 მბ-ზე მეტი ზომის შემცირება.

ნაბიჯი 6: მრავალ თაღოვანი სურათები

მრავალ თაღოვანი სურათები
მრავალ თაღოვანი სურათები

როგორც უკვე აღვნიშნეთ, RPi არ არის დაინტერესებული გადამამუშავებელი ენერგიით. გამოიყენეთ RPi build Docker სურათი შეიძლება არ იყოს კარგი არჩევანი, განსაკუთრებით მაშინ, როდესაც თქვენი ერთადერთი RPi სხვა პროექტებს მართავს.

გამოიყენეთ x86 კომპიუტერი ასევე დაგეხმარებათ დოკერის სურათის აგებაში, გთხოვთ იხილოთ უფრო დეტალური ინფორმაცია აქ:

www.docker.com/blog/multi-arch-images/

მარტივ 2 ბრძანებას შეუძლია შექმნას x86 და ARM Docker Image პარალელურად:

docker buildx create -use

docker buildx build-პლატფორმა linux/amd64, linux/arm -t moononournation/debian-imagemagick-lua-meshlab: 1.0.1-push.

Multi Arch– ს შეუძლია შექმნას მრავალ პლატფორმის სურათი ერთი და იგივე Docker გამოსახულების ტეგით, ასე რომ თქვენს პროექტს შეუძლია ჩაირთოს სხვადასხვა მანქანაში შეუფერხებლად. მაგალითად.

დოკერი გაშვება -ეს მთვარე

არ აქვს მნიშვნელობა თქვენ აწარმოებთ ზემოაღნიშნულ ბრძანებას RPi ან თქვენს x86 კომპიუტერზე, შეგიძლიათ მიიღოთ Lua გაშვების გარემო.

ნაბიჯი 7: ბედნიერი RPi

ახლა თქვენ შეგიძლიათ უფრო ადვილად შეიმუშაოთ და გააზიაროთ თქვენი RPi პროექტი!

გირჩევთ: