作嵌入式方向常常會遇到的一個問題,就是編譯環境安裝,若是換電腦,再從新安裝環境是一個比較費時的事情,這個時候能夠本身製做一個Docker鏡像,而後把編譯環境在Docker鏡像裏面配置好,之後同步環境就很是方便了,接下來咱們就一塊兒來看一下如何製做一個Docker鏡像。html
1. 製做前準備linux
登陸Docker Hub,https://cloud.docker.com/,申請一個帳號;git
申請好後,而後建立一個本身的Repository,注意Repository的命名爲小寫。docker
接下來咱們就一塊兒來製做一個Docker鏡像。ubuntu
2.製做一個docker鏡像vim
1)首先咱們pull一個docker官方提供的Ubuntu鏡像:工具
docker pull ubuntu:16.04 ui
2)查看鏡像是否已經下載:spa
docker images
3d
3)運行鏡像:
docker run -it --rm ubuntu:16.04
這個時候就會進入到Docker container(容器)裏面,而後執行make,gcc發現沒有相應的命令。
咱們經過exit退出Docker container(容器),而後製做一個帶編譯工具的鏡像。
4)接下來咱們經過Dockerfile來定製咱們本身的鏡像:
建立Dockerfile文件,在文件裏面添加安裝命令以下:
vim Dockerfile
# ubuntu 16.04 with compile env FROM ubuntu:16.04 MAINTAINER jackzengcn<jackzeng@banana-pi.com> RUN apt-get update && apt-get upgrade && apt-get install vim -y RUN apt-get install -y net-tools && apt-get install -y iputils-ping RUN apt-get install -y gcc-arm-linux-gnueabi RUN apt-get install -y gcc-arm-linux-gnueabihf RUN apt-get install -y gcc-aarch64-linux-gnu RUN apt-get install -y device-tree-compiler RUN apt-get install -y git && apt-get install -y make && apt-get install -y gcc RUN apt-get install -y bc && apt-get install -y cpio
在這裏,我將會安裝一些編譯工具到即將要製做的Docker鏡像中。
FROM 表示以剛剛下載的Docker鏡像 Ubuntu:16.04爲基礎製做;
MAINTAINER 表示維護者信息;
RUN 表示要執行的命令。
5)接下來咱們編譯本身的Docker鏡像:
docker build -t TAGNAME . (注意TAGNAME後面有個「.」,「.」表示Dockerfile的路徑;另外TAGNAME要與docker hub的Repository名字保持一致)
我這裏的Repo名稱爲:jackzengcn/bpiboardbuild
因此個人build命令爲:docker build -t jackzengcn/bpiboardbuild .
6)build完成後,就能夠校驗剛纔build的鏡像:
docker run -it --rm TAGNAME
此次登陸後,就會發現這些命令已經安裝好了。
7)校驗成功後,就能夠準備push鏡像到遠端Docker倉庫,登陸docker:
docker login
8)開始push,docker push TAGNAME
docker push jackzengcn/bpiboardbuild:latest
到此,咱們本身定製的Docker鏡像就已經完成了。
原文出處:https://www.cnblogs.com/topbin/p/10314451.html