2017-10-03 9 views
0

ポート5432でポストグルにアクセスする必要のある3つのドッキング用コンテナがあります。それぞれ独立して実行すると-p 5432:5432を渡すことができますが、競合するため一度に2つ以上を実行できません。ドッキング用ポートが既に割り当て済み

ドッカーの作成でこの問題を回避したいと考えていますが、ymlでそのポートマッピングを行う方法についての指示が必要です。

version: '2' 

services: 
    foo: 
    image: mynamespace/foo 
    ports: 
     - "5432:5432" 
    bar: 
    image: mynamespace/bar 
    ports: 
     - "5432:5432" 
    baz: 
    image: mynamespace/baz 
    ports: 
     - "5432:5432" 

答えて

1

あなたは、すべてのコンテナ上のポートを開く必要はありません。

これは働いていないされて、私が持っているものです。データベースコンテナ用に開く必要があります。これは次のような結果になります。

version: '2' 

services: 
    foo: 
    image: mynamespace/foo 
    bar: 
    image: mynamespace/bar 
    baz: 
    image: mynamespace/baz 
+0

データベースはコンテナにはありません - それは私のMacで動作しています。私はpostgresqlクライアントと接続するときに環境変数としてpythonの 'docker.for.mac.localhost'ホスト名を使用しています。 – AlienWebguy

+0

このスレッドでは、 'localhost'を使用していないので、ポートマッピングを一切行う必要はないと私は思っています。 – AlienWebguy

+0

あなたの質問で少し混乱しています。しかし、私はそれが本当だと思う。あなたが非デフォルトのドッカーネットワーク設定を使いこなしているのでない限り。フーバー... :) –

関連する問題