如何在java代码中获取docker容器名称
如果我在一个Docker容器中运行一个java应用程序,并且想从同一个java应用程序代码中获取正在运行的docker容器的名称(在其中运行我的java应用程序),那么通过java获取容器名称的方法是什么码?
请注意,我想要在容器中运行的相同的Java应用程序中有Java代码。
你可以确定你已经安装了docker.sock
,并且从那里调用docker.sock
检查 (因为你可以用Java调用docker命令 )
但是这似乎过于复杂(并且依赖hostname
在启动容器时未被覆盖: 它在边缘情况下不起作用 )
更简单的解决scheme是在运行容器时将容器名称作为环境variables传递:
docker run -e name=<containerName> --tag <containerName> ...
这样,您可以从Java查询您在启动容器时设置的环境variables 。
- 多应用程序作为集群中的Docker容器,处理MySQL的方法
- pika.BlockingConnection()在容器内失败,在VM中运行良好
- 如何正确configurationVirtualBox的DNSconfiguration来parsing本地networking中的docker容器主机名?
- 如何使用Kubernetes与websocket做多人在线游戏?
- 运行时,Kubectl不断重启容器
- 不能通过IP地址访问docker容器
- 有没有社区托pipe的分布式云解决scheme?
- 警告:无法删除容器“openshift_s2i-build_nodejs-mongo-persistent-
- 如何从主机恢复MySQL转储到Docker容器