制作docker镜像

1. 制作前准备
登录Docker Hub,https://cloud.docker.com/,申请一个账号;
申请好后,然后创建一个自己的Repository,注意Repository的命名为小写。
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
[Python] 纯文本查看 复制代码
?
01
02
03
04
05
06
07
08
09
10
11
# ubuntu 16.04 with compile env
FROM ubuntu:16.04
MAINTAINER jackzengcn<[email][email protected]-pi.com[/email]>
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镜像就已经完成了。