前提・実現したいこと
Docker公式イメージを利用せず、自前でTomcatのDockerfileを作成したのですが
起動後にcurlでアクセスすると応答が返ってきません。
コンテナに乗り込んでlocalhostにアクセスしても同様の状態です。
正しい設定方法についてご教授願います。
発生している問題・エラーメッセージ
bash
1docker run --name tom -d -p 8080:8080 my-tomcat:1.1 2curl localhost:8080 3# 応答が返ってこない 4 5docker exec -it tom /bin/bash 6curl localhost:8080 7# コンテナ内部でcurlしても同様に応答なし
該当のソースコード
- Dockerfile
Dockerfile
1FROM centos:7.7.1908 2ENV LANG en_US.utf8 3ENV JAVA_HOME /usr/lib/jvm/jre-1.8.0 4ENV CATALINA_HOME /usr/local/tomcat 5ENV PATH ${PATH}:${JAVA_HOME}/bin:${CATALINA_HOME}/bin:$PATH 6RUN mkdir -p "$CATALINA_HOME" 7WORKDIR /root 8 9RUN yum -y install java-1.8.0-openjdk \ 10 && rm -rf /var/cache/yum/* \ 11 && yum clean all 12 13ADD apache-tomcat-8.5.53.tar.gz . 14RUN mv ~/apache-tomcat-8.5.53/* /usr/local/tomcat 15#RUN chown -R tomcat:tomcat /usr/local/apache-tomcat-8.0.24 16 17EXPOSE 8080 18 19CMD ["catalina.sh", "run"]
補足情報
- コンテナ内部のプロセス起動状況
bash
1 PID TTY STAT TIME COMMAND 2 1 ? Ssl 0:04 /usr/lib/jvm/jre-1.8.0/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manage 3 88 pts/0 Ss 0:00 /bin/bash PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/lib/jvm/jre-1.8.0/bin:/usr/local/tomcat/bin:/usr/lo 4 101 pts/0 R+ 0:00 ps -ex HOSTNAME=804ddb38446d TERM=xterm CATALINA_HOME=/usr/local/tomcat LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do= 5
- ポートの状況
bash
1tcp 3 0 0.0.0.0:8080 0.0.0.0:* LISTEN
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。