BLOG.tass.io

前の記事でとりあえずvagrantで使えるboxを作ったけど、dockerのイメージも作っとこのメモ。

2016-05-14

どうせなので、さきほどvagrant upしたCentOS 6.2上で、CentOS 6.2のminimal docker imageを作成することにする。

CentOS 6.2上で、CentOS 6.2のイメージ作成

1. 準備

sudo yum install -y febootstrap xz

2. 作成

febootstrap --groupinstall=Base \
        --install=wget \
        --install=patch \
        centos \
        centos62 \
        http://mirror.symnds.com/distributions/CentOS-vault/6.2/os/x86_64/ \
        --updates=http://mirror.symnds.com/distributions/CentOS-vault/6.2/updates/x86_64/

3. おまじない

touch centos62/etc/resolv.conf

4. アーカイブにまとめる

tar --numeric-owner -Jcpf centos-62.tar.xz -C centos62 .

これで、centos-62.tar.xz が出来上がる。

Dockerイメージとして取り込んで、Docker Hubへ登録

1. docker imageとして取り込み

$ cat centos-62.tar.xz | docker import - local/centos:6.2
301a9126082fea55103c07267b4ef8f1cce6531b457341a7d8518b8398bfa162

$ docker images
REPOSITORY                     TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
local/centos                   6.2                 301a9126082f        13 seconds ago      249.9 MB

はいったね

2. Docker Hubに登録

コンテナとしての起動を確認

$ docker run local/centos:6.2 echo 'hello world'

動いとる

$ docker ps -a
CONTAINER ID        IMAGE                                                              COMMAND                  CREATED             STATUS                      PORTS               NAMES
a47c874c34e6        local/centos:6.2                                                   "echo 'hello world'"     16 minutes ago      Exited (0) 16 minutes ago                       pensive_mestorf

ではコミットして、Docker Hubへ登録

$ docker commit --author="Michael Kuroneko <hardwarehacking>" --message="CentOS 6.2 x86_64 minimal" a47c874c34e6 kuronekomichael/centos:6.2
74132be153e7bca71237171f174ca0d7f05711b8183670abf0ea65219afca330
$ docker push kuronekomichael/centos:6.2
The push refers to a repository [docker.io/kuronekomichael/centos] (len: 1)
74132be153e7: Image successfully pushed
301a9126082f: Image successfully pushed
6.2: digest: sha256:f1061c8be999228a7576540301fc5ae50f26bc484d8208431ca04030b5ab2aa4 size: 2549

これで登録できました


Michael Kuroneko

Written by Michael Kuroneko. Follow me on twitter, github.