LoginSignup
5
5

More than 5 years have passed since last update.

kitchen-dockerでコンテナ間を接続する

Last updated at Posted at 2014-12-04

アドカレ登録用にQiitaアカウントを作ったので、せっかくなので初のQiita投稿。

master-slave構成のDBのテストで、取り急ぎ対応したかった所ができたのでメモ。

前置き

かなりダーティハックっぽいので、kitchen-dockerの今後のアップデートで使えなくなったりする可能性があるので注意してください。

kitchen-docker本体にコンテナ間接続対応で投げたプルリクエストが採用されました。
instance_name及びlinksのオプションを指定することで接続ができます。

https://github.com/portertech/kitchen-docker#instance_name
https://github.com/portertech/kitchen-docker#links

なお、Dockerコンテナ同士の接続についてはコチラを参考にしました。

方法

まず、kitchen-dockerには、ホストからのポートフォワード用に、コンテナごとに指定できるforwardというdriver_configが用意されています(以下参照)

これに、コンテナ同士の接続オプションを突っ込みます。

以下はのような感じです。

.kitchen.yml

---
driver:
  name: docker

driver_config:
  use_sudo: false

platforms:
  - name: centos-6.5

suites:
  - name: master
    driver_config:
      forward:
        - 13306:3306 --name master
    run_list:
      - recipe[hoge::master]
    attributes:

  - name: slave
    driver_config:
      forward:
        - 23306:3306 --name slave --link master:master
    run_lis
      - recipe[hoge::slave]
    attributes:
      hoge:
        master_host: master

busser:
  sudo: true

これで、とりあえず、master-slave構成とかクラスタ構成のテストが捗ります。

5
5
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
5
5