這可能會更通用,並且會爲機器體系結構A構建體系結構B的映像。我當前想要創建一個具有很多Python依賴關係的映像。在樹莓派上花費時間,但在Mac上速度更快。當我最終得到一個錯誤需要重建。有沒有辦法在Mac上構建這個圖像,然後把它拉到我的覆盆子pi?Docker - 在Mac上構建rpi圖像
6
A
回答
8
模擬完整的備用架構通常非常緩慢。 QEMU可以讓你在Linux上做到這一點,並且可以集成到Docker容器中。
對於建築物,您可以使用比完整模擬快得多的QEMU User Emulation。這允許您的硬件直接執行ARM二進制文件,並用於簡化交叉編譯和交叉調試。
第一個get VirtualBox和get Vagrant並安裝。 (或者使用docker-machine
從Docker Toolbox)
設置你的虛擬機
mkdir raspbian-docker
cd raspbian-docker
vagrant init debian/jessie64
vagrant up
vagrant ssh
現在你對你的Debian Linux的虛擬機,設置泊塢窗主機
sudo su -
apt-get install qemu-user-static
curl https://get.docker.com/ | sh
運行一個raspbian環境
docker run -ti \
--volume /usr/bin/qemu-arm-static:/usr/bin/qemu-arm-static \
philipz/rpi-raspbian \
bash
並做你需要的。
然後你可以docker export
和docker import
來移動圖像。您還可以使用the hub或setup a registry使用push
/pull
的Docker Toolbox也將讓你輕鬆通過VirtualBox的虛擬機在Mac上運行的碼頭工人,但我碰到更多的麻煩比它是值得(當你有遊民設置)。
0
您可以派生RPI的發行建設者和自定義您的需求:https://github.com/RPi-Distro/pi-gen 它使用的碼頭工人的qemu-debootstrap的,類似於馬特的答案。
如果您計劃爲arm架構構建Docker鏡像,則qemu-debootstrap將無濟於事。在這種情況下,您可以直接在ARM服務器上運行Docker構建,例如Scaleway提供的構建。
我的CI服務器運行上述組合,以連續構建帶預先加載的armh docker鏡像的操作系統映像。然後,device-init負責將碼頭導出程序加載爲碼頭圖像。 缺點是在第一次啓動後,device-init可能需要幾小時才能預加載docker鏡像。
相關問題
- 1. 如何在Docker上構建圖像?
- 2. Docker在mac上構建2.1+版本
- 3. 構建和上傳圖像到Docker Hub,如何從Docker Compose?
- 4. 在英特爾機器上構建ARM體系結構的Docker鏡像(Mac)
- 5. rpi gpio節點在Mac上不存在
- 6. 無法在Docker上創建mongodb圖像
- 7. 用rstan在搖桿/詩句上構建Docker圖像
- 8. 在Ubuntu上構建v8(docker)
- 9. Spotify docker maven構建多個圖像
- 10. 爲Docker父圖像設置http_proxy構建
- 11. Docker在mac上構建ssl錯誤El Capitan
- 12. 試圖在mac上構建pycairo 10.8
- 13. 在Mac上將Docker圖像推送到Google Container註冊失敗
- 14. 在mac上構建aosp 10.12
- 15. 在mac上構建iotivity
- 16. 在Jenkins中構建Docker鏡像(在Docker鏡像中) - Cloud Docker代理
- 17. 由docker-compose構建與docker構建生成的docker鏡像有什麼不同?
- 18. docker:在Jenkins上沒有找到命令在Mac上構建和發佈插件
- 19. 爲什麼docker從docker文件構建圖像會在不正確地構建出口時創建容器?
- 20. 如何在RPi上構建DJI OnBoard SDK示例?
- 21. Docker圖像如何在本地構建,但不在遠程目標上?
- 22. 使用Makefile逐步構建Docker圖像層次結構
- 23. Tkinter的圖像(在Mac上)
- 24. 如何構建Docker鏡像自己的圖像
- 25. Docker鏡像無法在Google Container Registry上構建
- 26. Gradle構建docker鏡像在重複庫上失敗
- 27. 爲什麼Docker Mongo在圖像構建期間拒絕連接
- 28. Docker和NGINX - 在Docker構建時未在上游找到主機
- 29. Docker + Kubernetes構建
- 30. 在碼頭上構建圖像
簡單而好的解決方案,它的工作原理...我喜歡它,謝謝。 – Clempat
我也發現https://www.scaleway.com/。我無法註冊。沒有邀請,但看起來很有趣用於此目的... – Clempat