質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
docker-compose

docker-composeとは、複数のコンテナで構成されるサービスを提供する手順を自動的し管理を簡単にするツール。composeファイルを使用しコマンド1回で設定した全サービスを作成・起動することが可能です。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

Q&A

解決済

1回答

5911閲覧

docker-compose で起動したコンテナのportをfirewallで制御したい。

node_chan

総合スコア10

docker-compose

docker-composeとは、複数のコンテナで構成されるサービスを提供する手順を自動的し管理を簡単にするツール。composeファイルを使用しコマンド1回で設定した全サービスを作成・起動することが可能です。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

0グッド

0クリップ

投稿2020/06/03 12:11

外部からアクセスさせたいのでportフォワーディングして外部に公開しています。

centos8のfirewallで指定したportにip制限をかけたいのですが、
portフォワーディングしているためdocke側がportをあけて、firewall側の制御がきかない状態です。

docker-composeもdocker run のiptables=falseのようなオプションがあるのでしょうか?
それともdokcerの設定ファイルなどを変更する必要があるのでしょうか?

ご教授をよろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

iptables(netfilter)側については設定によりますが、Docker Compose 単体としては 公式ドキュメント にあるような、ポートの公開範囲を指定する方法はいかがでしょうか。

ports: - "127.0.0.1:443:443"

利用形態にもよりますが、もしかすると、ファイアウォールにこだわらず、何らかのリバースプロキシを設置する方法も有効かもしれません。

投稿2020/06/03 19:41

zembutsu

総合スコア1584

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

node_chan

2020/06/04 08:12

ご回答ありがとうございます。 127.0.0.1ってことは、外部でなくDockerを実行しているホスト内のIPですよね? portsはhostとコンテナのポート or ipを記載する箇所という認識です。 ちなみに、127.0.0.1の箇所に許可したい外部のIPを記載すると起動時にbind: cannot assign requested addressで怒られます。
zembutsu

2020/06/04 23:28

> ちなみに、127.0.0.1の箇所に許可したい外部のIPを記載すると起動時にbind: cannot assign requested addressで怒られます。 ここには 127.0.0.1 または、そのサーバが持っているネットワーク・インターフェースの IP アドレスしか記述できません。 以下、先日の追記の捕捉です。 仮に 127.0.0.1 としますと、そのサーバ内のローカル環境以外からは Docker コンテナに接続できなくなります。つまり、同じサーバ上にリバースプロキシをセットアップし、そのリバースプロキシ上でアクセス制限を行えば、ファイアウォール的なアクセス制御ができるようになります。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問