2015-09-16 1 views
0

Я запуска Tomcat в качестве контейнера Докер:не может получить доступ к Tomcat запущен в Докер контейнер

$ docker run -dP tomcat 

И процесс начинается правильно:

$ docker ps 
CONTAINER ID  IMAGE    COMMAND    CREATED    STATUS    PORTS      NAMES 
48b87e545c18  tomcat    "catalina.sh run" About a minute ago Up About a minute 0.0.0.0:32769->8080/tcp hopeful_ardinghelli 

$ docker logs 48b87e545c18 
16-Sep-2015 17:16:38.027 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version:  Apache Tomcat/8.0.26 
16-Sep-2015 17:16:38.037 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server built:   Aug 18 2015 11:38:37 UTC 
16-Sep-2015 17:16:38.037 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server number:   8.0.26.0 
16-Sep-2015 17:16:38.038 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name:    Linux 
16-Sep-2015 17:16:38.038 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Version:   4.0.9-boot2docker 
16-Sep-2015 17:16:38.038 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Architecture:   amd64 
16-Sep-2015 17:16:38.039 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Java Home:    /usr/lib/jvm/java-7-openjdk-amd64/jre 
16-Sep-2015 17:16:38.039 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Version:   1.7.0_79-b14 
16-Sep-2015 17:16:38.040 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Vendor:   Oracle Corporation 
16-Sep-2015 17:16:38.040 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE:   /usr/local/tomcat 
16-Sep-2015 17:16:38.041 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME:   /usr/local/tomcat 
16-Sep-2015 17:16:38.041 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties 
16-Sep-2015 17:16:38.042 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager 
16-Sep-2015 17:16:38.042 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.endorsed.dirs=/usr/local/tomcat/endorsed 
16-Sep-2015 17:16:38.043 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.base=/usr/local/tomcat 
16-Sep-2015 17:16:38.043 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.home=/usr/local/tomcat 
16-Sep-2015 17:16:38.044 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.io.tmpdir=/usr/local/tomcat/temp 
16-Sep-2015 17:16:38.044 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/java/packages/lib/amd64:/usr/lib/x86_64-linux-gnu/jni:/lib/x86_64-linux-gnu:/usr/lib/x86_64-linux-gnu:/usr/lib/jni:/lib:/usr/lib 
16-Sep-2015 17:16:38.226 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-nio-8080"] 
16-Sep-2015 17:16:38.267 INFO [main] org.apache.tomcat.util.net.NioSelectorPool.getSharedSelector Using a shared selector for servlet write/read 
16-Sep-2015 17:16:38.272 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["ajp-nio-8009"] 
16-Sep-2015 17:16:38.274 INFO [main] org.apache.tomcat.util.net.NioSelectorPool.getSharedSelector Using a shared selector for servlet write/read 
16-Sep-2015 17:16:38.282 INFO [main] org.apache.catalina.startup.Catalina.load Initialization processed in 1251 ms 
16-Sep-2015 17:16:38.325 INFO [main] org.apache.catalina.core.StandardService.startInternal Starting service Catalina 
16-Sep-2015 17:16:38.341 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet Engine: Apache Tomcat/8.0.26 
16-Sep-2015 17:16:38.374 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /usr/local/tomcat/webapps/host-manager 
16-Sep-2015 17:17:16.231 INFO [localhost-startStop-1] org.apache.catalina.util.SessionIdGeneratorBase.createSecureRandom Creation of SecureRandom instance for session ID generation using [SHA1PRNG] took [36,979] milliseconds. 
16-Sep-2015 17:17:16.276 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /usr/local/tomcat/webapps/host-manager has finished in 37,901 ms 
16-Sep-2015 17:17:16.276 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /usr/local/tomcat/webapps/docs 
16-Sep-2015 17:17:16.361 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /usr/local/tomcat/webapps/docs has finished in 85 ms 
16-Sep-2015 17:17:16.362 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /usr/local/tomcat/webapps/examples 
16-Sep-2015 17:17:17.221 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /usr/local/tomcat/webapps/examples has finished in 859 ms 
16-Sep-2015 17:17:17.242 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /usr/local/tomcat/webapps/ROOT 
16-Sep-2015 17:17:17.343 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /usr/local/tomcat/webapps/ROOT has finished in 101 ms 
16-Sep-2015 17:17:17.354 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /usr/local/tomcat/webapps/manager 
16-Sep-2015 17:17:17.452 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /usr/local/tomcat/webapps/manager has finished in 98 ms 
16-Sep-2015 17:17:17.460 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio-8080"] 
16-Sep-2015 17:17:17.484 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["ajp-nio-8009"] 
16-Sep-2015 17:17:17.487 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in 39204 ms 

Но когда я попал на сервер в браузер по адресу http://localhost:32769, я получаю сообщение об ошибке отказа. Я также пытался опубликовать порты в явном виде:

$ docker run -d -p 8888:8080 tomcat 

Или запустить контейнер в интерактивном режиме оболочки:

$ docker run -it -p 8888:8080 tomcat 

Но ни помогло: http://localhost:8888 отказывается от соединения. Как я могу решить проблему?

ответ

1

Отображение портов выполняется по адресу машины по умолчанию, которая была 192.168.99.100. URL-адреса были http://192.168.99.100:32769 и http://192.168.99.100:8888 соответственно. Надеюсь, это поможет другим столкнуться с одной и той же проблемой.

1

Если вы работаете докер с boot2docker вы должны запустить Tomcat с помощью boot2docker VM IP-адрес.

Вы можете получить адрес IP-с помощью следующей команды:

boot2docker ip 

Затем запустите http://ip_address:8888

0

Это потому, что вы не можете использовать Localhost чтобы получить доступ к адресу Докер. Вы должны использовать IP-адрес, который связан с вашей виртуальной сетью. Вы должны проверить, какая подсеть работает ваш докер.

Пример: IP-адрес моего ноутбука 192.168.1.13, но IP-адрес моего VirtualMachine, где работает 192.168.99.100.

С уважением

Смежные вопросы