初めてのDocker インストールからサンプル実行まで
dockerで開発環境の構築をしようと思い、試してみました。
docker run
コマンドでDBやWebサーバーを立ち上げられるので、すぐに開発環境が構築できる。
概要
- DockerはVM立ち上げるよりも低コスト(時間,マシンリソース)で開発環境の構築ができる。
- ファイルシステムを含めたイメージの共有が可能。
- Sandbox内に構築するのでホストの環境を汚さない。
- コンテナ型
インストール
インストール
1.ダウンロードページからdmgをダウンロードし、インストールする
1.パスワードが求められたら入力
1.メニューバーにクジラアイコンが表示されたら、ターミナルを起動してdocker
コマンドが使用できるか確認する
$ docker version Client: Version: 1.12.0 API version: 1.24 Go version: go1.6.3 Git commit: 8eab29e Built: Thu Jul 28 21:15:28 2016 OS/Arch: darwin/amd64 Server: Version: 1.12.0 API version: 1.24 Go version: go1.6.3 Git commit: 8eab29e Built: Thu Jul 28 21:15:28 2016 OS/Arch: linux/amd64
Dockerエンジン、コンポーズ、マシーンのバージョンのチェック
$ docker --version Docker version 1.12.0, build 8eab29e $ docker-compose --version docker-compose version 1.8.0, build f3628c7 $ docker-machine --version docker-machine version 0.8.0, build b85aac1
実際のバージョンはこれと異なっても構わない。
サンプル実行
runしようとしているイメージがない場合は、Docker HUBからpullされる。
hello world
docker run hello-world
コンソールにHello from Docker!
と表示されればOK
Nginxを起動
docker run -d -p 80:80 --name webserver nginx
http://localhost
でNginxの初期ページが表示されていればOK. 80:80はlocalhostの80をコンテナの80にフォワードする設定.
webserverが起動した状態でdocker ps
を実行すると、webserverコンテナの詳細を確認できる。
他にもサンプルを見たい場合はこちら
設定
メニューバーのクジラアイコン→preferencesから色々設定できる
bash completion対応
以下のコマンドでbash completionに対応できる
cd /usr/local/etc/bash_completion.d ln -s /Applications/Docker.app/Contents/Resources/etc/docker.bash-completion ln -s /Applications/Docker.app/Contents/Resources/etc/docker-machine.bash-completion ln -s /Applications/Docker.app/Contents/Resources/etc/docker-compose.bash-completion
用語
- Docker HUB imageのリポジトリのようなもの