Tag: Java

在Web浏览器中看不到Java Maven Tomcat插件Web应用程序

我想在Docker容器中构build并运行我的Java Maven Web应用程序。 我试着用下面的命令: docker run -it –name my_project -v "$PWD":/usr/src/my_project -w /usr/src/my_project maven:3.5.0-jdk-8 mvn clean install tomcat7:run 它正确地复制资源,运行maven clean install(成功构build),并使用包含在我的pom.xml中的tomcat7-maven-plugin运行。 一切工作正常,日志是非常相似的生成和本地运行在我的Windows机器上: 不幸的是,在networking浏览器中有信息“连接被拒绝”。 什么可能导致这个问题? – 我的应用程序是特定于Windows,不能在Linux上运行? – 应用程序是完全的应用程序和运行,但错误的是代理configuration或端口没有configuration? 我怎样才能进一步 – 调查日志? 尝试build立在Windowsdocker集装箱? PS我检查与Kitematic应用程序的窗口docker的容器的IP。

如何在Java中处理closures请求

例如,当一个操作系统尝试重新启动时,我认为Java应用程序会收到某种closures请求。 我想对我的应用程序如何处理这些请求有一定的控制权。 但是,我不知道从哪里开始。 我有一些问题是: 所有closures请求是否都来自JVM? 容器,虚拟机和裸机操作系统的请求是否不同? 我特别感兴趣的是如何在docker集装箱内处理这个问题。 而且,当然,我可以使用哪些库来处理这些请求? 如果有人能够指出一个深度覆盖的资源,除了原始文档,例如书籍或在线课程(不一定是免费的)之外,这将是非常好的。 虽然,文档的链接也一定会受到赞赏。 谢谢! 更新:我知道我需要能够处理像电源线被抽出的事件。 但是,当我要求我的Windows机器closures时,有时会popup一个窗口,提示“正在等待这些应用程序closures”。 所以,我假设操作系统告诉应用程序在强制停止之前closures自己。 这是不正确的假设吗? 我想要完成的是应用程序在关机前logging信息或更新数据库。 我会看看addShutdownHook 。 再次感谢!

连接被拒绝:访问运行在docker容器中的spring引导应用程序

我有我的春季启动应用程序和MySQL数据库运行在不同的docker容器。 我能够从我的主机访问服务器数据库。 Spring应用程序的application.properties如下所示: spring.datasource.url=jdbc:mysql://benefitsmysql:3308/benefitsmysql spring.datasource.driver-class-name=com.mysql.jdbc.Driver spring.jpa.show-sql=true spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQL5Dialect # ==================================================================================== # = SSL Configuration # ==================================================================================== #security.basic.enabled=false server.port=8443 server.ssl.key-store=keystore.jks server.ssl.key-store-password=******* server.ssl.keyStoreType=jks server.ssl.keyAlias=tomcatselfsigned 我正在通过使用docker的maven插件来构builddocker容器的图像。 我的Dockerfile如下所示: FROM java:8 VOLUME /tmp ADD Benefits.jar Benefits.jar EXPOSE 8443 RUN bash -c 'touch /Benefits.jar' ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/Benefits.jar"] 我开始像下面的春季启动应用程序的docker容器: docker run -p 8443:8443 –name benefits –link benefitsmysql:mysql -d c794a4d0c634 如果我做docker ps -a […]

Dockerfile与Tomcat:“exec:catalina.sh”没有这样的文件或目录

我试图让我的Web应用程序与Docker上的Tomcat一起工作。 不过,我在实际工作中遇到了一些麻烦。 我对Tomcat和Docker都是全新的,不太清楚我做错了什么。 我的Dockerfile看起来像: FROM java:8-jre #https://github.com/docker-library/tomcat ENV CATALINA_HOME ~/Tomcat ENV PATH $CATALINA_HOME/bin:$PATH RUN mkdir -p "$CATALINA_HOME" WORKDIR $CATALINA_HOME # see https://www.apache.org/dist/tomcat/tomcat-8/KEYS RUN gpg –keyserver pool.sks-keyservers.net –recv-keys \ 05AB33110949707C93A279E3D3EFE6B686867BA6 \ 07E48665A34DCAFAE522E5E6266191C37C037D42 \ 47309207D818FFD8DCD3F83F1931D684307A10A5 \ 541FBE7D8F78B25E055DDEE13C370389288584E7 \ 61B832AC2F1C5A90F0F9B00A1C506407564C17A3 \ 79F7026C690BAA50B92CD8B66A3AD3F4F22C4FED \ 9BA44C2621385CB966EBA586F72C284D731FABEE \ A27677289986DB50844682F8ACB77FC2E86E29AC \ A9C5DF4D22E99998D9875A5110C01C5A2F6059E7 \ DCFD35E0BF8CA7344752DE8B6FB21E8933C60243 \ F3A04C595DB5B6A5F1ECA43E3B7BBB100D811BBE \ F7DA48BB64BCB84ECBA7EE6935CD23C10D498E23 ENV TOMCAT_MAJOR 8 ENV […]

IntelliJdocker部署地址:没有这样的文件或目录

我安装了用于IntelliJ的docker集成插件来即时部署一个项目。 目前我正在用Gradle来开发一个项目。 那里的结构看起来像: project |- build/ |– docker/ |— Dockerfile |— target/ |—- myApp.jar |- docker/ |– Dockerfile |- src/ |– de.myApp/ |— SOURCECODE |- build.gradle |- gradlew 在我的Dockerfile中添加.jar : ADD target/data_sample_set_structure_consumer-0.0.0.jar app.jar 部署configuration使用Deployment: docker/Dockerfile 。 当我点击开始 ,我得到以下错误信息: Step 3/4 : ADD target/data_sample_set_structure_consumer-0.0.0.jar app.jar Error: ResponseItem.ErrorDetail[code=<null>,message=ADD failed: stat /var/lib/docker/tmp/docker-builder981429297/target/data_sample_set_structure_consumer-0.0.0.jar: no such file or directory] Failed […]

JAR在本地工作,但在Docker容器(Apache-POI)中挂起失败

我有一个JAR获取外部XLSX资源,并使用Apache-POI打开工作簿 FileInputStream file = new FileInputStream("sheets/template.xlsx"); Workbook workbook = new XSSFWorkbook(file); 当我在本地运行JAR时,一切正常,但是,当我在Docker中执行JAR时,JAR在尝试创build工作簿时似乎挂起,没有任何exception抛出。 有任何想法吗? 我可以提供更多的信息。 编辑更多信息: / sheets /目录存在于我的容器的根目录中: 我应该提到的是,如果我在本地机器上运行java -jar app.jar,那么以下文件结构一切正常: . +– app.jar +– sheets/ +– template.xlsx

控制docker – 用Java编写

我创build了相当数量的docker-compose脚本,它们产生了多个服务。 我现在想要在JVM中控制docker-compose。 基本上,我希望能够down执行,理想情况下使用-p <project name>参数,所以我可以同时产生多个实例。 这在Java中可能吗?

如何在官方的postgreSQL 10.0 docker镜像中增加max_connection

问题 我有太多的连接打开使用默认的dockerpostgresqlconfiguration https://hub.docker.com/_/postgres/ 目标 我想扩展max_connection而不使用卷来安assembly置(我需要这个在我的CI环境默认情况下是可用的)。 我试图使用sed来编辑configuration,但这没有任何作用。 什么是推荐的方式来覆盖postgresql docker官方图像的默认configuration?

从docker容器连接到postgres

我有点失落,为什么我的Java应用程序无法连接到我的postgres数据库。 我打算通过jdbc连接到postgres数据库。 该应用程序是在docker集装箱内运行。 this.connection = `DriverManager.getConnection("jdbc:postgresql://<myip>:5432/databasename", "usr", "password");` 我得到的例外: Connection refused. Check that the hostname and port are correct and that the postmaster is accepting TCP/IP connections. 当我从我的桌面运行应用程序,它按预期方式连接。 当我从docker集装箱内运行它时,它失败。 我刚刚在今天下午安装了docker,并且开始了windows的入门,所以我的设置状态刚好在运行之后。 这里是我的Dockerfile的内容: FROM java:8 ADD VaultServer / EXPOSE 3971 EXPOSE 3972 ENTRYPOINT ["java", "-jar", "VaultServer.jar"]

哪个java 8 docker映像包含jmap?

我想要使​​用jmap但泊坞窗图像java:8-jre没有它。 哪个java泊坞窗图像会有?