在Raspberry Pi 3上運行Docker環(huán)境

tl;dr
眾所周知,Docker環(huán)境使應用具有天然的隔離性,且將應用與Host OS解耦,讓應用程序更加便于移動部署。
這次希望在Raspberry Pi 3上也使用Docker來部署,經(jīng)過多次篩選,最終選擇了HypriotOS做為Host OS


選擇合適的Host OS

Raspberry Pi 3是基于ARM架構(gòu)的板子,標準的x86環(huán)境的OS是不能使用的,所以選擇Host OS就是基于如下因素:

  1. 支持ARM架構(gòu)
  2. 原生支持Docker,刷到TF卡就可以用

根據(jù)這個標準選出來三個OS,各優(yōu)缺點如下:

  • RancherOS:原生支持Docker,包括PID1都封裝成Docker,非常喜歡的一種模式。但是,不支持Raspberry Pi 3上的WIFI模塊,一個小的IoT設備拖一根網(wǎng)線實在是礙眼,只能放棄。
  • ResinOS:同樣是原生支持Docker的OS,而且不只支持Raspberry Pi的板子,還可以在很多開源的板子上運行。但是,底層HOST OS只能運行一個Docker容器,這個讓我很呵呵。
  • HypriotOS:最后選的是這個,原生Docker,支持WIFI

HypriotOS安裝

HypriotOS的FAQ,建議先簡單看一下。
主要參考文檔:https://github.com/hypriot/flash

  1. HypriotOS Github的releases模塊里下載最新的Image
  2. 下載https://github.com/hypriot/flash的Sample目錄下的配置模板,并根據(jù)需要修改如下文件:
  • wlan-user-data.yaml:用于Cloud-Init做系統(tǒng)的配置初始化,不只是第一次,每次系統(tǒng)啟動都會按這個配置文件的要求配置系統(tǒng)環(huán)境)
  • no-uart-config.txt:用于配置Raspberry的物理組件的參數(shù)
  1. 下載flash配置腳本
curl -O https://raw.githubusercontent.com/hypriot/flash/master/$(uname -s)/flash
chmod +x flash
  1. 刷IMAGE到TF卡
flash --userdata sample/wlan-user-data.yaml --bootconf sample/no-uart-config.txt hypriotos-rpi-v1.7.1.img
  1. 把TF卡插入Raspberry,并啟動完成安裝
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 134,915評論 18 139
  • 寫這篇文章主要是為了今后畢業(yè)論文素材上的整理,同時對docker進行鞏固溫習。大綱: docker簡介docker...
    胡圖仙人閱讀 7,492評論 2 96
  • 一、Docker 簡介 Docker 兩個主要部件:Docker: 開源的容器虛擬化平臺Docker Hub: 用...
    R_X閱讀 4,409評論 0 27
  • 年少時喜歡有人陪伴,無論做什么、去哪里,都希望扭頭就能看到相熟的面孔。 長大后明白,年少時所渴望的陪伴,是希冀有人...
    妍兮閱讀 3,899評論 58 123
  • OOTB:Out Of The Bottle,神燈類型。這個類型故事需要具備以下三個要素: Wish(愿望),Sp...
    林奇伍德閱讀 10,765評論 2 7