【玩轉開源】制作Docker鏡像


做嵌入式方向經常會遇到的一個問題,就是編譯環境安裝,如果換電腦,再重新安裝環境是一個比較費時的事情,這個時候可以自己制作一個Docker鏡像,然后把編譯環境在Docker鏡像里面配置好,以后同步環境就非常方便了,接下來我們就一起來看一下如何制作一個Docker鏡像。

1. 制作前准備

登錄Docker Hub,https://cloud.docker.com/,申請一個賬號;

申請好后,然后創建一個自己的Repository,注意Repository的命名為小寫。

接下來我們就一起來制作一個Docker鏡像。

2.制作一個docker鏡像

1)首先我們pull一個docker官方提供的Ubuntu鏡像:

      docker pull ubuntu:16.04  

2)查看鏡像是否已經下載:

      docker images   

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)開始pushdocker push TAGNAME

docker push jackzengcn/bpiboardbuild:latest

 到此,我們自己定制的Docker鏡像就已經完成了。


免責聲明!

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



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