OpenDroneMap with Docker Toolbox on Win - MN



Дөрвөн сэнст дроны сургалт



Windows үйлдлийн систем дээр ажиллах докер1 хэрэгслийн багц (Docker Toolbox) бүхий “OpenDroneMap
2018 оны 6 дугаар сарын 25-ны өдөр
Windows дээр докер хэрэгслийн багц суулгах
https://docs.docker.com/toolbox/toolbox_install_windows/

Докер хэрэгслийн багц нь Docker for Windows аппликейшнын хувьд системийн хамгийн бага шаардлагыг хангаагүй Windows систем дээр докер ашиглах боломжийг олгодог.
Windows-д зориулсан докер хэрэгслийн багцыг дараах холбоосоос авч болно. Үүнд:

https://download.docker.com/win/stable/DockerToolbox.exe

Таньд юу очих вэ? Үүнийг хэрхэн ажиллуулах вэ?
Докер хэрэгслийн багц нь дараах докерийн арга хэрэгслүүдийг өөртөө агуулдаг. Үүнд:
  • Зураг дүрс болон контейнэр [орч. Container буюу шинээр үүсгэсэн орчингоо нэрлэж байна] үүсгэх докер хөдөлгүүр (Docker Engine)-ийг ажиллуулах Докер клиент (Docker CLI client)
  • Докер машин (Docker Machine). Ингэснээр та Windows терминалаас докер хөдөлгүүр командыг өгч чадах юм.
  • Docker-compose команд өгөхөд зориулсан Докер бүтээгч
  • Китематик [орч. Mac, Linux болон Windows дээр докер контейнерийг удирдахад ашигладаг энгийн программ] болон докер хэрэглэгчийн график интерфейс (GUI - Graphical User Interface)
  • Docker QuickStart” бүрхүүлийг докер командын мөр бүхий орчинд зориулан урьдчилан тохируулна.
  • Oracle виртуал машин (VM)-ы VirtualBox
Докер хөдөлгүүрийн daemon нь Linux-д тусгайлан зориулсан kernel-ийн арга хэрэгслүүдийг ашигладаг учраас Та Windows дээр докер хөдөлгүүрийг байгаагаар нь ажиллуулж чадахгүй. Та өөрийн машин дээрээ бага хэмжээний Linux виртуал машин үүсгэж, оруулахын тулд үүний оронд докер машины команд болох “docker-machine”-г ашиглах ёстой. Энэхүү виртуал машин нь Windows систем дээр таньд зориулсан докер хөдөлгүүрийг агуулах юм.
Нэгдүгээр алхам: Өөрийн хувилбараа шалгах
Докерийг ашиглахын тулд таны машин Windows 7 болон түүний дараа үеийн хувилбарууд ажиллаж байгаа 64 битийн үйлдлийн системтэй байх ёстой. Үүнээс гадна таны машины виртуалчлал нь идэвхижсэн эсэхийг магадлах нь зүйтэй.
Хэрвээ та Windows 10 Professional-тай бол тус хэрэгслийн багцын оронд Windows-д зориулагдсан докерийг ашиглах талаар бодож үзнэ үү.

Хоёрдугаар алхам: Докер хэрэгслийн багцыг суулгах
Энэ хэсэгт та докер хэрэгслийн багцын программ болон бусад хэд хэдэн “дэмжих” аппликейшныг суулгах юм. Үүнийг суулгаснаар таны машинд дараах программууд нэмэгдэнэ. Үүнд:
  • Windows-д зориулсан Докер клиент
  • Докер хэрэгслийн багцыг удирдах арга хэрэгсэл ба ISO дүрс
  • Oracle виртуал машины VirtualBox
  • Git MSYS-git UNIX хэрэгслүүд
Хэрвээ та VirtualBox-ын өмнөх хувилбарыг суулгачихсан байгаа бол түүнийгээ докер хэрэгслийн багц суулгагчтай хамт дахин бүү суулгаарай. Сануулга гарч ирэх үед нь харгалзах нүдэнд зөвлөсөн байгааг нь болиулаарай.
Хэрэв таньд ажиллаж байгаа өөр Virtual Box байгаа бол түүнийгээ программыг суулгахаасаа өмнө унтраах ёстой.

Гуравдугаар алхам: Программ суусан эсэхийг баталгаажуулах
Тус суулгагч програм нь таны Application хавтаст докер хэрэгслийн багц, VirtualBox, Китематик зэргийг нэмж оруулдаг. Энэ алхмын хүрээнд та докерыг хэрэгслийн багцыг эхлүүлж, энгийн докер командыг ажиллуулна.
  1. Компьютерийн дэлгэц дээрээ “Docker QuickStart Terminal” дүрсийг олно уу.
  2. Урьдчилан тохируулсан докер хэрэгслийн багцын терминалыг эхлүүлэхийн тулд “Docker QuickStart дүрс дээр дарна.
Хэрэв VirtualBox таны компьютерт зохих өөрчлөлтийг хийх боломжийг олгохын тулд User Account Control үйлдлийг зөвшөөрч байгаа эсэхийг асуусан сануулга гарч ирвэл Yesгэдгийг нь сонгоно.
  1. $ сануулгын зэргэлдээ хулганыг дарах замаар терминалыг идэвхитэй болгоно.
  2. docker run hello-worldкомандыг бичээд, RETURN буюу БУЦАХ гэдгийг дарна.
    Тус команд нь таньд зориулан зарим үйлдлийг хийх бөгөөд хэрвээ бүх зүйлс сайн явагдвал командын гарц нь дараах байдалтай харагдах юм. Үүнд:
$ docker run hello-world
Unable to find image 'hello-world:latest' locally
Pulling repository hello-world
91c95931e552: Download complete
a8219747be10: Download complete
Status: Downloaded newer image for hello-world:latest
Hello from Docker.
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
  1. The Docker Engine CLI client contacted the Docker Engine daemon.
  2. The Docker Engine daemon pulled the "hello-world" image from the Docker Hub.
Assuming it was not already locally available.)
  1. The Docker Engine daemon created a new container from that image which runs the executable that produces the output you are currently reading.
  2. The Docker Engine daemon streamed that output to the Docker Engine CLI client, which sent it to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
$ docker run -it ubuntu bash

For more examples and ideas, visit:
https://docs.docker.com/userguide/


Сонголтот үйлдэл: Дундын лавлахыг нэмэх
Системээс өгөгдсөн хэрэгслийн багц нь зөвхөн C:\Users лавлахад нэвтрэх боломжтой бөгөөд /c/Users дэх виртуал машинууд рүү холбож өгдөг.
Тайлбар: Виртуал машины замын хүрээнд c нь жижгээр бичигдэх бол Users-ийн эхний үсгийг томоор бичнэ.
 ============================================================



Та докерыг суулгасны дараа докерт зориулсан ODM (OpenDroneMap)дараах байдлаар суулгаж болно. Үүнд:
https://hub.docker.com/r/opendronemap/node-opendronemap/


Node-OpenDroneMap

node-OpenDroneMap
бол Node.js Javascript апп бөгөөд OpenDroneMap-д нэвтрэх REST API [орч. REST нь Representational State Transfer буюу тодорхой дүрмүүдийн дагуу системийг загварчлах архитектур, API нь Аппликейшн программчлалын интерфейс] юм. Энэ нь WebODM-ын ашигласан API-г үзүүлдэг.


Эхлүүлэх
Таньд докер ашиглан “node-OpenDroneMap”-г тохируулан суулгахыг зөвлөж байна.
  • Windows / OSX хувьд Docker Quickstart Terminal-аас эсвэл Linux-ийн хувьд командын мөрөөс дараахыг бичнэ:
    docker run -p 3000:3000 opendronemap/node-opendronemap
  • Хэрвээ та Windows/OSX дээр байгаа бол өөрийн Docker Quickstart Terminal”-аас дараах командыг ажиллуулах замаар өөрийн докер машины IP-г олно:
docker-machine ip
Linux хэрэглэгчид 127.0.0.1. руу холбогдож болно.
  • Веб хөтчөө нээж, http://<yourDockerMachineIp>:3000 рүү орно.
  • Тэнд some images гэснийг ачаална.
  • "Start Task" гэдгийг дарна.
  • Салхинд алхаарай :)

Хэрэв “node-opendronemap”-г ажиллуулж буй комьютер нь хуучин эсвэл 32 битийн CPU [орч. Central Processing Unit – төв процессор] ашиглаж байгаа бол Та эх үүсвэрээс нь “OpenDroneMap”-г хөрвүүлж, “node-opendronemap”-г өөрөөр нь тохируулна. Энэ үед та докерийг ашиглаж болохгүй. Докер дүрс зургууд нь 64 битийн өргөтгөлтэй, MMX, SSE, SSE2, SSE3, SSSE3 эсвэл түүний дараа үеийн тушаалын багцыг дэмждэг CPU-тэй ажилладаг. Зургийг боловсруулах явцад “Illegal instruction гэсэн алдаа зааж байвал таны CPU хэтэрхий хуучин болохыг илтгэнэ.

======================================
Системээс өгөгдсөн виртуал машины тохиргоог өөрчлөх
Системээс өгөгдсөн Virtual Box виртуал машинд ёкто (Yocto) зургийг бүтээх үед сайн туршлагатай болох хангалттай хэрэгсэл байдаггүй. Таньд дор хаяж 2 CPU, 4GB санах ой бүхий шинэ виртуал машин үүсгэхийг зөвлөж байна.
  • Docker Quickstart Terminal ажиллуулж, дараа нь тухайн терминалд дараах командуудыг өгч ажиллуулна. 
  • Системээс өгөгдсөн виртуал машиныг арилгана.
docker-machine rm default
  • Системээс өгөгдсөн виртуал машиныг шинээр бий болгох
    • --virtualbox-cpu-count–аар CPU-ийн тоог сонгоно. Уг жишээнд бид 2-г ашиглах юм.
    • --virtualbox-memory-д RAM буюу шуурхай санах ойн тоог сонгоно. Мөн энэ нь толгой компьютерийн техник хангамжид тулгуурладаг. Гэхдээ дор хаяж 4GB-г сонгоно.
    • --virtualbox-disk-size–д дискний сул зайн хэмжээг сонгож өгнө. Байгуулах зүйл нь маш их* гарц бий болгодог учраас үүнийг дор хаяж 50GB байхыг зөвлөдөг. Энэ жишээнд бид 50GB-г сонгоно.
    • Шинэ тохиргоо бүхий виртуал машиныг бий болгоно.
docker-machine create -d virtualbox --virtualbox-cpu-count=2 --virtualbox-memory=4096 --virtualbox-disk-size=50000 default
  • Докерийг дахин эхлүүлэх
docker-machine stop
exit
Дараа нь шинэ Docker Quickstart Terminal нээж эхлүүлнэ.


1 Докер бол тархсан програм хөгжүүлэх, тестлэх, серверт байрлуулах (deployment) зэрэг бүхий л ажилуудаа контэйнерыг ашиглан хялбарчилж, виртуал машины дараах үе болж гарч ирсэн шинэ технологи юм.

Comments

Popular posts from this blog

Microsoft Image Composite Editor (ICE)

DJI Phantom 3 - Flight Logs

FOSS4G GIS for Mining Monitoring - MN