成都网站建设设计

将想法与焦点和您一起共享

如何自制docker镜像

这篇文章给大家分享的是有关如何自制docker镜像的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

为道里等地区用户提供了全套网页设计制作服务,及道里网站建设行业解决方案。主营业务为网站设计制作、网站设计、道里网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

1  利用已有的ISO镜像制作基本镜像,以ubuntu14.04为例


mount     -o loop ubuntu-14.04-server-amd64.iso     /media/cdrom
tar     -C     /media/cdrom     -c . | docker     import     - guol     /ubuntu14

      这样很块就可以制作好一个基础镜像,但是这个镜像制作出来很大,里面包含了一些我们不需要的软件,如果你想裁剪的话,可以使用chroot命令进入基础镜像里面,做一些软件包的删减。  

2  debian/ubuntu系列有个工具debootstrap,可以用来制作较小的镜像,但是也有300M,可以修改构建脚本,进行裁剪,以ubuntu14.04为例


debootstrap --variant=buildd --arch=amd64 trusty trusty http:     //mirrors     .163.com     /ubuntu/
tar     -C trusty -c . | docker     import     - trusty

        注意:debootstrap的使用方法  
                debootstrap [OPTION...] SUITE TARGET [MIRROR [SCRIPT]]  
                SUITE  是一些linux发行版的名称,默认在/usr/share/debootstrap/scripts/目录下有的linux发行版构建脚本才能使用,默认debootstrap就是根据这些脚本做构建的  
                MIRROR   一般默认使用官方的源构建,这样比较慢,一般都换成国内源,这个源默认是在/usr/share/debootstrap/scripts/的构建脚本中设置的,直接加在命令行会覆盖里面的设置  
                SCRIPT  debootstrap根据什么脚本做镜像构建,默认使用/usr/share/debootstrap/scripts/目录下的,你也可以自己编写。

3  使用官方的构建脚本,在github上官方源码里面就有。


git clone https:     //github     .com     /dotcloud/docker     .git
cd     docker     /contrib

         来看看下载的源码里都有什么,进入contrib目录  

如何自制docker镜像

       可以看到很多镜像构建脚本,根据你的操作系统选择脚本,我使用的是mkimage-debootstrap.sh,不过有个问题就是采用自带脚本安装时该脚本只支持debian6 ubuntu12,因为脚本中只指定了这两个发行版,不过可以自己手动修改脚本,以支持更多的发行版。该脚本会在/tmp目录下创建一个临时目录来构建镜像,构建成功后自动import,然后自动删除该构建目录,这个制作出来的镜像比较小180M左右。


.     /mkimage-debootstrap     .sh ubuntu12 precise http:     //mirrors     .sohu.com     /ubuntu/

如何自制docker镜像

      可以看到自动制作镜像,并且自动提交。

5-22

        docker更新真是快啊,今天git下载了最新的源码,发现mkimage-debootstrap.sh已经支持ubuntu14.04了,不过该脚本以后要放弃使用了,官方建议使用同一目录下的mkimage.sh脚本来构建镜像。

感谢各位的阅读!关于“如何自制docker镜像”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!


标题名称:如何自制docker镜像
文章分享:http://chengdu.cdxwcx.cn/article/jdhopd.html