问题标签 [spotify-docker-client]
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 - Spotify docker客户端无法在一次操作中启动容器并执行命令?
我有以下一段代码,它使我能够启动 Docker 容器并随后运行附加了 Stdout 和 Stderr 的命令。这里的问题是它启动了容器,但当然在我能够在容器内执行命令之前退出容器。如何启动容器并在容器内执行命令(在这种情况下ls
)并保持 stdout 和 stderr 连接而不会收到“无法在停止状态下执行”错误消息?
java - 读取带有“跟随”标志的容器日志,线程被永远阻塞
给定后端,处理用户读取容器日志的请求(带有跟随选项)。使用以下方法:
Where threadPool
is just a Executors.newCachedThreadPool()
and emitter
is Spring's SseEmitter
。
问题是:当用户不再想阅读日志时,他只是关闭了连接,但该线程仍在运行(logStream.hasNext()
正在调用的执行被阻塞InputStream.read(..)
)。
据我了解,hasNext()
永远不会返回false
(至少在容器正常运行时),所以这个循环是无止境的,我们需要以某种方式停止它。我尝试过的可能解决方案:
没有成功。没有抛出 InterruptedException。
问题:有什么方法可以解除线程阻塞?或者也许有另一种解决这个问题的方法(即有可能停止等待日志)?
java - 是否有 docker 客户端对容器执行检查点
我正在使用 docker 客户端(spotify/docker-client)来创建容器或使用 docker 的任何其他命令。
现在我想使用客户端进行检查点,问题是客户端没有该请求的 API,但我可以使用 cli 来完成,如下所示:
它与 docker 引擎的工作处于实验模式。
我的问题:我可以使用具有这些功能的其他 docker 客户端吗?
java - 将 Docker Secrets 与 Spotify Docker 客户端一起使用
我正在使用 Spotify 的 Docker-Client,但遇到了文档墙。我试图弄清楚如何将已经在环境中创建的 docker 机密传递给使用 docker-client 构建的容器。该文档仅显示了如何创建机密,但这并不是很有用,因为机密已经存在。我可以使用 in 获取环境中的机密列表listSecrets
,DockerClient
但我无法将它们从 转换Secret
为SecretBind
. 很感谢任何形式的帮助。
java - 无法通过 Spotify Docker 客户端将文件复制到 Docker 容器
我想通过Spotify的 Docker 客户端将文件复制到未运行的容器-
文件的创建方式如下 -
当我尝试:
我得到:
好吧,我在使用RUN touch /app/my_json.json
Next run 构建映像时创建了这个文件:
导致
好的...我尝试了目录
结果:
相同的"/app"
任何想法如何通过 Java 客户端将文件复制到 docker 容器中?
docker - Docker (Spotify) API - 无法连接到 Docker
在我的 Docker (Spring Boot) 应用程序中,我想执行 Docker 命令。我使用 docker-spotify-api(客户端)。
我收到不同的连接错误。我将应用程序作为 docker-compose.yml 的一部分启动。
这是我迄今为止在 EC2 AWS VPS 上尝试过的:
这是我在 EC2 VPS 上的环境:
docker - Spotify docker 客户端:如何获取已启动容器的标准输出和标准错误?
我知道我可以创建带有无限循环的容器:
docker.execCreate
然后使用and在这个容器中执行一个命令docker.execStart
。在这种情况下获取 stdout 和 stderr 不是问题。
但我想知道我是否可以让事情变得更简单。我想这样执行command
:
并访问标准输出和标准错误。可能吗?
java - Spotify docker client: How to achieve --network=host functionality?
To use host network in a container one can execute docker run --network=host image
. How can I achieve it using this API?
java - 跳过一个模块的 maven 部署
我有一个多模块 Maven 项目。父 pom 看起来像这样:
common
构建一个 jar,将其作为依赖项添加到其他模块中,如下所示:
模块a
和b
是具有spotify docker 插件的 Spring Boot 项目。
我需要能够运行mvn deploy
才能让 spotify 插件推送 docker 映像。
mvn install
工作正常,它构建了 docker 图像。但是为了推动它们,当我运行时,它会为模块mvn deploy
引发错误:common
[错误] 无法执行目标 org.apache.maven.plugins:maven-deploy-plugin:2.7:deploy (default-deploy) on project common:部署失败:存储库元素未在 distributionManagement 元素内的 POM 或 - DaltDeploymentRepository=id::layout::url 参数
搜索此错误,此答案distributionManagement
建议在该部分中添加存储库 url 。但我不想部署common
. 我只是想构建它,所以它作为依赖注入到其他模块中并部署那些其他模块。我怎样才能做到这一点?
我试图只部署a
并b
使用此命令,但它给出了相同的错误common
: