枯れた技術の水平思考

世の中わからないことだらけだ.少し確かなことは検証をしたことだけ

OSXでdocker-machine使ってみた

そんなこんなでひさしぶりに技術系の記事でも書きます。

前々回の予告なんてなかったんだ、ということで書きたいものを書きます。

ちょっと今週はいろいろあってほとんど家に張り付いている状況なので、業務でも毎日使っているdocker-machineについて記事に起こしてみました。

logo

Docker-machine Logo : Apache License

OSXでのDockerの考え方

基本的にLinuxであれば、dockerはホストOSの上にDocker Engineが走るのですが、

OSXにおいては悲しいことにそうはなりません。

そこでどうしているのかというと、boot2docker然りVMを立ててそこへdockerが接続することで擬似的にホスト(OSX)で動いているように振る舞います。

ざっくりこんなイメージを想像ください。

左がLinux上、右がOSX上

AA_144153453616487800 AA_144153453617021900 docker -H でVMに繋いでいるようなもの(若干の違いはあるけども

※間違っていたらご指摘ください。

設定方法

ひつようなもの

  • Docker Toolbox
  • Linuxコミュニティーの人に「えー、VMでdocker?」と言われてもめげない心

Docker Toolboxで基本的にDockerを使うにあたって必要なものはひと通り入ります。

二行目の 「--engine-insecure-registry oreore.repo.bootjp.me:5000 \」は boot2dockerでいう「EXTRA_ARGS="--insecure-registry oreore.repo.bootjp.me:5000"」と同じで オレオレリポジトリとかやっていて証明書の検証などをしない場合などに使っています。

※オススメはできません。せめてオレオレ証明書をいれるなどしてください。

あとは適当に

ちなみにさらっとgistにかいてありますが、VM上で動かしているので仮に80番ポートでWebサーバ等走らせてもlocalhostではアクセスできません。

docker-machine ip [VM Name]

等としてください