1. 程式人生 > >win7下使用docker編譯Nodemcu韌體

win7下使用docker編譯Nodemcu韌體

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後自動啟動。