自制docker basic image

docker的安装和入门见官网教程:http://docs.docker.com/

下面是自制docker basic image的步骤,以ubuntu为例。

1. 安装debootstrap

apt-get install debootstrap

2. 创建基本系统

debootstrap --arch=i386 trusty /home/thm/docker/min_os/ubuntu_i386/ http://archive.ubuntu.com/ubuntu

arch后跟的是硬件架构名称,可以是:amd64, armel, armhf, i386, ia64, mips, mipsel, powerpc, s390, s390x, sparc等。

"/home/thm/docker/min_os/ubuntu_i386/"是我存放ubuntu文件系统的地方,此目录可以根据实际情况修改。

3. 创建文件系统镜像

cd /home/thm/docker/min_os/ubuntu_i386/

tar -c . | docker import - tanghuimin0713/ubuntu_i386

完成之后通过docker images命令可以看到刚才创建的image文件

root@ubuntu:/home/thm/docker/min_os/ubuntu_i386# docker images
REPOSITORY                   TAG                 IMAGE ID            CREATED              VIRTUAL SIZE
tanghuimin0713/ubuntu_i386   latest              ee57f53fe012        About a minute ago   216.8 MB
ubuntu                       14.04.1             c4ff7513909d        8 days ago           225.4 MB
ubuntu                       latest              c4ff7513909d        8 days ago           225.4 MB
ubuntu                       14.04               c4ff7513909d        8 days ago           225.4 MB
ubuntu                       trusty              c4ff7513909d        8 days ago           225.4 MB

4. 修改basic image的tag

docker tag ee57f53fe012 tanghuimin0713/ubuntu_i386:14.04

ee57f53fe012是image id,tanghuimin0713/ubuntu_i386:14.04是respository名:tag名

root@ubuntu:/home/thm/docker/min_os/ubuntu_i386# docker tag ee57f53fe012 tanghuimin0713/ubuntu_i386:14.04
root@ubuntu:/home/thm/docker/min_os/ubuntu_i386# 
root@ubuntu:/home/thm/docker/min_os/ubuntu_i386# docker images
REPOSITORY                   TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
tanghuimin0713/ubuntu_i386   latest              ee57f53fe012        6 minutes ago       216.8 MB
tanghuimin0713/ubuntu_i386   14.04               ee57f53fe012        6 minutes ago       216.8 MB
ubuntu                       latest              c4ff7513909d        8 days ago          225.4 MB
ubuntu                       14.04               c4ff7513909d        8 days ago          225.4 MB
ubuntu                       14.04.1             c4ff7513909d        8 days ago          225.4 MB
ubuntu                       trusty              c4ff7513909d        8 days ago          225.4 MB

5. 将新建的basic image上传到docker hub中共享

docker push tanghuimin0713/ubuntu_i386

root@ubuntu:/home/thm/docker/min_os/ubuntu_i386# docker push tanghuimin0713/ubuntu_i386
The push refers to a repository [tanghuimin0713/ubuntu_i386] (len: 2)
Sending image list
Pushing repository tanghuimin0713/ubuntu_i386 (2 tags)
ee57f53fe012: Pushing [======================================>            ] 176.8 MB/232.1 MB 4m0s

 

备注:要想把自制的image文件上传到docker hub中与全世界的开发者共享需要先在docker hub中注册一个帐号,上传命令是docker push 用户名/image名。下图是我在docker hub的账户界面:

 

posted @ 2014-08-21 10:51  tanghuimin0713  阅读(1319)  评论(0编辑  收藏  举报