Tag: Tomcat

应用程序运行在Linux服务器上的本地Tomcat或Tomcat上,无法在Docker容器中的Tomcat上运行

我有一个Tomcat的问题。 当我将我的应用程序部署到本地计算机上的Tomcat时,它运行得非常完美。 当我将我的应用程序部署到远程服务器上的Tomcat时,它运行得非常完美。 但 当我将应用程序部署到在选项2中运行在同一服务器上的Docker容器中运行的Tomcat时 – 我得到了大量的错误…他们看起来像这样: [ERROR] 2017-12-13 16:14:36 Context initialization failed org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'transactionManager' defined in ServletContext resource [/WEB-INF/spring/database-context.xml]: Cannot resolve reference to bean 'entityManagerFactory' while setting bean property 'entityManagerFactory'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in ServletContext resource [/WEB-INF/spring/database-context.xml]: Invocation of init method […]

在docker和rancher中创build负载平衡器

我正尝试在Debian框中设置Docker和Rancher的testing环境。 为了能够重现加载的环境,我想基于compose和dockerfile文件构build一切。 基本的架构是一个基于tomcat的前端和postgres数据库。 我想要使​​用负载平衡属性。 我已经通过GUI成功地构build了它,但是我有通过docker撰写文件来重现它的方法。 我在github上find了tomcat和postgres的dockerfile图像。 目前他们很简单: FROM tomcat:9.0 和 FROM postgres:latest docker-compose.yml包含以下内容: version: '2' services: lb: image: rancher/lb-service-haproxy:v0.7.9 ports: – 9000:9000/tcp labels: io.rancher.container.agent.role: environmentAdmin io.rancher.container.create_agent: 'true' scale: 1 lb_config: port_rules: – priority: 1 protocol: http source_port: 9000 target_port: 8080 service: web web: build: https://raw.githubusercontent.com/xxxx/tomcatweb links: – database:db volumes: – /home/dockserver/stacks/webapps:/usr/local/tomcat/webapps/ – /home/dockserver/stacks/logs:/usr/local/tomcat/logs/ scale: 2 […]

Docker Compose – 使用卷在tomcat上运行java web应用程序(war文件)

我尝试在docker上使用maven和tomcat部署一个java web应用程序。 我使用两个Dockerfiles,一个用于我的Maven项目,另一个用于Tomcat,用docker-compose组合它们,然后将.war文件从maven容器复制到tomcat容器,但是用我不太喜欢的方式。 我确定有一种方法来做到这一点,这就是我的问题。 我的文件是这些… maven Dockerfile FROM maven:3.5.2-jdk-8 RUN git clone mygitproject # Create app directory WORKDIR mics-project RUN mvn install tomcat Dockerfile_tc FROM tomcat:8.0-jre8 # Create app directory WORKDIR /usr/local/tomcat/bin CMD ["catalina.sh", "run"] EXPOSE 8080 泊坞窗,compose.yml version: '3' services: maven: container_name: maven-container build: context: . dockerfile: Dockerfile tomcat: container_name: tomcat-container build: context: . […]

如何编写Dockerfile来启动一个Web服务器并对其进行curl以满足一些要求

我想天真地使用这个dockerfile。 FROM test/tomcat ENV CATALINA_HOME /tomcat RUN ${CATALINA_HOME}/bin/catalina.sh start RUN wget localhost:8080/Writer/WriterServlet 结果肯定如下 docker build –no-cache=true – < Dockerfile Sending build context to Docker daemon 3.072 kB Sending build context to Docker daemon Step 0 : FROM test/tomcat —> 2a85ccb3dd07 Step 1 : ENV CATALINA_HOME /tomcat —> Running in 76872d1acdd5 —> 30ad1fe832d6 Removing intermediate container […]

如何在Docker容器上部署Web服务

这是我的Dockerfile: #Build java web app container image FROM ubuntu MAINTAINER wangyao #Make java and tomcat install directory RUN mkdir /usr/local/java RUN mkdir /usr/local/tomcat #Copy jre and tomcat into image ADD jdk1.8.0_45.jdk /usr/local/java/ ADD apache-tomcat-7.0.62 /usr/local/tomcat/ ENV JAVA_HOME=/usr/local/java/Contents/Home CMD cd /usr/local/tomcat;./bin/catalina.sh run #Expose http port EXPOSE 8080 然后我build立它,并尝试启动它: wangyaos-MBP-3:flexcloud wangyao$ ls Dockerfile apache-tomcat-7.0.62 jdk1.8.0_45.jdk wangyaos-MBP-3:flexcloud wangyao$ […]

Tomcat的Spring应用程序属性与docker容器链接

我一直在玩docker。 我有我的MySQL容器 docker run –name mymysql -d mysql / mysql-server:5.6 我的应用程序部署在我的Tomcat容器 docker运行 – 链接mymysql:mysql -d我的tomcat 在tomcat容器中,我可以看到(因为链接) .. MYTOMCAT_PORT_8080_TCP_ADDR=172.17.0.55 .. and in the /etc/hosts 172.17.0.55 mysql 在我的Spring应用程序中,我用这种方式pipe理属性 class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="locations"> <list> <value>classpath:${env}/myapp.properties</value> </list> </property> </bean> 其中取决于configuration(propvariables在tomcat的JAVA_OPTS中设置-Denv = qa) 在qa / myapp.properties我有例如mysql链接 databaseUrl=jdbc:mysql://mysql:3306/mydb “mysql”是mysql docker镜像的名称,和tomcat容器的/ etc / hosts中的一样 我想知道如果我处理的东西的方式被认为是良好的做法? 有一个更容易/更聪明的方式来处理属性? 事实上,我的Java应用程序与我的docker的图像的名称强烈联系在一起。 我想有一种运行在tomcat容器上的脚本,它使用/ etc / hosts值的ENVvariables(MYTOMCAT_PORT_8080_TCP_ADDR)即时生成最终的may.properties。 这是一个更好的解决scheme吗?

使用Dockerfile使用PostgreSql运行Tomcat

我想在同一个Dockerfile中运行带有PostgreSql数据库的Tomcat。 我有以下的Dockerfile FROM tomcat:8-jre7 MAINTAINER "Sonam <mymail@gmail.com>" RUN apt-get -y update Add simplewebapp.war /usr/local/tomcat/webapps/ RUN apt-get update && apt-get -y upgrade FROM postgres 当我运行docker镜像时,如果我注释掉postgres,我就无法访问Tomcat。 我如何获得Postgres运行和Tomcat呢? 谢谢

Docker之间的双向通信容器

我正在寻找设置docker集装箱之间的双向通信。我有以下容器: 1.Apache 2.Tomcat A 3.Tomcat B 4.Tomcat C 5.MySQL Apache充当反向代理并将请求转发给Tomcat A,B和C.All Tomcat容器将与MySQL数据库进行通信。截至目前,我已经在Apache中向Apache发送请求到Tomcat容器的链接,而Tomcat容器也有链接与MySQL数据库进行通信。 现在我需要在Tomcat容器之间build立双向通信就像Tomcat A想与Tomcat B和Tomcat C交谈,反之亦然。如何用Docker Compose实现这一点? 是否有可能在docker-compose.yml文件中提供双向链接? 提前致谢。

I / O密集型Java应用程序在有限的资源上加速了Docker

我有一个I / O密集型的Java Tomcat应用程序,我想在更现代的集群环境中执行htmlunittesting。 因此,我也考虑了docker,可以通过应用swarm等提供很酷的function。 testing针对oracle数据库运行,并在本地I / O上创buildstream量。 我只是好奇一个问题: 当我使用有限资源(负载15因子在1 CPU系统上高于2)的普通安装来运行testing时,testing执行时间比使用docker化方法的相同环境(有限资源)慢35%左右testing执行。 如果有足够的资源保持负载因子低于1(在1 CPU系统上),则普通安装和dockerized安装之间的运行时间几乎相同。 我正在寻找解释这个的方法。 是关于一些覆盖文件系统caching机制? 在调查这个地方的时候要看哪里?

任何人都可以帮我创build我的Tomcat的复制Dockerfile?

我不能使用默认的tomcat副本,因为我有一些依赖的jar文件,我必须把它放在tomcat的lib文件夹中。 我可以使用什么图像来将正确的依赖项放入Tomcat库中?