问题标签 [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.
java - Docker-Java:使用参数启动容器
我正在尝试使用 docker-java 启动一个 docker 容器。使用该方法DockerClient.startContainerCmd
对我有用,但我需要使用参数启动容器。从这个方法返回的StartContainerCmd
类在我执行它之前没有任何方法来提供参数。
有没有办法做到这一点?
java - 如何在基于 Docker 映像的 java:8-jdk-alpine 中使 curl 可用并保持映像干净?
我们有运行 curl 命令以获取某些结果的 java 代码。
我们已经建立了一个jar文件并且jar文件执行得很好
现在,当我们尝试对 java 程序进行 docker 化(使用 jar)并在 docker 中运行应用程序时,我们会收到以下错误:
使用的 Dockerfile:
java - 使用 Docker 启动 mariaDB 容器和启动脚本
我正在通过 Java 的docker run
with-v pathToSQL:/docker-entrypoint-initdb.d/script.sql
选项创建一个 mariaDB 容器。我不知道如何找出容器何时准备好与我的 JDBC 客户端连接。如何确定初始脚本何时停止执行并且数据库已准备好工作?我想避免类似的东西Thread.sleep(20000)
,这是我目前的解决方案。我想实现这样的目标:
java - 从 Java 禁用 Docker 容器中的 IPv6
从 Java 代码启动 Docker 容器时,我需要禁用 IPv6。使用命令行,如下:
docker run --sysctl net.ipv6.conf.all.disable_ipv6=1 ...
是否可以做同样的事情,但将 Java 与 Spotify 的docker-client一起使用?
作为替代解决方案......可以使用docker-java吗?
java - 在 docker 容器内使用时通过 SQLCMD 的 MSSQL 数据库实例连接问题
我正在尝试编写 java 代码来自动化我执行的 docker 命令。我实际上正在创建一个 mssql docker 容器,然后想要在该容器中恢复数据库备份。我可以使用 docker 命令来实现这一点,但使用 docker-java 复制它时遇到了麻烦。
到目前为止,我已经实现了这一点:
但是,它无法连接并出现以下错误:
注意:当我执行以下命令时,它可以工作:
我什至尝试在创建容器时不使用网络并排除“withNetworkMode”映射,但没有任何效果。
任何帮助将不胜感激!
谢谢!
docker-compose - TestContainers:重用来自 DockerComposeContainer 的网络以在其他 GenericContainer 中使用?
有一个方法:
org.testcontainers.containers.GenericContainer#withNetwork
我可以使用 TestContainers lib 生成具有相同网络的容器。
但是 DockerComposeContainer 呢,首先我启动它,然后我想从中获取一个网络,并在生成以下 GenericContainers 时重用同一个网络。
现在甚至可能吗?
java - 如何在@SpringBootTest 之前添加设置并且只运行一次?
我有一个 docker DB 设置方法,目前位于@BeforeAll
. 目前,构造如下
有多个测试类都扩展了这个 Test 超类,每个测试类将构建一个容器并在完成后将其删除。因此,maven 管理 docker 会耗费大量时间。(创建和删除)
我的问题是whether there's better way to deal with it
我可能想要实现的理想情况是,这个容器创建和删除只在@SpringBootTest 启动之前运行一次,它将与所有测试类共享。同时,它也不会阻止其他开发人员为某些角落场景创建新容器。
我有一些不完整的想法:
- 在 SpringBoot 主类中添加 Constructor 触发器,如果是 Test 启动的,则运行 Docker 容器构造函数。但这也意味着我在 Main Class 中添加了一些测试相关的代码,使它们耦合在一起。个人讨厌这种情况发生
- 覆盖 SpringBootTest。压倒我是否应该这样做的错误。
请分享您的绝妙想法,如果它可以解决此问题或部分解决此问题,我将不胜感激。
java - Docker:使用 docker-java 将用户定义网络中的端口发布到特定主机 IP 地址
我正在尝试实现与此类似的东西:
使用 docker-java。我发现使用 docker-java 发布/映射端口的唯一示例是使用CreateContainerCmd类的.withExposedPorts 。在这里。
我没有看到任何指定主机 IP 地址的方法。我想知道这是否受到 docker-java 项目的支持?
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 方法重新启动它。
docker - 如何在我的本地主机上获取 docker 主机 URI
是否有可以评估 ( eval $COMMAND
) 的命令或可以检查以获取本地运行的 docker 主机的 URI 的环境变量?我需要成为在运行时评估的表达式,因为我需要在一个脚本中使用它,该脚本旨在在 docker 引擎可能未在标准端口上运行的主机上运行。
谢谢。