通過Dockerfile創建鏡像時,一般都是基於 Docker Hub 提供的官方鏡像。以下分別介紹在ubuntu16和centos7 兩個系統上創建個人私有基礎鏡像的方法。
一、ubuntu16創建docker基礎鏡像
1、安裝Bootstrap工具debootstrap
$ sudo apt-get insall debootstrap -y
2、使用debootstrap下載ubuntuxenial(16.04)二進制文件
$ sudo debootstrap xenial xenial
3、使用docker import命令創建基礎鏡像
1)導入xenial目錄下的鏡像
# tar -C trust -c . 命令用於將xenial目錄下的內容壓縮為一個文件,並輸出至stdout。通過|(管道)可以將輸出內容傳遞給docker import命令。 $ sudo tar -C xenial -c . | sudo docker import - xenial
2)導入網絡上的文件
$ sudo docker import http://test.com/trust.tgz xenial
4、輸出鏡像
$ docker images
5、運行鏡像xenial
$ docker run -i -t --name hello xenial /bin/bash
二、centos7創建Docker基礎鏡像
1、安裝febootstrap
1) 下載febootstrap
# 由於centos7不支持直接安裝:yum install febootstrap,故提供以下下載鏈接 下載 febootstrap 密碼:vrck
2)安裝febootstrap
# 安裝順序如下: $ sudo rpm -ivh fakeroot-libs-1.12.2-22.2.el6.x86_64.rpm $ sudo rpm -ivh fakechroot-libs-2.9-24.5.el6_1.1.x86_64.rpm $ sudo rpm -ivh fakeroot-1.12.2-22.2.el6.x86_64.rpm $ sudo rpm -ivh febootstrap-supermin-helper-3.21-4.el6.x86_64.rpm $ sudo rpm -ivh fakechroot-2.9-24.5.el6_1.1.x86_64.rpm $ sudo rpm -ivh febootstrap-3.21-4.el6.x86_64.rpm
2、使用febootstrap工具下載centos7二進制文件
$ sudo febootstrap -u http://mirrors.163.com/centos/7/updates/x86_64/ centos7 centos7 http://mirrors.163.com/centos/7/os/x86_64/
3、使用docker import 創建基礎鏡像
$ sudo tar -C centos7 -c . | sudo docker import - centos7
4、輸出鏡像
$ docker images
5、運行鏡像
$ docker rum -i -t --name hello centos7 /bin/bash
PS: 據說centos6的febootstrap工具在centos7已經改成了supermin,有機會不妨試試。