やりたいこと
方法
<変数>記述は環境に合わせて読み替え
-
イメージ1のDockerfileにEXPOSE記述を記述し構築する
Dickerfile
EXPOSE :<サービスポート番号>
```shell-session:ホスト
docker build -t <イメージ1の名前> <ソースパス>
-
コンテナ1を起動する
ホスト
docker run -name <コンテナ1の名前> -d <イメージ1の名前>
※イメージ1をEXPOSE記述なしで構築済みの場合「--expose <サービスポート番号>」を指定してコンテナ1を起動することで同様のコンテナを作成可能
<br>
3. コンテナ1へのリンクオプションを指定して、コンテナ2を起動する
```shell-session:ホスト
docker run -name <コンテナ2の名前> -d --link <コンテナ1の名前>:<リンク情報用プレフィックス>
- コンテナ2の中でリンク情報を表示する
-
コンテナ1のアドレスを表示する
コンテナ2
echo ${<リンク情報用プレフィックス>_PORT_<サービスポート番号>_ADDR}"
* コンテナ1のサービスポート番号を表示する
```shell-session:コンテナ2
echo ${<リンク情報用プレフィックス>_PORT_<サービスポート番号>_PORT}"
-
telnetで接続してみる
コンテナ2
telnet <コンテナ1のアドレス> <コンテナ1のサービスポート番号>
Trying ***....
Connected to ***.
Escape character is '^]'.
yay!
