Tag: Java

当运行docker容器时,存储在src / webapp中的图像文件不会显示在前端

我在我的java webapp中存储了一些图像,但是当我把它们打包成jar并创build一个docker镜像时,这些镜像并没有显示在前端。 我该如何解决这个问题? 谢谢。

Spark Dockerconfiguration

我正在使用https://github.com/gettyimages/docker-spark/blob/master/docker-compose.yml来启动Docker组合来运行Spark环境。 它似乎成功开始 – 我可以连接到http:// master:8080 ,它说火花大师是spark:// master:7077。 'master'映射到Windows/System32/drivers/etc/hosts的Docker容器IP。 我有一个Java应用程序。 SparkSession spark = SparkSession .builder() .appName("Java Spark SQL basic example") .master("spark://master:7077") .getOrCreate(); 我得到的是以下错误: 19:20:18.240 [netty-rpc-connection-0] DEBUG oasncTransportClientFactory – 连接到master / 192.168.99.100:7077成功,运行bootstraps … 19:20:18.240 [netty-rpc-connection-0]信息oasncTransportClientFactory – 成功创build连接到master / 192.168.99.100:7077后18毫秒(在引导中花费0毫秒)19:20:18.244 [netty-rpc-connection-0] DEBUG inuRecycler – -Dio.netty.recycler.maxCapacity.default:32768 19:20:18.244 [netty-rpc-connection-0] DEBUG inuRecycler – -Dio.netty.recycler.maxSharedCapacityFactor:2 19:20:18.244 [netty-rpc-connection-0] DEBUG inuRecycler – -Dio.netty.recycler .linkCapacity:16 […]

Docker-java API在windows 10中的Eclipse中连接virtualbox ubuntu docker

我在Windows 10上安装了virtualbox,并为docker主机创build了一个Ubuntu实例。 然后在Ubuntu上安装docker。 我想使用docker-java API(我使用docker-java 3.0.12)连接docker,代码如下: DockerClientConfig config = DefaultDockerClientConfig.createDefaultConfigBuilder() .withDockerHost("tcp://192.168.5.31:2375").build(); DockerClient dockerClient = DockerClientBuilder.getInstance(config).build(); CreateContainerResponse container1 = dockerClient.createContainerCmd("tomcat:latest").withCmd("sleep", "9999") .withName("mytomcat3").exec(); dockerClient = DockerClientBuilder.getInstance().build(); dockerClient.startContainerCmd(container1.getId()).exec(); 我有以下信息: java.lang.RuntimeException: Library 'junixsocket-native-2.0.4.dll' not found! at org.newsclub.net.unix.NarSystem.getLibPath(NarSystem.java:132) at org.newsclub.net.unix.NarSystem.loadLibrary(NarSystem.java:36) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.newsclub.net.unix.NativeUnixSocket.<clinit>(NativeUnixSocket.java:35) at org.newsclub.net.unix.AFUNIXSocket.<init>(AFUNIXSocket.java:36) at org.newsclub.net.unix.AFUNIXSocket.newInstance(AFUNIXSocket.java:54) at com.github.dockerjava.jaxrs.ApacheUnixSocket.<init>(ApacheUnixSocket.java:51) at com.github.dockerjava.jaxrs.UnixConnectionSocketFactory.createSocket(UnixConnectionSocketFactory.java:66) at […]

Maven构build和dockerize Java Spring项目

我想自动化maven构build过程,并构build并运行docker容器(如果可能,使用docker-compose)并生成jar文件。 我怎么可能做一个maven命令呢?

Windows中的mesos的Spark客户端模式

我在Docker中创build了一个Mesos主服务器和从服务器。 现在我试图在Mesos中以客户端模式运行Spark。 SparkSession spark = SparkSession .builder() .appName("Java Spark in Mesos") .master("mesos://master:5050") .config("spark.executor.uri", "https://d3kbcqa49mib13.cloudfront.net/spark-2.2.0-bin-hadoop2.7.tgz") .getOrCreate(); 我得到的是这个错误 线程“main”中的exceptionjava.lang.UnsatisfiedLinkError:java.library.path中没有mesos 我知道我必须设置MESOS_NATIVE_JAVA_LIBRARY ,但Windows上的这个值应该在哪里下载呢? 在有关Linux和Mac OS X的文档中 ,没有提到Windows。

如何从一个Javadocker容器应用程序parsing文件

我有一个Java应用程序需要parsing一个数据集文件。 我使用Docker容器化了应用程序,但容器没有在我的主机中看到我的文件。 所以,我需要以某种方式将其包含在docker容器中,或通过映射到我的容器中的docker容器使其可用。 在我的Java应用程序内 String dataSet = "/usr/DataSet/TempData.txt"; // inside the container File textfile = new File(dataSet); Scanner sc = new Scanner(textfile); 和我的文件存储在我的主机目录(/ home / myusername /桌面/数据集)。 我使用maven中的spotify插件编译并构build了我的docker镜像。 生成映像后,我运行一个容器并映射包含我的TempData.txt的卷: sudo docker run -it -v /home/myUserName/Desktop/DataSet:/usr/DataSet –name myapp myImageName bash 但是我得到java.io.FileNotFoundException错误,因为该文件在我的容器中不可用。 什么是使我的Javadocker应用程序可以读取和parsing它的文件的最佳方式是什么? 感谢您的投入!

如何使用docker构buildJ2EE应用程序

我一直对这个问题感到困惑。从我的angular度来看,docker已经被用来封装应用程序,用于开发(制作卷),testing和部署。 我的问题是,使用maven构buildJ2EE需要mvn clean & mvn package ,然后将war文件转储到tomcat webapp中。 有没有更方便的方法来实现这一点,如我改变了代码,然后结果会自动显示当我访问容器的IP?

liquibase脚本通过maven进行集成testing,在docker中运行

正如标题所说,我试图find一种方法来运行liquibase脚本,我们已经从maven的新鲜的mysql docker图像运行集成testing。 到目前为止,我只findmaven插件来运行我的docker容器,并且设法从我需要的其他项目中将liquibase xmls和sqls拖到当前的项目中。 <plugin> <groupId>org.jolokia</groupId> <artifactId>docker-maven-plugin</artifactId> <version>0.13.9</version> <configuration> <useColor>true</useColor> <verbose>true</verbose> <removeVolumes>true</removeVolumes> <images> <image> <name>mysql:5.7.9</name> <run> <env> <MYSQL_ROOT_PASSWORD>${mypassword}</MYSQL_ROOT_PASSWORD> </env> <ports> <port>3306:3306</port> </ports> <volumes> <bind> <volume> ${project.build.testOutputDirectory}/db-scripts:/tmp/import:ro </volume> </bind> </volumes> </run> </image> </images> </configuration> <executions> <execution> <id>start</id> <phase>pre-integration-test</phase> <goals> <goal>start</goal> </goals> </execution> <execution> <id>stop</id> <phase>post-integration-test</phase> <goals> <goal>stop</goal> </goals> </execution> </executions> </plugin> 但是我仍然在努力寻找一种方法,在所有集成testing之前,如何将所有这些脚本应用到docker中运行的数据库上。 有人可以请你澄清一下这个问题。 谢谢 UPD:find了liquibase maven插件,但是仍然面临mysql […]

将证书添加到密钥存储区和信任存储区

以私有格式certificate私钥(客户端)和客户端证书,我必须将其添加到信任存储和密钥库中。 我怎么能这样做? 直到现在我有命令在Windows(Windows)中: 生成pkcs(key:客户端私钥,cert:客户端证书,ca:cacert):openssl pkcs12 -inkey key.pem -in cert.pem -export -out keystored.p12 -certfile ca.pem keytool -importkeystore -destkeystore mykeystore.jks -srckeystore keystore.p12 -srcstoretype pkcs12 这些命令是正确的吗? 我写了一个通过ssl连接服务器的程序。 然而,它显示线程“主”javax.net.ssl.SSLPeerUnverifiedException中的错误exception:未在sun.security.ssl.SSLSessionImpl.getPeerCertificates(未知源) 程序如下:(程序是获得docker信息) package test_abc; import java.io.File; import java.io.FileInputStream; import java.io.InputStream; import java.security.KeyStore; import java.security.SecureRandom; import javax.net.ssl.KeyManager; import javax.net.ssl.KeyManagerFactory; import javax.net.ssl.SSLContext; import javax.net.ssl.TrustManager; import javax.net.ssl.TrustManagerFactory; import org.apache.http.HttpEntity; import org.apache.http.HttpResponse; import org.apache.http.client.methods.HttpGet; import […]

重新启动后,Akka actor不会重新连接到远程Actor

所以我有2个docker运行2个akka系统。 集装箱A运行系统A. 容器B运行系统B. 当系统A加载时,它通过以下方式连接到系统B: Await.result(system.actorSelection(actorPath).resolveOne(new Timeout(RESOLVE_DURATION)), RESOLVE_DURATION) 这里的一切都很好,连接是成功的,系统交换消息。 然后我重新启动容器B. docker restart container-b 在系统A上,如果系统B被终止,我会添加一个监视。 当我重新启动系统B时,系统A中出现akka终止消息 – 一切正常。 然后,我每5秒钟启动一个重新连接循环,并尝试重新连接到系统B: Await.result(system.actorSelection(actorPath).resolveOne(new Timeout(RESOLVE_DURATION)), RESOLVE_DURATION) 但是现在,我得到了一个ActorNotFoundexception。 [ERROR] [21/08/2017 08:11:49.851] [exchange-akka.actor.default-dispatcher-14] [akka.remote.EndpointWriter] AssociationError [akka.tcp://system@systemA:2555] -> [akka.tcp://system@systemB:2550]: Error [Shut down address: akka.tcp://system@systemB:2550] [ akka.remote.ShutDownAssociation: Shut down address: akka.tcp://system@systemB:2550 Caused by: akka.remote.transport.Transport$InvalidAssociationException: The remote system terminated the association because it is shutting down. […]