boot2docker の ISO の更新は専用コマンドで簡単にできるとわかったので、 わざと古いバージョンに戻したりして動作確認してみました。

対象バージョン

  • Mac OS X 10.9.4
  • VirtualBox 4.3.14
  • docker 1.1.2
  • boot2docker 1.1.2

更新準備

boot2docker delete して消してから ISO を更新して boot2docker init で作り直すという説明もありますが、 再起動しても残る部分は ISO とは別の仮想ディスクの /dev/sda1 に保存されていて、 そのまま使い回せることがほとんどなので、 作り直さなくても更新できます。

大きくバージョンをあげるとか、クリーンな環境でやり直したいと言うときは消して作り直せば良いと思います。

参考: boot2dockerのデータ永続化まとめ - Qiita

更新方法

VM を停止して更新

boot2docker upgrade で VM が起動していれば停止して更新して起動し直してくれます。

ISO だけ更新

boot2docker download で ISO だけ無条件にダウンロードしてくれます。

boot2docker help

以上の説明は boot2docker help にちゃんと書いてある通りです。

% boot2docker help
Usage: boot2docker [<options>] <command> [<args>]

boot2docker management utility.

Commands:
    init                    Create a new boot2docker VM.
    up|start|boot           Start VM from any states.
    ssh [ssh-command]       Login to VM via SSH.
    save|suspend            Suspend VM and save state to disk.
    down|stop|halt          Gracefully shutdown the VM.
    restart                 Gracefully reboot the VM.
    poweroff                Forcefully power off the VM (might corrupt disk image).
    reset                   Forcefully power cycle the VM (might corrupt disk image).
    delete|destroy          Delete boot2docker VM and its disk image.
    config|cfg              Show selected profile file settings.
    info                    Display detailed information of VM.
    ip                      Display the IP address of the VM's Host-only network.
    status                  Display current state of VM.
    download                Download boot2docker ISO image.
    upgrade                 Upgrade the boot2docker ISO image (if vm is running it will be stopped and started).
    version                 Display version information.

Options:
      --basevmdk="": Path to VMDK to use as base for persistent partition
      --dhcp=true: enable VirtualBox host-only network DHCP.
      --dhcpip=192.168.59.99: VirtualBox host-only network DHCP server address.
  -s, --disksize=20000: boot2docker disk image size (in MB).
      --dockerport=2375: host Docker port (forward to port 2375 in VM).
      --hostip=192.168.59.3: VirtualBox host-only network IP address.
      --iso="/Users/knishiyama/.boot2docker/boot2docker.iso": path to boot2docker ISO image.
      --lowerip=192.168.59.103: VirtualBox host-only network DHCP lower bound.
  -m, --memory=2048: virtual machine memory size (in MB).
      --netmask=ffffff00: VirtualBox host-only network mask.
      --serial=false: try serial console to get IP address (experimental)
      --serialfile="": path to the serial socket/pipe.
      --ssh="ssh": path to SSH client utility.
      --ssh-keygen="ssh-keygen": path to ssh-keygen utility.
      --sshkey="/Users/knishiyama/.ssh/id_boot2docker": path to SSH key to use.
      --sshport=2022: host SSH port (forward to port 22 in VM).
      --upperip=192.168.59.254: VirtualBox host-only network DHCP upper bound.
      --vbm="VBoxManage": path to VirtualBox management utility.
  -v, --verbose=false: display verbose command invocations.
      --vm="boot2docker-vm": virtual machine name.
Disqus Comments

Kazuhiro NISHIYAMA

Ruby のコミッターとかやってます。 フルスタックエンジニア(って何?)かもしれません。 About znzに主なアカウントをまとめました。

znz znz


Published