ここが問題です。私は、次のDockerfileがあります起動時にDockerコンテナでTomcatがフリーズする
DOCKERFILE
FROM centos:centos7
MAINTAINER Legos
ADD epel-release-7-9.noarch.rpm /etc/extras/epel-release-7-9.noarch.rpm
RUN rpm -Uvh /etc/extras/epel-release*rpm
# Install prepare infrastructure
RUN yum -y update && \
yum -y install wget && \
yum -y install tar && \
yum -y install haveged && \
yum -y install rng-tools
RUN chkconfig haveged on
# Prepare environment
ADD jdk* /opt/
WORKDIR /opt/
RUN yum localinstall -y "jdk-8u131-linux-x64.rpm"
RUN echo "1"|alternatives --config java
ENV JAVA_HOME /usr/java/jdk1.8.0_131
#ENV JAVA_OPTS "-Djava.security.egd=/dev/./urandom"
ENV CATALINA_HOME /opt/tomcat
ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin:$CATALINA_HOME/scripts
# Install Tomcat
ENV TOMCAT_MAJOR 8
ENV TOMCAT_VERSION 8.5.15
RUN wget http://www-eu.apache.org/dist/tomcat/tomcat-${TOMCAT_MAJOR}/v${TOMCAT_VERSION}/bin/apache-tomcat-${TOMCAT_VERSION}.tar.gz && \
tar -xvf apache-tomcat-${TOMCAT_VERSION}.tar.gz && \
rm apache-tomcat*.tar.gz && \
mv apache-tomcat* ${CATALINA_HOME}
RUN chmod +x ${CATALINA_HOME}/bin/*sh
# Create Tomcat admin user
ADD create_admin_user.sh $CATALINA_HOME/scripts/create_admin_user.sh
ADD tomcat.sh $CATALINA_HOME/scripts/tomcat.sh
ADD webapps/gireUsuarios.war $CATALINA_HOME/webapps/gireUsuarios.war
ADD conf/tomcat-users.xml $CATALINA_HOME/conf/tomcat-users.xml
ADD conf/Catalina/localhost/manager.xml $CATALINA_HOME/conf/Catalina/localhost/manager.xml
RUN chmod +x $CATALINA_HOME/scripts/*.sh
# Create tomcat user
RUN groupadd -r tomcat && \
useradd -g tomcat -d ${CATALINA_HOME} -s /sbin/nologin -c "Tomcat user" tomcat && \
chown -R tomcat:tomcat ${CATALINA_HOME}
WORKDIR /opt/tomcat
EXPOSE 8080 8009 8443 9100-9120 4369 80
RUN yum clean all
USER tomcat
CMD ["tomcat.sh"]
TL; DR:これは、Tomcat 8.5とJava 1.8とCentOSの7マシンのイメージです。 'tomcat.sh'は設定でユーザーを作成した後にcatalina.shを実行するだけなので、それについてはあまり言いません。
これは次のとおりです。コンテナを作成すると、渡している.warファイルを展開している間、コンテナがフリーズします。私は他の.warファイルを開始して肯定的な結果を得ようとしましたが、この問題のある.warファイルを自分のマシンTomcat 8.5に配備しようとしました(マネージャ-guiを追加するだけの単純なTomcatユーザー)、正常に展開されています。
質問:TomcatがDockerコンテナに展開中にフリーズする理由は何ですか? JAVA_OPTS = -Djava.security.egd =/dev /./ urandomの解決策を試しましたが、これはこの種の出来事に役立つと思われますが、うまくいきませんでした。提案?