実現したいこと
メインとは別に検証用として古いバージョンの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