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

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

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

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

HTTPS

HTTPS(Hypertext Transfer Protocol Secure)はHypertext Transfer プロトコルとSSL/TLS プロトコルを組み合わせたものです。WebサーバとWebブラウザの間の通信を暗号化させて、通信経路上での盗聴や第三者によるなりすましを防止します。

Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

SSL

SSL(Secure Sockets Layer)とは、暗号化されたプロトコルで、インターネット上での通信セキュリティを提供しています。

Docker

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

Q&A

1回答

1175閲覧

Apacheが起動しません

tera001

総合スコア6

docker-compose

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

HTTPS

HTTPS(Hypertext Transfer Protocol Secure)はHypertext Transfer プロトコルとSSL/TLS プロトコルを組み合わせたものです。WebサーバとWebブラウザの間の通信を暗号化させて、通信経路上での盗聴や第三者によるなりすましを防止します。

Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

SSL

SSL(Secure Sockets Layer)とは、暗号化されたプロトコルで、インターネット上での通信セキュリティを提供しています。

Docker

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

0グッド

0クリップ

投稿2021/12/30 12:18

実現したいこと

メインとは別に検証用として古いバージョンのApache2.2.11のHTTPSサーバーを構築したいです。

発生している問題

https://localhostにアクセスしても応答がなく、Apacheが起動できていないものと思われます。

該当のソースコード

docker-compose.yml

version: "3" services: dcloud: build: . ports: - "80:80" - "443:443" tty: true

Dockerfile

1FROM centos:centos7 2 3RUN yum update -y 4RUN yum install gcc make pcre pcre-devel wget -y 5 6RUN yum -y install expat-devel 7 8# apr-1.5.1.tar.gz 9RUN cd /usr/local/src \ 10 && wget https://archive.apache.org/dist/apr/apr-1.5.1.tar.gz \ 11 && tar -xvzf apr-1.5.1.tar.gz \ 12 && cd apr-1.5.1 \ 13 && ./configure --prefix=/opt/apr/apr-1.5.1 \ 14 && make \ 15 && make install 16 17# apr-util-1.5.3.tar.gz 18RUN cd /usr/local/src \ 19 && wget https://archive.apache.org/dist/apr/apr-util-1.5.3.tar.gz \ 20 && tar -xvzf apr-util-1.5.3.tar.gz \ 21 && cd apr-util-1.5.3 \ 22 && ./configure --prefix=/opt/apr-util/apr-util-1.5.3 --with-apr=/opt/apr/apr-1.5.1 \ 23 && make \ 24 && make test \ 25 && make install 26 27# openssl 28RUN yum install -y zlib-devel perl-core 29RUN cd /tmp \ 30 && wget https://www.openssl.org/source/old/0.9.x/openssl-0.9.8zh.tar.gz \ 31 && ls -la \ 32 && mkdir /usr/local/src/openssl-0.9.8zh \ 33 && cp /tmp/openssl-0.9.8zh.tar.gz /usr/local/src/openssl-0.9.8zh/openssl-0.9.8zh.tar.gz \ 34 && cd /usr/local/src/openssl-0.9.8zh \ 35 && tar xzf openssl-0.9.8zh.tar.gz \ 36 && cd openssl-0.9.8zh \ 37 && ./config --prefix=/usr/local/lib/openssl-0.9.8zh shared \ 38 && make \ 39 && make install \ 40 && ln -s /usr/local/lib/openssl-0.9.8zh/lib /usr/local/lib/openssl-0.9.8zh/lib64 \ 41 && /usr/local/lib/openssl-0.9.8zh/bin/openssl version 42ENV PATH $PATH:/usr/local/lib/openssl-0.9.8zh/bin 43RUN mkdir -p /etc/ld.so.conf.d \ 44 && echo '/usr/local/lib/openssl-0.9.8zh/lib' > /etc/ld.so.conf.d/my.conf \ 45 && ldconfig 46 47# httpd 48RUN cd /usr/local/src \ 49 && wget http://archive.apache.org/dist/httpd/httpd-2.2.11.tar.gz \ 50 && tar -xvzf httpd-2.2.11.tar.gz \ 51 && cd /usr/local/src/httpd-2.2.11 \ 52 && ./configure --prefix=/opt/httpd/httpd-2.2.11 \ 53 --with-included-apr \ 54 --with-apr=/opt/apr/apr-1.5.1 \ 55 --with-apr-util=/opt/apr-util/apr-util-1.5.3 \ 56 --build=arm \ 57 --enable-modules=ssl \ 58 --with-ssl=/usr/local/lib/openssl-0.9.8zh \ 59 # --enable-rewrite=shared \ 60 --enable-so \ 61 && make \ 62 && make install 63ENV PATH $PATH:/opt/httpd/httpd-2.2.11/bin 64 65# httpd.conf 66RUN sed -i \ 67 -e 's/^#(Include .*httpd-ssl.conf)/\1/' \ 68 -e 's/^#(LoadModule .*mod_ssl.so)/\1/' \ 69 -e 's/^#(LoadModule .*mod_socache_shmcb.so)/\1/' \ 70 -e 's/^#(ServerName www.example.com:80)/ServerName localhost:443/g' \ 71 /opt/httpd/httpd-2.2.11/conf/httpd.conf 72 73# # SSLなしの起動確認 74# RUN sed -i \ 75# -e 's/^#(LoadModule .*mod_socache_shmcb.so)/\1/' \ 76# -e 's/^#(ServerName www.example.com:80)/\1/' \ 77# /opt/httpd/httpd-2.2.11/conf/httpd.conf 78 79# 証明書 80COPY ./confssl/* /opt/httpd/httpd-2.2.11/conf/ 81 82# start 83CMD ["apachectl", "-D", "FOREGROUND"]

試したこと

コンテナ内で再起動実行

# apachectl restart httpd not running, trying to start (98)Address already in use: make_sock: could not bind to address 0.0.0.0:80 no listening sockets available, shutting down Unable to open logs

CMD ["apachectl", "-D", "FOREGROUND"]をコメントアウトし、コンテナ内でapachectl startを実行しても反応がありませんでした。

# apachectl start

補足情報

環境

M1 Mac

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

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

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

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

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

CHERRY

2021/12/30 22:13

> Address already in use と言われているようですが、他のアプリがポートを使っていたりしますか? また、ログファイルには、何かメッセージは出ていませんか?
skys215

2021/12/31 01:47

コンテナ内でlsof -i:80で80ポートを使っているアプリを表示できます。 その後Dockerfileでそのアプリを閉じる様にするばよろしいと思います。
guest

回答1

0

Apache2.2.11の時代にdockerは存在していたのでしょうか。
こちらも最近Apacheの起動に成功したばかりで偉そうなことは言えませんが、
dockerは使わずに、素直に、Apache2.2.11時代のOSで再インストール→
Apache2.2.11のインストールとオーソドックスな方法ではいかが。

投稿2022/01/13 09:16

Katsukun2000GT

総合スコア12

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.47%

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

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

質問する

関連した質問