исходной ситуацииtomcat7 не запустится внутри Ubuntu Докер контейнера
В Ubuntu (14.04/14.10) а побежал следующие команды:
apt-get update && apt-get install tomcat7
service tomcat7 start
С одной стороны, я попытался это в VirtualBox VM и tomcat7 запущен при, как и ожидалось:
vagrant init hashicorp/precise32
vagrant up
с другой стороны, я попытался это внутри контейнера Докер, начал, как показано здесь:
sudo docker run -it --name tomcattest ubuntu bash
Проблема
Там служба tomcat7 запуска команды выходов [обязательно]. Тем не менее, кот работает, но /var/log/tomcat7/catalina.out говорит следующее:
Apr 16, 2015 5:52:40 PM org.apache.catalina.startup.ClassLoaderFactory validateFile
WARNING: Problem with directory [/usr/share/tomcat7/common/classes], exists: [false], isDirectory: [false], canRead: [false]
Apr 16, 2015 5:52:40 PM org.apache.catalina.startup.ClassLoaderFactory validateFile
WARNING: Problem with directory [/usr/share/tomcat7/common], exists: [false], isDirectory: [false], canRead: [false]
Apr 16, 2015 5:52:40 PM org.apache.catalina.startup.ClassLoaderFactory validateFile
WARNING: Problem with directory [/usr/share/tomcat7/server/classes], exists: [false], isDirectory: [false], canRead: [false]
Apr 16, 2015 5:52:40 PM org.apache.catalina.startup.ClassLoaderFactory validateFile
WARNING: Problem with directory [/usr/share/tomcat7/server], exists: [false], isDirectory: [false], canRead: [false]
Apr 16, 2015 5:52:40 PM org.apache.catalina.startup.ClassLoaderFactory validateFile
WARNING: Problem with directory [/usr/share/tomcat7/shared/classes], exists: [false], isDirectory: [false], canRead: [false]
Apr 16, 2015 5:52:40 PM org.apache.catalina.startup.ClassLoaderFactory validateFile
WARNING: Problem with directory [/usr/share/tomcat7/shared], exists: [false], isDirectory: [false], canRead: [false]
Apr 16, 2015 5:52:40 PM org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["http-bio-8080"]
Apr 16, 2015 5:52:40 PM org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 514 ms
Apr 16, 2015 5:52:41 PM org.apache.catalina.core.StandardService startInternal
INFO: Starting service Catalina
Apr 16, 2015 5:52:41 PM org.apache.catalina.core.StandardEngine startInternal
INFO: Starting Servlet Engine: Apache Tomcat/7.0.52 (Ubuntu)
Apr 16, 2015 5:52:41 PM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory /var/lib/tomcat7/webapps/ROOT
Apr 16, 2015 5:52:42 PM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["http-bio-8080"]
Apr 16, 2015 5:52:42 PM org.apache.catalina.startup.Catalina start
INFO: Server startup in 1150 ms
объяснение искали
Может кто-нибудь exlain различное поведение и скажите мне, если это возможно установить tomcat7 простой способ через apt-get внутри контейнера докера без предупреждений?
Хороший улов, более полный, чем мой ответ. +1 – VonC
@Thomas Steinbach: вы нашли способ исправить его в 'Dockerfile'? – Arpit
@Arpit - похоже, такого аргумента командной строки для 'docker run' еще нет. См. [Документация] (https://docs.docker.com/engine/reference/commandline/build/) –