使用 Docker 編譯 OpenWRT(Widora)


Docker 是一種新的被稱之為容器的虛擬機。本文將使用此工具,進行 OpenWRT 的編譯。

在 Docker 中下載 Ubuntu 14.04 的鏡像

使用以下命令可以十分方便的從遠程服務器上將 Ubuntu 14.04.5 版本的基本系統下載到本地:

docker pull ubuntu:14.04.5

安裝基本的編譯工具

# 首先啟動 Docker 中的 Ubuntu 14.04.5,這里以交互方式進行
# 選項 t:分配一個 tty
# 選項 i:以交互方式運行
docker run -ti ubuntu:14.04.5
# 可選操作:更改 ubuntu 的軟件源(基本系統中 apt 不支持 https 協議)
vi /etc/apt/sources.list
# 更新本地軟件源緩存,安裝必要的一些軟件
apt-get update
apt-get install git g++ make libncurses5-dev subversion libssl-dev gawk libxml-parser-perl unzip wget python xz-utils vim
# 縮減體積,刪除已經下載的安裝包
apt-get clean

保存剛剛做出的更改,另存為新的鏡像

執行以下命令:

docker ps -l

將會看到類似如下的輸出:

CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                     PORTS               NAMES
24fb6266cd37        ubuntu:14.04.5      "/bin/bash"         11 minutes ago      Exited (0) 5 seconds ago                       furious_noyce

使用以下命令,將 ID 號為"24fb6266cd37"的鏡像修改保存為新的鏡像,鏡像的名稱為 ubuntu/forwidora:

docker commit 24fb6266cd37 ubuntu/forwidora

使用以下命令可以查看本地所有的鏡像。

docker images

OpenWRT 編譯前的准備工作

從 github 上下載源代碼到 “/opt/embedded/MT7688/” 目錄中

git clone https://github.com/widora/openwrt_widora.git /opt/embedded//MT7688/openwrt_widora

啟動剛剛新建的容器,但是附加一個外部的掛載選項

# -v :將本地的目錄掛載到容器中作為數據卷
# 本實例中,將 host 的 /opt/embedded/MT7688 掛載到容器中的 /opt/MT7688 上
docker run -it -v /opt/embedded/MT7688:/opt/MT7688 ubuntu/forwidora

開始編譯 OpenWRT

剩下的過程,就可以完全參考 widora 項目 ReadMe 中相關的內容了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM