Linux

CentOS 上の Docker にウェブサーバーを入れて80番以外のポートで公開することができない問題【未解決】

投稿日:2018年7月24日 更新日:

CentOS 7 上の Dockerコンテナ にウェブサーバーを入れた場合、80番以外のポートで公開することはできないようです。

例えば、

まず、firewall-cmd コマンドで 8080番ポートを開けておき、

firewall-cmd --zone=public --add-port=8080/tcp --permanent
firewall-cmd --reload

以下のように Apache のイメージを元にした Dockerコンテナを起動します。

docker run -dit --name my-apache-app -p 8080:80 httpd:2.4

この操作によって、8080番ポートでウェブサイトを公開できるのかなと思ったのですが、少なくとも CentOS 7 の場合はうまくいきません。firewalld の設定に問題があり(?)、外部からのアクセスを Dockerコンテナに渡すところで止まっているようです。

似たような問題かなと思ったのが、Docker vs. firewalld on CentOS 7 · Issue #16137 · moby/moby · GitHub です。ここでは、Docker 自体の問題ではなく、RedHat (CentOS) 側のバグだと主張されており、firewalld のレポジトリ側にも issue が投稿されていましたが、既に解決済みとなっています。最初のページにあった解決策らしき手順も試してみましたがうまくいきません。

今回はこれ以上深入りする時間がなかったのですが、今後何解決策が見付かりましたらここに追記したいと思います。

📂-Linux

執筆者:labo


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

CentOS

CentOS 6 での yum update エラーに対応しました

問題 先日、CentOS 6.9 で yum update したところ、以下のエラーが発生しました。 https://ca.mirror.babylon.network/remi/enterprise …

Let's Encrypt

Let’s Encrypt でワイルドカードを使う

手持ちの CentOS 7 に入れてある certbot パッケージが バージョン 0.22.0 になり、Let’s Encrypt のワイルドカードに対応しましたので試してみました。 目 …

Google App Engine

Ubuntu 18.04 (WSL) に、Google Cloud SDK をインストールする

Ubuntu 18.04 (WSL) に、Google Cloud SDK をインストールする手順を紹介します。

Linux

ドキュメントルートに chmod コマンドを実行する際、指定すると便利なモード引数

目次1. はじめに2. chmod に関する前提知識3. ディレクトリは rwxr-xr-x ファイルは rw-r–r– にする解説4. ディレクトリは rwxrwxr-x ファイルは rw-rw …

Linux

コマンドに対してデフォルトで指定されているオプションを調べる

Linux などの UNIX系OS環境では、コマンドを入力して実行する機会が多いと思いますが、それぞれの環境によって、いくつかのコマンドオプションがデフォルトで指定されている場合があります。 ※ ログ …