1つのホスト上で多くの異なるwebapp-containerを実行する方法が見つかりませんでした。たとえば、私は2つのコンテナを持っています。最初は自分のクラウドでApacheを実行し、2番目にはWordpressのブログを実行します。どちらもポート80で動かなければなりません。どうすればこの問題を処理できますか?あなたがホストに異なるポートを使用する必要があります1つのホスト上の多くのドッカーコンテナ
おかげ
1つのホスト上で多くの異なるwebapp-containerを実行する方法が見つかりませんでした。たとえば、私は2つのコンテナを持っています。最初は自分のクラウドでApacheを実行し、2番目にはWordpressのブログを実行します。どちらもポート80で動かなければなりません。どうすればこの問題を処理できますか?あなたがホストに異なるポートを使用する必要があります1つのホスト上の多くのドッカーコンテナ
おかげ
あなたはポートをマッピングするために-p
フラグを使用することができます。
docker run -p 8080:80 owncloud
docker run -p 8081:80 wordpress
、HAProxy
のようなリバースプロキシでdocker
を組み合わせることが一般的であるhttp://yourdomain.com:8081/
とhttp://yourdomain.com:8080/
とワードプレスでアクセスowncloudより
owncloud.yourdomain.com
、そしてワードプレスコンテナには
wordpress.yourdomain.com
から要求を渡すことができます。 (または
yourdomain.com/owncloud
と
yourdomain.com/wordpress
)
(そうしないと、第2の容器を起動エラーが発生します)。 これを回避するには、80個の内部ポートの1つをホスト内の別のポートに公開します。例えば 、「ドッカラン」を実行する場合:
docker run -p 8081:80 name_of_your_image
を。これは、ホストのポート8081でサーバーのポート80をエクスポートします。
あなたがdocker-gen
を使用することができますしたい場合、それはあなたが(コンテナの)シンプルな環境変数とのドッキングウィンドウのバランスをとることができ、簡単なスクリプトです。 これはドキュメントです:
https://github.com/jwilder/docker-gen
私はHAproxyを使用しています。それは本当にクールで、多くの可能性があります。 –