1. 程式人生 > >製作ubuntu完整版docker映象

製作ubuntu完整版docker映象

最近需要製作ubuntu14.04  server版完整docker映象,並啟動container(容器)用來編譯kernel等。

以下是步驟:

一:獲取ubuntu14.04 server版的完整根檔案系統(rootfs)。

      由於從ubuntu官網上下載是iso,不能直接作為docker映象。所以有一個方法來獲取它的完整跟檔案系統(rootfs)。

       1.在我的虛擬機器中安裝iso,進入系統後,進行一些軟體的安裝和系統設定,之後關機。

       2.通過用ubuntu dosktop(桌面版)對虛擬機器中已安裝好的ubuntu 14.04 server版進行重新安裝,當然不是真的安裝,

          在安裝過程中選擇 “try ubuntu...”,在進入ubuntu desktop中把之前安裝好的ubuntu 14.04 server的完整rootfs打包複製到宿主機中。

二: 在本地機安裝docker

       sudo apt-get install curl
       curl -sSL https://get.docker.com/ | sh

       sudo usermod -aG docker username

      ------解除安裝docker方法: sudo apt-get autoremove dokcer lxc-docker --purge

三:編寫Dockerfile,內容如下

[email protected]:~/docker/docker_build$
[email protected]:~/docker/docker_build$ cat Dockerfile
FROM scratch
COPY rootfs  /
RUN chmod u+s /usr/bin/sudo
RUN chmod u+s /usr/bin/passwd
RUN chmod u+s /bin/su
RUN chmod u+s /bin/ping
RUN chmod u+s /bin/mount
RUN chmod u+s /bin/umount
USER ubuntu
WORKDIR /home/ubuntu

四:製作docker 映象

[email protected]:~/docker/docker_build$ ls rootfs
bin   dev  home        lib    lib64       media  opt   root  sbin  sys  usr  vmlinuz
boot  etc  initrd.img  lib32  lost+found  mnt    proc  run   srv   tmp  var

[email protected]:~/docker/docker_build$ls

Dockerfile  rootfs
[email protected]:~/docker/docker_build$
[email protected]:~/docker/docker_build$ sudo docker build -t ubuntu/server:14.04  .

........

執行sudo docker build -t ubuntu/server:14.04  . 後便生成docekr映象。

五:使用docker映象,生成容器

docker run -ti -v /home/test:/home/ubuntu  ubuntu/server:14.04 /bin/bash

...