Mundarija:
- 1 -qadam: Nima uchun Docker?
- 2 -qadam: Docker yuklari
- 3 -qadam: Docker -ni o'rnating
- 4 -qadam: Docker tasvirini yaratish
- 5 -qadam: Rivojlanish tezligi va tasvir hajmi
- 6 -qadam: Ko'p kamarli tasvirlar
- 7 -qadam: RPi baxtli
Video: Raspberry Pi uchun Docker tasvirini yarating: 7 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:23
Ushbu ko'rsatmalar Raspberry Pi uchun Docker tasvirini qanday yaratishni ko'rsatadi.
1 -qadam: Nima uchun Docker?
Siz Raspberry Pi -dan (RPi) ko'p narsalarni qilishingiz mumkin, kichik veb -server, AI yordamchisi, Robototexnika va boshqalar.
Siz sinab ko'rmoqchi bo'lgan ko'plab loyihalar, lekin og'riqli nuqtalari:
Qurilish vaqti
RPi qayta ishlash quvvatiga qiziqmaydi va SD/USB drayveri IO tezligini cheklaydi. Apt install -dan foydalaning, barcha qaramlik to'plami bir soat talab qiladi va manba yaratish uchun ko'proq soat kerak bo'ladi. Ayniqsa, AI bilan bog'liq loyihalar uchun, sinab ko'rish uchun ko'proq vaqt kutish kerak.
Versiya ziddiyatlari
Hamma bitta RPi -da ko'plab loyihalarni sinab ko'radi. Agar siz loyihani sinab ko'rganingizda va boshqasiga o'tishni xohlasangiz, kutubxonalar versiyasi oldingi loyihaga zid bo'lganligi sababli tuzilmalar muvaffaqiyatsiz bo'lishi mumkin. Ba'zi kutubxonalar bir necha yil oldin rivojlanishni to'xtatgan va ba'zi eski kutubxonalarga bog'liq. Aksincha, faol loyiha so'nggi kutubxonalarga bog'liq edi. Ikkala loyiha ham bitta SD/USB diskda birga bo'la olmaydi?
Rasmni zaxiralash
Ba'zi loyihalar birgalikda mavjud bo'lmagani uchun, har bir loyiha tasvirini qaram bo'lish uchun ko'proq SD/USB drayverini sotib oling. Agar pul cheklanmagan bo'lsa? Ammo bu fayl/tasvirni boshqarishning qiyinchiliklarini oshiradi, ba'zida siz xohlagan narsani bilish uchun SD/USB almashtirish va yuklashni ko'p marta talab qiladi.
Ulashish qiyin
Loyihangizni yaratganingizda va manbani do'stlaringizga ulashishni xohlasangiz, do'stlaringiz qurib bo'lmay qolgan tasmani qaytarib olishlari mumkin. Tarqatish/kutubxonalar versiyasi juda eski yoki juda yangi, qurilish parametrlari va ba'zi fokuslar. Boshqalarning muammolarini hal qilish uchun vaqt sarflash kerak, lekin loyihani o'zi qo'llab -quvvatlamaydi.
Yuqoridagi og'riqli nuqtalar - bu mening bir necha yildagi tajribam. Docker ko'p jihatdan yordam berishi mumkin.
Docker qurilishni oldindan o'rnatilgan ota -ona tasvirini tanlashdan boshlaydi. Masalan, debian: eski barqaror Debian engil vazn taqsimotidan jessie-ingichka boshlanishi; tugun: Node.js 10 o'rnatilgan Debian yengil vazn taqsimotidan 10-buster-ingichka boshlanish. Oldindan o'rnatilgan rasm, rasmni o'chirish, yangilanishlarni olish va bog'liq kutubxonalarni o'rnatish uchun ko'p vaqtni tejash imkonini beradi. Har bir loyiha har xil OS versiyasidan, ish vaqti va kutubxonalar versiyasidan boshlanishi mumkin. O'z loyihangizni ishlab chiqishni tugatgandan so'ng, siz Docker tasvirini docker uyasiga surib, hammaga ulashishingiz mumkin. Siz barcha loyiha ma'lumotlarini bir xil SD/USB -da saqlashingiz mumkin (ma'lumotlar boshqa ommaviy axborot vositalariga zaxiralanishi kerak). Mahalliy xotirani saqlash uchun siz Docker tasvirini ishlatilmaganda ham tozalashingiz mumkin, istalgan vaqtda Docker uyasidan tortib olishingiz mumkin.
2 -qadam: Docker yuklari
Docker bitta virtualizatsiya qatlamini qo'shdi, qo'shimcha xarajatlar - bu tashvish. Men Docker yukini juda ko'p sinovdan o'tkazmaganman. Ko'pgina Google natijalari juda kam xarajat talab qiladi va men ushbu hujjatni ba'zi tegishli tadqiqotlar haqida topdim:
domino.research.ibm.com/library/cyberdig.n…
3 -qadam: Docker -ni o'rnating
Shunchaki ishga tushirish:
curl -sSL https://get.docker.com | sh
Refer.:
www.raspberrypi.org/blog/docker-comes-to-…
docs.docker.com/get-started/
4 -qadam: Docker tasvirini yaratish
Iltimos, docker tasvirini yaratish bo'yicha rasmiy qo'llanmani toping:
docs.docker.com/get-started/part2/
Menda Docker -dan foydalanadigan ikkita loyiha bor, siz Dockerfile -ni ma'lumot sifatida topishingiz mumkin:
BanateCAD Lua ish vaqtini va Lua kutubxonalarini qo'shishni talab qiladi. Faqat Lua 5.1 barcha kerakli Lua kutubxonalariga mos kelishi mumkin, lekin bu 2006 yil mahsulotidir. Lua 5.1 muvaffaqiyat qozonadigan Debianning so'nggi tarqatilishi - Jessi (Hozirgi Debian eski stabilidan oldingi versiya). Shunday qilib, men uni ishga tushirish uchun Lua 5.1 muhitini yaratdim
github.com/moononournation/BanateCAD/tree/…
OpenCV - bu faol rivojlanayotgan loyiha, manba kodi so'nggi kutubxonalar va kompilyatorlarga bog'liq. Muvaffaqiyatsiz, kutubxonalar usuli imzosi, kompilyator versiyasi, qaramlik ziddiyatini yaratish uchun juda katta imkoniyat … Men oddiy ilovani yaratish uchun opencv4nodejs -dan foydalanmoqchiman va oxirgi xususiyatlarni talab qilmayman. Shunday qilib, men opencv4nodejs muvaffaqiyatini yaratish yo'lini topganimda, uni Docker Image -da muzlatib qo'yishni va haqiqiy ilovalarimni kodlashni xohlardim
github.com/moononournation/face-aware-phot…
5 -qadam: Rivojlanish tezligi va tasvir hajmi
Siz mening yuz-xabardor-foto-osd loyihamda Dockfile-ning 2 versiyasi borligini topishingiz mumkin:
github.com/moononournation/face-aware-phot…
Rivojlanayotganda, men RUNni ajratish buyrug'ini iloji boricha kamroq yoqtiraman va RUN buyrug'ini oxirgi bosqichga o'zgartirishni tartibga solaman. Rivojlanish o'zgarishi uchun har bir qurilish uchun men avvalgi qurilgan qatlamdan iloji boricha ko'proq foydalanishim va qurilish tezligini tejashim mumkin.
Aksincha, men chiqishdan oldin barcha RUN buyruqlarini birlashtiraman. kichikroq qatlam Docker Image hajmini ancha kamaytirishi mumkin. Mening yuzimdan xabardor-photo-osd loyihasi misol sifatida 100 MB dan oshishi mumkin.
6 -qadam: Ko'p kamarli tasvirlar
Yuqorida aytib o'tilganidek, RPi qayta ishlash quvvatiga qiziqmaydi. RPi build Docker tasviridan foydalanish yaxshi tanlov bo'lmasligi mumkin, ayniqsa sizning yagona RPi boshqa loyihalarni ishga tushirganda.
X86 kompyuteridan foydalanish Docker tasvirini yaratishga yordam beradi, iltimos, bu erda batafsil ma'lumotni toping:
www.docker.com/blog/multi-arch-images/
oddiy 2 buyruqlar parallel ravishda x86 va ARM Docker tasvirini yaratishi mumkin:
docker buildx create --use
docker buildx build --platform linux/amd64, linux/arm -t moononournation/debian-imagemagick-lua-meshlab: 1.0.1-push.
Multi Arch bir xil Docker tasvir yorlig'i bilan ko'p platformali tasvirni yaratishi mumkin, shuning uchun sizning loyihangiz boshqa mashinada uzluksiz ishlashi mumkin. masalan
docker run -it moononournation/debian-imagemagick-lua-meshlab: 1.0.1
Yuqoridagi buyruqni RPi yoki x86 kompyuteringizda ishlatishingizdan qat'i nazar, siz Lua ish vaqti muhitini olishingiz mumkin.
7 -qadam: RPi baxtli
Endi siz RPi loyihangizni osonroq ishlab chiqishingiz va ulashishingiz mumkin!
Tavsiya:
Radio FM materiallari Reciclados + tasvirini 3D: 8 qadam
Radio FM materiallari Reciclados + tasviri 3D: Haqiqatan ham, boshlang'ich ko'rsatmalari, o'qish, o'qish va yozib olish, shuningdek, radioni MP3 formatida uzatish, o'yinlarni uzatish. u escuchar radiosi va men hacia falta ovozini eshitdi
Sizning PCB dizayningizni 5 daqiqada 6 bosqichda haqiqiy 3D tasvirini yarating
5 daqiqada PCB dizayningizning haqiqiy 3D tasvirini chiqaring: Men tez-tez bosilgan elektron karta (PCB) qismi va komponentlari tasvirlangan hujjatlar fayllarini yaratganim uchun PCBA fayllarining haqiqiy bo'lmagan skrinshotlari haqida adashib qoldim. Shunday qilib, men uni yanada real va chiroyli qilishning oson yo'lini topdim
ESP32 kamera tasvirini yozish mijozi: 5 qadam
ESP32 Camera Picture Logging Client: ESP32 Camera Picture Logging Client loyihasi ESP32 modulining WiFi imkoniyatidan foydalangan holda rasmni olish va uni Internet orqali markaziy serverga yuborish uchun ESP32 mikro-boshqaruvchisidan foydalanishga qaratilgan. Asosiy PCB taxtasi ikkita asosiy maqsadni hisobga olgan holda ishlab chiqilgan:
Moyamoya tasvirini qayta ishlash: 8 qadam
Moyamoya tasvirini qayta ishlash: Moyamoya, " tutun tutuni " miyaning tagida joylashgan bazal ganglion arteriyalarining tiqilib qolishi natijasida yuzaga keladigan kam uchraydigan kasallik. Bu serebrovaskulyar kasallik bo'lib, asosan bolalarga ta'sir qiladi. Sim
Raspberry Pi nazorat qilinadigan xonadagi haroratni Gnuplot tasvirini chiqarish va elektron pochta orqali ogohlantirish qobiliyati: 7 qadam
Raspberry Pi boshqariladigan xonadagi haroratni Gnuplot tasvirini chiqarish va elektron pochta orqali ogohlantirish qobiliyati bilan kuzatish: Men ishlayotgan joyda juda ko'p kompyuterlar joylashgan juda muhim xona bor. Bu tizimlarning ishlashini optimallashtirish uchun bu xonadagi muhit harorati juda sovuq bo'lishi kerak. Menga shunday imkoniyatlarga ega bo'lgan monitoring tizimini ishlab chiqish taklif qilindi