最近,dockerのlink機能を知りました。
hosts書き換えるのか・・・こわくね?と思ってやってみたこと。
docker run linkの指定をURLっぽくやってみる
[user@host]$ docker run -it --link=app:www.hogehoge.com centos /bin/bash
appコンテナは3000番でWebサービス(lodge)を提供しているコンテナです。
エラーになるかなぁとちょっと期待しましたが,普通に通過。
コンテナの中での作業
bash-4.1# ping www.hogehoge.com
PING www.hogehoge.com (172.17.0.66) 56(84) bytes of data.
64 bytes from www.hogehoge.com (172.17.0.66): icmp_seq=1 ttl=64 time=0.037 ms
64 bytes from www.hogehoge.com (172.17.0.66): icmp_seq=2 ttl=64 time=0.043 ms
bash-4.1# curl http://www.hogehoge.com:3000
<html><body>You are being <a href="http://www.hogehoge.com:3000/users/sign_in">redirected</a>.</body></html>
ちゃんとアクセスできてるっぽいですね。
まぁ,実害はないと思うんだけれど
将来的にDockerでDaaSを提供する,なんてコトが起き始めたときに,その起動ロジックに
- HTTPリクエストをリダイレクトする悪意あるイメージをコンテナ化するロジック
- コンテナの名前を取得するロジック
- よく使いそうなURL (google.co.jpとか)をlinkしてDesktopイメージをコンテナ化するロジック
なんてのが,謎のスクリプトとして提供されていて,よく分からずに使っちゃったらどうなんのかなぁ,,,なんて,ちょっとだけ思いました。(ドキドキ)
考えすぎ?