win7下使用docker編譯Nodemcu韌體
阿新 • • 發佈:2019-02-16
win10最方便,新版Docker直接使用HyperV虛擬主機。
Win7則要使用Docker Toolbox,安裝Virtualbox。
安裝Toolbox時,不安裝Git,則執行Docker Quickstart Terminal時需要手動指定Git的bash路徑。
它會在VirtualBox中自動建立一個虛擬機器,設定兩個虛擬網絡卡無需干預,虛擬機器要能夠上網;自動設定資料夾。
我的例子:
1、git clone韌體到本地,放在使用者資料夾下,如:C:\Users\nodemcu-firmware\
2、修改虛擬主機的共享資料夾名為:
3、修改資料夾許可權,新增Everyone和Guest(系統禁用則需啟用)。 不修改,編譯時會提示許可權,移動檔案被拒絕。凡是提到檔案許可權,都來對資料夾開放這倆許可權。
4、在個人資料夾中建立一個批處理檔案如n.bat,把命令直接寫上,免得的命令視窗手動輸入。
docker run --rm -it -v //c/Users/y/nodemcu-firmware:/opt/nodemcu-firmware marcelstoer/nodemcu-build
注意一點,C:寫為//c,是小寫。
這個命令的意思也是,把nodemcu-firmware資料夾對映到 /opt/nodemcu-firmware。
5、同步虛擬機器的系統時間,避免clock skew警告
使用 date -s 12:50:00,只改動時間部分(最終好像也不成功)。
我使用hwclock命令不能成功改變系統時間,使用date命令。
最後在nodemcu-firmware/bin目錄下可以看到編譯輸出的檔案。
整數韌體可以節省空間。
NodeMCU雲編譯次數多了後,郵件會被阻擋,而且不方便。
編譯結束後,到VirtualBox裡把default虛擬機器關閉,釋放佔用的CPU和記憶體。這個虛擬機器會在開啟Docker Quickstart Terminal後自動啟動。