Centos 7.5でNGINXをセットアップし、ポート80でリッスンし、トラフィックをGunicornサーバーに転送しています。これがこのサーバーの主な目的であり、これらはローカルにインストールされたアプリケーションであり、これまでのところコンテナーはありません。
ここで、Dockerコンテナー内でいくつかのサービスを実行し、さまざまなサブドメイン(またはポート)にトラフィックを関連するコンテナーにリダイレクトさせたいと思います。
特定の例-SVNサーバー
私はDockerの概念全体に非常に慣れていないので、一部のコンテナーに関する特定のドキュメントがないため、本当に混乱します。 このSVNサーバーコンテナ でなんとか進歩しました。これは私が使用するコマンドです:docker run -d --name svn-server -p 80:80 -p 3960:3960 -v /home/svn:/home/svn elleflorio/svn-server
これは私がこれまでに持っているものです:
これらは問題です:
-p
パラメータを変更しようとしただけでは機能しませんでした。 SELinuxを一時的に無効にしてみましたが、役に立ちませんでした。コンテナで公開されているポート80ではなくポート8080を使用するには、docker run ... -p 8080:80 ...
を使用します。最初の番号はホストで接続できるポートで、2番目の番号はコンテナの「ネイティブ」ポートです。この{Host}:{container}規則は、他の場所で使用されています。
現在のコンテナを停止していることを確認してください(実行中のコンテナを一覧表示するにはdocker ps
)。
起動時にコンテナを再起動するには、docker run ...
を実行するsystemdサービスを作成できます。