Tag: Java

过程closures后,我可以打开自定义hsperfdata_root / PID吗?

我正在使用docker来装载我的应用程序,并希望从主机看它的性能。 我已经映射了卷:“/ opt / tmp / my_app /:/ tmp”,其中包含hsperfdata_root 我可以以某种方式打开从jmap或其他工具hsperfdata_root / PID的堆和其他信息? 容器必须处于运行状态才能进行此类debugging,否则可能会closures?

在Docker中使用Redis设置群集模式(Windows 7)

我正在尝试在集群模式下设置Redis,当我尝试使用Jedis API连接到Redis时,我在下面看到exception。 Exception in thread "main" redis.clients.jedis.exceptions.JedisNoReachableClusterNodeException: No reachable node in cluster at redis.clients.jedis.JedisSlotBasedConnectionHandler.getConnection(JedisSlotBasedConnectionHandler.java:57) at redis.clients.jedis.JedisSlotBasedConnectionHandler.getConnectionFromSlot(JedisSlotBasedConnectionHandler.java:74) at redis.clients.jedis.JedisClusterCommand.runWithRetries(JedisClusterCommand.java:116) at redis.clients.jedis.JedisClusterCommand.run(JedisClusterCommand.java:31) at redis.clients.jedis.JedisCluster.set(JedisCluster.java:103) at com.redis.main.Main.main(Main.java:18) 我正在使用以下命令启动Redis $ docker run -v /d/redis.conf:/usr/bin/redis.conf –name myredis redis redis-server /usr/bin/redis.conf 我简单的redis.conf如下所示。 port 6379 cluster-enabled yes cluster-config-file nodes.conf cluster-node-timeout 5000 appendonly yes 以下是redis启动日志。 $ docker run -v /d/redis.conf:/usr/bin/redis.conf –name myredis redis […]

玩sbt不是从斯卡拉docker形象开始

我想在docker image上运行我的play / scala应用程序bitbucketpipelines / scala-sbt:scala-2.12。 应用程序启动,但它没有任何错误消息后立即退出(如果正常终止)。 root@db0eca2925cf:~# sbt -v -XX:MaxMetaspaceSize=256m run < /dev/null [process_args] java_version = '1.8' # Executing command line: java -Xms1024m -Xmx1024m -XX:ReservedCodeCacheSize=128m -XX:MaxMetaspaceSize=256m -jar /usr/share/sbt/bin/sbt-launch.jar -XX:MaxMetaspaceSize=256m run [info] Loading project definition from /root/project [info] Set current project to MyApp (in build file:/root/) [warn] The `-` command is deprecated in favor of […]

在Docker中设置java主页

我有一个基地Ubuntu的docker图像,并安装Java 8上。 我需要在tomcat需要的时候在docker文件中设置java home。 我如何知道jre安装的位置来设置java home。

使用Docker容器的SSL客户端证书?

我是Docker的新手,并试图学习它。 我在Windows 7上使用Docker快速入门terminal。我有一个简单的要求,我在Docker容器中使用Tomcat。 我的DockerFile如下所示: FROM tomcat:8.0.47-jre7 RUN cd /usr/local/tomcat/webapps COPY test.war /usr/local/tomcat/webapps/test.war 然后,我在Docker控制台中发出简单的构build和运行命令。 test.war是一个Java Web服务。 此Web服务使用HTTPS在内部调用远程主机上的其他Web服务。 我有远程主机的证书。 我在互联网上尝试了几种方法,将这些证书导入或复制到不同的论坛/博客上提到的不同位置,但徒劳无益。 每当我使用HTTPS从test.war调用外部Web服务时,都会给我SSL握手错误。 我也有一个Java密钥库。 我试图在我的Docker文件中使用Java,并尝试使用密钥库,但是又一次徒劳。 当我在我的机器上直接安装的tomcat上使用相同的test.war时,它工作得很好。 在这种情况下,有人可以通过提供能够导入/使用SSL证书/密钥库的步骤来帮助我。 另外,如何导入多个证书?

为什么我的docker容器应用程序不能与容器couchbase数据库通信?

所以我有一个克隆的Java应用程序,和一个积极的couchbase数据库,我的本地机器上的一切。 当我运行java spring应用程序时,一切正常,应用程序将连接到数据库。 另一方面,我使用Docker容器使用相同的项目和数据库configuration。 但我似乎无法让他们沟通,当应用程序启动,我不断得到这个exception: java.net.ConnectException: Connection refused: localhost/127.0.0.1:8091 at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method) at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:717) at com.couchbase.client.deps.io.netty.channel.socket.nio.NioSocketChannel.doFinishConnect(NioSocketChannel.java:223) at com.couchbase.client.deps.io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.finishConnect(AbstractNioChannel.java:285) at com.couchbase.client.deps.io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:589) at com.couchbase.client.deps.io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:513) at com.couchbase.client.deps.io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:427) at com.couchbase.client.deps.io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:399) at com.couchbase.client.deps.io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:140) at com.couchbase.client.deps.io.netty.util.concurrent.DefaultThreadFactory$DefaultRunnableDecorator.run(DefaultThreadFactory.java:144) at java.lang.Thread.run(Thread.java:745) 我还创build了一个泊坞窗networking,我把应用程序和数据库。 任何想法为什么没有连接?

在云代工的Docker中启用HTTPS的Spring Boot应用程序

我创build了一个基于spring的应用程序,它的application.yml文件是这样的: server: port: 8108 tomcat: remote_ip_header: x-forwarded-for protocol_header: x-forwarded-proto 它也在https端口上运行。 我部署这个应用程序在云代工,它已成功部署并运行在https url,并正常工作。 现在我用下面的configuration为这个应用程序创builddockerfile: FROM frolvlad/alpine-oraclejdk8 VOLUME /tmp ADD <name-of-jar>.jar aap.jar EXPOSE 8108 ENTRYPOINT ["java","-jar","/aap.jar"] 并使用以下命令将其推送到启用docker的代工厂: cf push -m 2g –docker-image /:–docker-username 它成功部署并开始,但是当我尝试通过它的URL访问它: https://开头 我得到以下例外: 2017-10-26T18:03:52.48+0530 [APP/PROC/WEB/0] OUT javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection? 2017-10-26T18:03:52.48+0530 [APP/PROC/WEB/0] OUT 12:33:52.488 [DEBUG] [ ] [-exec-7] [ org.apache.tomcat.util.net.NioEndpoint]: Error during […]

我可以在我的Synology NAS中部署我的Java Spring-Boot应用程序吗?

我有一个REST API的Spring-Boot应用程序(Maven构build和MongoDB数据库)。 我还将在Angular 2上创build一个UI(npm build)。 我想要做的是,主办这个网站,其后端和数据库在服务器上。 我可以在Synology NAS(DS216j)上做到这一点吗? 还是我应该更好地购买像Raspberry Pi 3这样的小电脑? 我听说我们可以在Docker中部署我们的应用程序,而Synology有Docker应用程序或者某种程序? 这会帮助我实现我的目标吗? 我想从你的类似的设置一步一步的指导。

TestContainers Oracle TimeoutException

我试图使用testcontainers库与Oracle进行集成testing。 这里是简单的testing: public class SimpleTest { @Rule public OracleContainer oracle = new OracleContainer(); @Test public void simpleTest() throws SQLException { HikariDataSource ds = buildHikariDataSource(); Statement statement = ds.getConnection().createStatement(); statement.execute("SELECT 1 FROM dual"); ResultSet resultSet = statement.getResultSet(); resultSet.next(); int resultSetInt = resultSet.getInt(1); assertEquals("A basic SELECT query succeeds", 1, resultSetInt); } private HikariDataSource buildHikariDataSource() { HikariConfig hikariConfig […]

java应用程序在kubernetes中的应用程序configuration

我是新来的Java和K8,我对如何处理我的Java应用程序的应用程序configuration有一些怀疑。 我有一个春季启动应用程序,其他三个使用野蛮。 所以,他们都得到了硬编码的应用程序configuration,启动它们时只需使用如下所示: java -Dswarm.project.stage=development -jar foobar/target/foobar-swarm.jar 除了具有由应用程序configuration数据组成的application.properties文件的spring启动。 所以基本上这三个Java应用程序已经支持两个文件(我知道是不是): – project-stages.yml – standalone.xml 而当开发人员想要部署到生产时,他使用: java -Dswarm.project.stage=production -jar foobar/target/foobar-swarm.jar 而现在我们来到kubernetes,它有三种处理应用程序configuration数据的方式: 1.) Env variables 2.) Config maps 3.) Secrets 我正在考虑使用configmaps而不是envvariables,因为它们有更多的好处 。 所以,开发人员给了我用外部文件覆盖这些硬编码variables的可能性: Dsystem.properties.file = / var / foobar / environment.properties 但是我仍然用外部文件覆盖硬编码的文件,而且我对这个解决scheme不满意! 所以,我基本上看在build议可以这些硬编码的文件提供外部和填充configuration文件在K8 – 什么是处理在K8世界的configuration文件的最佳做法? Tnx,Tom