そもそもDockerとは
- ホストOS上に仮想的に別のOSを動かすための仮想化ソフトウェア
- Docker Inc. が主導で開発しているOSS
- ハイパーバイザー型の仮想化サービスではなく、コンテナ型の仮想化サービス
- 環境の整備が簡単なため、CI(継続的インテグレーション)を実現するための重要なテクノロジとして注目されている。
Docker の特徴
- コンテナ型仮想化のため、OS部分を一部ホストOSと共有するため、VMごとにOSをインストールをする必要はない
- ハイパーバイザ型仮想化(VMWare ESXi)やホスト型仮想化(Linux KVM)は、VMごとにOSをインストールする必要がある
- コンテナはカーネル部分をベースのOSと一部共有するため、リソース使用量が非常に少ない
- Docker社が用意しているリポジトリ(DockerHub)に、構築済みのコンテナイメージがあるので、構築作業が不要
- コンテナの作成からプロダクトのインストール・設定するまでの手順を、“Dockerfile”というテキストファイルに定義できる(インフラのコード化)。このDockerfileを用いることで、Dockerが導入されている環境であればどこであっても、準備した環境を稼働させられるため携帯性が高くなる。
(一部引用:https://thinkit.co.jp/story/2014/12/02/5456)
Docker for Macをインストール
Docker for Macとは
- Mac OS X上でVirtual BoxなしでDockerを利用するためのツール
インストール
- ダウンロードはここから → https://docs.docker.com/docker-for-mac/
- インストールが完了してアプリを起動すると、ステータスバーにこのようなクジラが現れる
とりあえずwebサーバを立ててみる
- ターミナルを起動して以下のコマンドを叩きます。
- nginx(Webサーバ)をtestserverという名前で立てます
ターミナル
docker run -d -p 80:80 --name testserver nginx
- 無事処理が終わると、ローカルの上にコンテナにtestserverが立っているはずです。
- ブラウザを開いて http://localhost にアクセスすると、このような画面が現れるはず。
- 下記のコマンドを叩くとコンテナの状態がわかります。
ターミナル
docker ps -a