Tag: Java

docker集装箱之间的连接失败

我的应用程序由一个独立的java服务器,一个客户端java web启动应用程序,一组所有在一个wildfly实例中运行的webapps以及postgres组成。 客户端容器只是一个服务于JNLP和相应的java客户端的nginx服务器。 我所有的容器都在同一台主机上运行。 这里是我的dockerfile的一个稍微精简版本: version: '3' services: server: privileged: true image: <server_image> networks: – myapp client: image: <client_image> networks: – myapp webapp: privileged: true image: <wildfly_image> networks: – myapp postgres: image: <postgres_image> volumes: – /pgdata:/pgdata networks: – myapp lb: image: dockercloud/haproxy:latest environment: – FORCE_DEFAULT_BACKEND=False – ADDITIONAL_BACKEND_WEBAPPS=server webapp1 webapp:8080 – ADDITIONAL_BACKEND_CLIENT=server client1 client:80 – ADDITIONAL_BACKEND_SERVER=mode […]

如何将第三方jar添加到maven容器泊坞窗

您好,我已经开发了一个Java应用程序,将采取从MsSql数据库的数据,并推送这个数据到Salesforce帐户。 我已经创build了这个项目作为Maven项目。 用于Sql和salesforce的Jars是本地的。 我已经安装在本地使用 mvn install:install-file -Dfile=<path-to-file> -DgroupId=<group-id> \ -DartifactId=<artifact-id> -Dversion=<version> -Dpackaging=<packaging> 并且能够在Tomcat服务器上部署该项目,并且工作正常。 如何在Docker中创build的Maven Container中执行相同的操作。 注意:我已经创build了maven容器,并在其上创build了tomcat服务器。 当我尝试部署此应用程序时,生成失败。 任何帮助!

如何访问Windows的Tomcat服务器来build立从Docker文件的Docker镜像,而无需下载新的Tomcat?

我是Docker的新手。 我为.war文件创build了docker文件。 当我从Docker文件构buildDocker镜像时。 它开始下载tomcat8但是,我想使用Tomcat,我已经在我的窗口中创build从docker文件的docker图像,而不是从互联网上下载。 Docker文件 FROM tomcat:8.5.11-jre8 COPY helloaws.war /usr/local/tomcat/webapps/helloaws.war 运行命令docker build -t helloaws . 它开始下载tomcat8。 请让我知道是否有任何方法可以使用已经安装的Windows Tomcat服务器。 提前致谢。

如何在RHEL7和Oracle Java 8上构buildDockerfile

我的最终目标是安装Oracle Java的RHEL容器,然后我将安装一些Spinnaker RPM。 我还没有注册RHEL,所以我用centos做了。 这是我到目前为止: FROM centos:7 MAINTAINER delivery-engineering@netflix.com COPY . workdir/ WORKDIR workdir ENV JAVA_HOME="/usr/bin" RUN yum -y install wget && \ yum -y install which && \ wget –no-cookies –no-check-certificate –header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jre-8u131-linux-x64.rpm" && \ rpm -ivh jre-8u131-linux-x64.rpm # rpm -i spinnaker-orca.rpm # CMD ["/opt/orca/bin/orca"] 我的问题是,JAVA_HOME是不正确的,我不能运行容器足够长的时间来执行它,并找出正确的variables。 此外,尝试启动RPM失败,没有正确的JAVA_HOME,所以它被注释掉。

Docker java将启动parameter passing给jar

这是我的Dockerfile: FROM java:8 EXPOSE 8080 ADD target/Demo.jar demo.jar RUN sh -c 'touch /demo.jar' ENV JAVA_OPTS="" ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /demo.jar" ] 而我的问题是如何传递一些启动参数像在正常调用.jar文件。 例如,当我打电话给: java -jar demo.jar param1 param2 然后我可以得到param1在我的应用程序,所以告诉我如何执行我的Dockerfile传递参数?

如何从DockerClient.waitContainerCmd()等待ResultCallback?

在我们的J2EE项目中,我们通过依靠docker -java调用java代码中的sjourdan / ffmpeg docker来进行一些video转换。 就目前来看,它看起来像这样(为了简洁,相当简化): CreateContainerCmd createCommand = dockerClient.createContainerCmd("sjourdan/ffmpeg") .withVolumes(aVolume) .withBinds(aBind) .withCmd("a lot of options about the conversion itself, codec, ratio, …"); CreateContainerResponse container = createCommand.exec(); dockerClient.startContainerCmd(container.getId()).exec(); // vanilla implementation of ResultCallback MyResultCallback callback = new MyResultCallback(); dockerClient.waitContainerCmd(container.getId()).exec(callback); 事实上,这个线程一直在等待callback被callback。 我们应该如何强制线程等待直到callback被调用,通知我们docker命令已经完全结束了? 在另一个说明中,如果有人知道如何使用–rm -java将–rm参数添加到正在docker run的–rm docker run命令中,我很感兴趣。

Tomcat在启动时冻结在Docker容器中

这是事情。 我有以下的Dockerfile: DOCKERFILE FROM centos:centos7 MAINTAINER Legos ADD epel-release-7-9.noarch.rpm /etc/extras/epel-release-7-9.noarch.rpm RUN rpm -Uvh /etc/extras/epel-release*rpm # Install prepare infrastructure RUN yum -y update && \ yum -y install wget && \ yum -y install tar && \ yum -y install haveged && \ yum -y install rng-tools RUN chkconfig haveged on # Prepare environment ADD jdk* […]

将application.properties外部化为docker env

我正在开发一个使用spring-boot和Docker的应用程序。 出于安全原因,我不想使用更多的application.properties,只使用environnementvariables。 如果您有最佳做法,我将不胜感激。 这是我的docker-compose.yml snipet version: "2.1" services: app_users: image: images/app_users container_name: app_user_ctn build: context: ../.. dockerfile: docker/dev/Dockerfile ports: – "30333:8080" external_links: – mysql environment: SPRING_DATASOURCE_URL: jdbc:mysql://mysql/myDB?autoReconnect=true SPRING_DATASOURCE_USERNAME: mysqluser1 SPRING_DATASOURCE_PASSWORD: mysqlpwsword SPRING_DATASOURCE_DRIVER_CLASS_NAME: com.mysql.jdbc.Driver LDAP_PASSWORD: ldapPswd LDAP_URLS: ldap://myServer:389 LDAP_USERNAME: cn=admin,dc=com,dc=expl 当我向ldap发出请求时,我得到NulPointerException,因为ldap environnementvariables没有初始化。 当我使用application.yml它的作品。 … spring: ldap: password: ldapPswd urls: ldap://myServer:389 username: cn=admin,dc=com,dc=expl …. 你有什么想法吗? 最好的祝福

Docker Phantomjs驱动程序访问

我有一个docker容器,它的弹簧启动应用程序。 从这个docker容器我想访问本地phantomjs驱动程序。 当我在Docker中运行我的容器时,它给出'驱动程序可执行文件不存在:/ usr / bin / phantomjs'exception,但是我的phantomjs驱动程序存在于此path下。 这个docker容器如何访问'/ usr / bin / phantomjs'文件? 我应该在Docker文件中添加这一行VOLUME / usr / bin / phantomjs吗? 幻影版本是:2.1.1

在Docker环境中直接将Java代码编译成本地exe文件是否有用?

Docker也是一种虚拟机,那么我们真的需要JVM来运行我们的Java代码。 相反,我们可以直接编译为本机可执行文件。 Docker容器将打包完整的依赖关系来运行exe。 请给出意见。 我不想启动Java语言的任何比较。 只是想了解在Docker容器中运行JVM的优点。