第24回 非Linux環境のDocker FreeBSDで実際に動かしてみると……:古賀政純の「攻めのITのためのDocker塾」(2/7 ページ)
非Linux環境におけるDockerの利用が注目されつつあります。今回はIoT時代の主役になるかもしれないBSDの環境で実際にDockerを動かし、その様子からどんなことが分かるのかについて解説します。
Docker on FreeBSDを試してみる
それではFreeBSD 10.3を例に、Docker on FreeBSDを稼働させてみます。まずはホストOSを稼働させる物理サーバを用意し、FreeBSDをインストールします。FreeBSDは、対応しているハードウェアリストが掲載されていますので、事前に情報を入手しておきます。
安定版の10.3のFreeBSDの入手先を掲載しておきます。
FreeBSD 10.3のISOイメージ入手先(※ISOファイルがダウンロードされます)
入手したISOイメージをDVDメディアなどに焼き付けるか、物理サーバに搭載された遠隔管理チップの仮想DVDドライブにマウント後、電源を投入してDVDブートします。FreeBSDのインストール手順は割愛しますが、ディスクパーティションはZFSを選択しておきます。DockerではZFSファイルシステムを利用しますので、事前にOS領域をZFSパーティションで構成しておくと後の設定作業を若干短縮できます。インストーラ内でNICにIPアドレス、ゲートウェイ、DNSを設定し、OS起動後すぐにインターネットにアクセスできるようにしてください。
FreeBSD 10.3をインストールできたら、OSを設定します。外部からSSH接続ができると作業は効率的ですので、SSHサービスを有効にしておきます。この作業はDockerの利用に必須ではありませんので、ローカルで作業する場合は不要です。
# vi /etc/rc.conf ... sshd_enable=YES ...
# vi /etc/ssh/sshd_config ... PermitRootLogin yes ... PasswordAuthentication yes ... # service sshd restart
次に、DNSの参照先が正しく設定されているかどうか確認します。Dockerのパッケージの入手に、インターネット接続が必要です。以下は、DNSサーバが172.16.1.1の場合の記述例です。
# cat /etc/resolv.conf ... nameserver 172.16.1.1 ... #
FreeBSDにおいて、ZFSのカーネルモジュール「zfs.ko」がロードされているかを確認します。
# kldstat |grep zfs 2 1 0xffffffff819bd000 2fc448 zfs.ko
上記のように「xfs.ko」が表示されていれば、ZFSが利用できます。もし表示されていない場合は、カーネルモジュールが組み込まれていませんので、以下のコマンドで組み込みます。
# kldload zfs
現時点でOSのディスクパーティションは、ZFSで構成されていますが、別途、Dockerを利用するためのZFSファイルシステムを作成します。本来なら、新たに物理的なHDDを追加し、そこにDocker用のファイルシステムを作成しますが、今回は簡易的な機能確認のため、OS領域に含まれる「/usr/docker」ディレクトリにZFSファイルシステムを作成して、そのファイル上でDockerを利用します。
# zfs create -o mountpoint=/usr/docker zroot/docker # sysrc zfs_enable=YES # grep zfs /etc/rc.conf zfs_enable="YES"
以上で、Dockerを利用するためのZFSファイルシステムが用意できました。
関連記事
- 第23回 非Linux環境のDocker、プレステも採用する“あのOS”で動かす意味
実はLinuxではないOS環境でもDockerは動きます。でもWindowsではありません。今回はプレステにも搭載され、これからのIoT時代に主役になるかもしれない、あのOSでDockerを動かす理由を紹介します。 - 第21回 Dockerで3Dゲームを動かす――構築編
前回はDocker環境で3Dゲームを稼働させるゴールや方法などについてご紹介しました。今回はその環境を構築していく上でのポイントや注意点を解説します。 - 第22回 Dockerで3Dゲームを動かす――稼働編
ここまでDocker環境で3Dゲームを稼働させるための準備や方法などをみてきました。それでは実際に自動車や飛行機、鉄道のシミュレータを稼働させてみます。 - 【古賀政純の「攻めのITのためのDocker塾」】バックナンバー
Copyright © ITmedia, Inc. All Rights Reserved.