LoginSignup
3
4

More than 5 years have passed since last update.

MacOS側でdockerを使う(CoreOS,Vagrant使用)

Last updated at Posted at 2015-01-23

本記事では

  • VagrantでCoreOSを起動し
  • CoreOSのdockerを
  • brewでインストールしたMacOS側のdockerコマンドで操作する

までの手順を説明する。

CoreOSをインストール、起動する

CoreOSはVagrantからの起動が可能なのでそれを使う。
Vagrantfileは下記のgitで取得できる。

shell.sh
git clone https://github.com/coreos/coreos-vagrant.git
cd coreos-vagrant

デフォルトだとCoreOS側のIPは172.17.8.100から取られていく。
下記のように自分で変えても構わない。

Vagrantfile
      #ip = "172.17.8.#{i+100}"
      ip = "172.17.8.123"  

vagrant upでCoreOSのイメージを取得、起動する。

shell
vagrant up
vagrant ssh

CoreOSのdockerの設定

CoreOSは起動するとデフォルトではUnix socketでの接続のみを受け付ける設
定になっている。Customizing docker
を参照してdockerをTCP socketで待ち受けるように修正する。

systemdの為にdocker-tcp.socketを/etc/systemd/systemに作成し、

/etc/systemd/system/docker-tcp.socket
[Unit]
Description=Docker Socket for the API

[Socket]
ListenStream=2375
BindIPv6Only=both
Service=docker.service

[Install]
WantedBy=sockets.target

それをsystemctlで有効にする。

shell
sudo systemctl enable docker-tcp.socket
sudo systemctl stop docker
sudo systemctl start docker-tcp.socket
sudo systemctl start docker

CoreOS側で下記のように実行してエラーが出ないことを確認するとよい。

core@core-01 ~ $ docker -H tcp://127.0.0.1:2375 ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES

MacOS側でのdockerコマンドのインストール

ここではhomebrewを使ってインストールする。

brew install docker

インストールしたら'-H'オプションを使ってCoreOSのdockerに接続できる。

docker -H tcp://172.17.8.123:2375 ps

環境変数DOCKER_HOSTにIPを指定することで'-H'オプションを使わなくても接
続が可能である。

export DOCKER_HOST=tcp://172.17.8.123:2375
3
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
4