问题标签 [docker-java]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1226 浏览

java - Docker-Java:使用参数启动容器

我正在尝试使用 docker-java 启动一个 docker 容器。使用该方法DockerClient.startContainerCmd对我有用,但我需要使用参数启动容器。从这个方法返回的StartContainerCmd类在我执行它之前没有任何方法来提供参数。

有没有办法做到这一点?

0 投票
3 回答
118112 浏览

java - 如何在基于 Docker 映像的 java:8-jdk-alpine 中使 curl 可用并保持映像干净?

我们有运行 curl 命令以获取某些结果的 java 代码。

我们已经建立了一个jar文件并且jar文件执行得很好

现在,当我们尝试对 java 程序进行 docker 化(使用 jar)并在 docker 中运行应用程序时,我们会收到以下错误:

使用的 Dockerfile:

0 投票
0 回答
341 浏览

java - 使用 Docker 启动 mariaDB 容器和启动脚本

我正在通过 Java 的docker runwith-v pathToSQL:/docker-entrypoint-initdb.d/script.sql选项创建一个 mariaDB 容器。我不知道如何找出容器何​​时准备好与我的 JDBC 客户端连接。如何确定初始脚本何时停止执行并且数据库已准备好工作?我想避免类似的东西Thread.sleep(20000),这是我目前的解决方案。我想实现这样的目标:

0 投票
2 回答
2036 浏览

java - 从 Java 禁用 Docker 容器中的 IPv6

从 Java 代码启动 Docker 容器时,我需要禁用 IPv6。使用命令行,如下:

docker run --sysctl net.ipv6.conf.all.disable_ipv6=1 ...

  • 是否可以做同样的事情,但将 Java 与 Spotify 的docker-client一起使用?

  • 作为替代解决方案......可以使用docker-java吗?

0 投票
0 回答
169 浏览

java - 在 docker 容器内使用时通过 SQLCMD 的 MSSQL 数据库实例连接问题

我正在尝试编写 java 代码来自动化我执行的 docker 命令。我实际上正在创建一个 mssql docker 容器,然后想要在该容器中恢复数据库备份。我可以使用 docker 命令来实现这一点,但使用 docker-java 复制它时遇到了麻烦。

到目前为止,我已经实现了这一点:

但是,它无法连接并出现以下错误:

注意:当我执行以下命令时,它可以工作:

我什至尝试在创建容器时不使用网络并排除“withNetworkMode”映射,但没有任何效果。

任何帮助将不胜感激!

谢谢!

0 投票
0 回答
421 浏览

docker-compose - TestContainers:重用来自 DockerComposeContainer 的网络以在其他 GenericContainer 中使用?

有一个方法:

org.testcontainers.containers.GenericContainer#withNetwork

我可以使用 TestContainers lib 生成具有相同网络的容器。

但是 DockerComposeContainer 呢,首先我启动它,然后我想从中获取一个网络,并在生成以下 GenericContainers 时重用同一个网络。

现在甚至可能吗?

0 投票
3 回答
6499 浏览

java - 如何在@SpringBootTest 之前添加设置并且只运行一次?

我有一个 docker DB 设置方法,目前位于@BeforeAll. 目前,构造如下

有多个测试类都扩展了这个 Test 超类,每个测试类将构建一个容器并在完成后将其删除。因此,maven 管理 docker 会耗费大量时间。(创建和删除)

我的问题是whether there's better way to deal with it

我可能想要实现的理想情况是,这个容器创建和删除只在@SpringBootTest 启动之前运行一次,它将与所有测试类共享。同时,它也不会阻止其他开发人员为某些角落场景创建新容器。

我有一些不完整的想法:

  1. 在 SpringBoot 主类中添加 Constructor 触发器,如果​​是 Test 启动的,则运行 Docker 容器构造函数。但这也意味着我在 Main Class 中添加了一些测试相关的代码,使它们耦合在一起。个人讨厌这种情况发生
  2. 覆盖 SpringBootTest。压倒我是否应该这样做的错误。

请分享您的绝妙想法,如果它可以解决此问题或部分解决此问题,我将不胜感激。

0 投票
1 回答
54 浏览

java - Docker:使用 docker-java 将用户定义网络中的端口发布到特定主机 IP 地址

我正在尝试实现与此类似的东西:

使用 docker-java。我发现使用 docker-java 发布/映射端口的唯一示例是使用CreateContainerCmd类的.withExposedPorts 。在这里

我没有看到任何指定主机 IP 地址的方法。我想知道这是否受到 docker-java 项目的支持?

0 投票
2 回答
1238 浏览

java - 如何通过 Docker-java 获取现有容器 ID 的列表

在 Java 代码中,我需要使用 Docker-java 库管理 docker 容器(重新启动、停止、启动 ...)。 https://github.com/docker-java/docker-java

在 Docker-Java 示例中,我找到了创建和获取容器的方法: https ://github.com/docker-java/docker-java/wiki

在命令行中我们可以使用:

但我需要通过 JAVA 代码来完成。我需要获取现有容器的 ID,然后获取它们的 IP 地址并使用 restartContainerCmd 方法重新启动它。

0 投票
2 回答
3471 浏览

docker - 如何在我的本地主机上获取 docker 主机 URI

是否有可以评估 ( eval $COMMAND) 的命令或可以检查以获取本地运行的 docker 主机的 URI 的环境变量?我需要成为在运行时评估的表达式,因为我需要在一个脚本中使用它,该脚本旨在在 docker 引擎可能未在标准端口上运行的主机上运行。

谢谢。