2017-08-28 7 views
0

Kubernetesには、コンテナがそれらの間でポートを共有できるポッドの概念があります。たとえば、同じポッド内では、コンテナはlocalhost:80を介して別のコンテナ(ポート80で待機中)にアクセスできます。dockerを使ってKubernetesコンテナネットワーク環境を複製することは可能ですか?

ただし、ドッカーの作成では、localhostはコンテナ自体を指します。

ドッキングステーションにkubernetesネットワーク設定を実装する方法はありますか?

私は、イメージを変更することなく、ドッカーの構成設定で再利用したいkubernetes設定を持っています。

答えて

0

私はドッカー作成の設定内のコンテナconfigsのそれぞれにnetwork_mode: hostを追加することによって動作させているようです。

-1

Docker Linksメカニズムを使用すると、コンテナを結線することができ、宣言されたポートはlocalhostを介して利用できるようになります。

+0

私はこれが非難されると思います。 –

+0

右ですが、リンクに続いて、リンクの言及でこれを行う方法の例があります。 – webdizz

0

はいできます。あなたは、サービスを実行して、だから、network_mode

    • 可能な値以下のホスト
    • サービスすることができますがnetwork_mode: service:<nameofservice>

      version: '3' 
      
      services: 
          mainnetwork: 
          image: alpine 
          command: tail -f /dev/null 
          mysql: 
          image: mysql 
          network_mode: service:mainnetwork 
          environment: 
           - "MYSQL_ROOT_PASSWORD=root" 
          mysqltest: 
          image: mysql 
          command: bash -c "sleep 10 && mysql -uroot -proot -h 127.0.0.1 -e 'CREATE DATABASE tarun;'" 
          network_mode: service:mainnetwork 
      

      編集-1

      を使用することができます。同じで(サービス名をファイルを作成する)

    • コンテナ:(外部コンテナの名前またはID ady running)

    この場合、私はservice:mainnetworkを使用しています。したがって、メインネットワークが稼働している必要があります。

    また、これはDocker 17.06 ceでテストされています。だから私はあなたが新しいバージョンを使用していると仮定します

  • +0

    答えをよろしくお願いします。おそらく、この機能が何と呼ばれるかについての追加情報を追加できますか?また、ドキュメントへの関連リンクも便利です。 –

    +0

    これは機能しますか?私の設定で関連する 'network_mode'の値を使用すると'エラー:nginxのためにサービスnginxを起動できません:実行していないコンテナのネットワークに参加できません: 'が表示されます。 –

    +0

    @ChrisStryczynski、編集を確認してください –

    関連する問題