ebiです。気付けば社会人2年目になりました。手が空いたので玄人がすなる Docker といふものを我もしてみむとするなり。
Docker環境を整えてみた
情報収集
RPGなら酒場。現代社会ならGoogleです。
僕がWindowsユーザなこともあって、安直に「windows docker」と魔法を唱えてみました。
どうやら割と最近、Docker for Windowsなるものがリリースされていたようです。
さっそく公式サイトからダウンロードしてインストールを試みました。
なんかダイアログが出てきた。
HyperV is not available on Home editions. Please use Docker Toolbox
ん?どういうことだ??
……Windows10のHomeエディションは対象外らしいです(公式FAQ)
-完-
……という夢を見たんだ
気を取り直してToolboxをインストールします
公式サイトはこちらです。
Fullでインストールしちゃいます。
全部チェックします。
インストールが終わると、「Docker Quickstart Terminal」って言うファイル入りのフォルダが出てきたはずなので、それを実行する。
ひたすら許可しまくる。
最終的に端末でくじら君が描写されたら完了です。
ここまでの話は、Windowsの代わりに Docker を動かすホストを Docker Machine を使って、VirtualBox上に default と言う名前で作ったよ。ってところです。
スタート時の環境は人それぞれだと思うので、あまり解説は入れてませんが悪しからず。
ついでに
いつも開発環境として使っている、VirtualBox で動かしている Ubuntu 側も Docker の環境を整えておこうとしたら、ネットワーク設定が消し飛んで使えなくなってました。 VirtualBox を再インストールしたら動いたので無問題です。
無事 Ubuntu を起動したら、公式サイトに載ってるコマンドを一通り連打してたら、使えるようになってました。意味はあまり分かってません。
Hello Docker
実行編
Docker にも Hello World があるようです。やってみましょう。
Windows の代わりに Docker を動かしてくれる Docker ホストが用意できたので、コマンドプロンプトを起動すると Windows でも無事 docker のコマンドが打てるようになるのです。先に 動いているDockerホスト の情報を見ます。
docker-machine ls
default という名前で Docker ホストくんが動いていることが確認できます。
停止する時は
docker-machine stop default
起動する時は
docker-machine start default
です。
いよいよ初 docker run をしてみます。ドキドキ……。
docker run hello-world
Post http://127.0.0.1:2375/v1.20/containers/create: dial tcp 127.0.0.1:2375: ConnectEx tcp: No connection could be made because the target machine actively refused it..
(゚Д゚)ハァ?
どうやら環境変数周りのお話のようです。
docker-machine env default
を実行します。
REM Run this command to configure your shell:
REM @FOR /f "tokens=*" %i IN ('docker-machine env default') DO @%i
こんな感じで出てくるメッセージの最後の行のコマンドをコピペして実行してから、再度リベンジすると動きました。やったー。
一旦まとめ
公式で用意されている hello-world イメージ(コンテナの元)を利用して、 hello-world 用のメッセージが出てくるコンテナを起動するところまでやってみました。
動き続けている Docker コンテナは
docker ps
で一覧を見ることができるのですが、実行しても hello-world の名前は出てきません。
docker ps -a
をすると、コンテナのリストが出てきます。 docker run はイメージからコンテナを作る作業なので、docker run を繰り返すと、気付けばここにゴミが溜まってきちゃいます。注意してください。
オプションを付けて、色々な起動の仕方をするようですが、そのへんは追々慣れるもんなんですかね。
ちなみに
docker --help
や
docker run --help
でヘルプを表示できるのです。
長くなりそうなので、実用的な Docker の使い方を試してみるお話は、次回の記事に回そうと思います。
関連記事(Docker)
- [翻訳] Dockerについてよくある勘違い(人気記事)
- 【ゆるふわDocker部】気軽にDockerを使うのもいいじゃない(人気記事)
- 【ゆるふわDocker部】任意バージョンのPostgreSQLコマンドを実行して外部DBに接続する(人気記事)
- 今の環境がDocker Containerとして動作しているかどうかをコマンドで調べる
- docker pullしたらまずvimを入れる人用のイメージ