Skip to content

Instantly share code, notes, and snippets.

@mapk0y
Last active January 4, 2016 00:49
Show Gist options
  • Save mapk0y/8544172 to your computer and use it in GitHub Desktop.
Save mapk0y/8544172 to your computer and use it in GitHub Desktop.

docker の expose とlink

  • expose + link で link オプションをつけて起動したクライアントで環境変数で拾える
  • 以下のテストでは mysql が動くイメージをサーバ/クライアント両方で利用しているが、特に意味はない

start server

# docker run -d -expose 3306 -name mysql-server mysql
10eaabc4b538f9e08a190ffc0545c2b76be69f7723acc3528d7ebec120fe51a2
# docker ps -a
CONTAINER ID        IMAGE               COMMAND                CREATED             STATUS              PORTS               NAMES
10eaabc4b538        mysql:latest        /usr/bin/mysqld_safe   19 seconds ago      Up 18 seconds       3306/tcp            mysql-server        

start client

# docker run -t -i -link mysql-server:mysql mysql /bin/bash
root@6c8b2f24e559:/# env
HOSTNAME=6c8b2f24e559
TERM=xterm
MYSQL_PORT_3306_TCP_PORT=3306
MYSQL_PORT_3306_TCP=tcp://172.17.0.31:3306
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
PWD=/
SHLVL=1
HOME=/
MYSQL_NAME=/cranky_bohr/mysql
MYSQL_PORT_3306_TCP_PROTO=tcp
MYSQL_PORT_3306_TCP_ADDR=172.17.0.31
MYSQL_PORT=tcp://172.17.0.31:3306
container=lxc
_=/usr/bin/env

expose なしの場合

  • env で表示されない
# docker run -d -name mysql-server mysql
490144a7e73a039334f5a35d1a384cb2e50d25cbda7e1823b04257154d6dfc2d
# docker ps -a
CONTAINER ID        IMAGE               COMMAND                CREATED             STATUS              PORTS               NAMES
490144a7e73a        mysql:latest        /usr/bin/mysqld_safe   7 seconds ago       Up 6 seconds                            mysql-server        
# docker run -t -i -link mysql-server:mysql mysql /bin/bash
root@975e4c9a6d55:/# env
HOSTNAME=975e4c9a6d55
TERM=xterm
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
PWD=/
SHLVL=1
HOME=/
MYSQL_NAME=/determined_heisenberg/mysql
container=lxc
_=/usr/bin/env
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment