Tomcat没有在docker映像上运行
我使用Dockerfile通过以下命令在映像上安装了tomcat7:
MAINTAINER Abc Xyz <abc@xyz.com> RUN apt-get -qq update RUN apt-get -y install openjdk-7-jre RUN apt-get -y install tomcat7 EXPOSE 8080
当我构build图像并尝试运行以下命令时:
sudo docker run -d -P abcxyz/tomcat service tomcat7 start
我不能看到它映射到的端口上的tomcat页面(比如49153)…而当我在图像中运行时,我尝试:
service tomcat7 start
然后它也无法启动tomcat7服务器。 我认为问题是图像无法启动tomcat7服务器。 而且我听说Docker镜像不能运行任何暴发户服务,虽然我不确定。
任何人有任何想法如何解决它? 谢谢。
这是行不通的,因为只要你指定的程序正在运行,容器就会工作。 service tomcat7 start
命令立即结束。
只需添加:
--privileged=true
docker run命令的参数。 Tomcat需要扩展权限才能运行。
更多信息: https : //docs.docker.com/reference/run/#runtime-privilege-linux-capabilities-and-lxc-configuration
将命令更改为
<path/to/tomcat>/bin/cataline.sh run
这将使tomcat在forground中运行
你应该像这样运行它:
docker run -dP abcxyz/tomcat catalina.sh run
只要命令正在执行,这将使容器运行。 你运行它的方式是把服务作为后台进程。
- 如何在容器重启之间持久化MongoDB数据?
- 未能执行目标com.spotify:docker-maven-plugin:1.0.0:build捕获的exception:basedir src / main / docker不存在
- 是否有必要在Java中使用Docker?
- 为什么python“害羞”在Docker中使用内存?
- docker-compose v3 + apache spark,端口7077拒绝连接
- 如何在Docker中增加memcached项目的最大大小
- 如何在Arch Linux中启用“–squash”function?
- 针对完整框架的项目的asp.net核心2.0 docker镜像
- Django:从INSTALLED_APPS中删除django.contrib.sites时出错