相关疑难解决方法(0)

如何使用Python获取系统主机名?

我正在为本地网络编写聊天程序.我希望能够识别计算机并使用Python获取用户设置的计算机名称.

python hostname

628
推荐指数
12
解决办法
47万
查看次数

Docker - 在java应用程序中获取绑定端口

我正在创建一个像我的图像的实例

docker run -P webmodule-xy
Run Code Online (Sandbox Code Playgroud)

webmodule的Dockerfile公开了一个端口(例如8080).

我现在的目标是获取可通过Java从外部访问的映射/分配端口号.是否有环境变量或类似的东西?

用例:webmodule-xy应该在另一个Web应用程序上注册并提供其IP +端口,以便其他应用程序可以在以后联系webmodule-xy.IP没问题,但端口是.

我已经在GitHub上找到了这个未解决的问题,但我无法相信没有简单的解决方案.就像那里所说,REST不是一个选项:

允许容器访问REST API是有问题的.首先,REST API是可读/写的,如果你需要的只是阅读你的portmappings,那么授予容器只是为了找到几个端口是一种危险的权限级别.

java environment-variables docker

9
推荐指数
1
解决办法
1331
查看次数

如何从node.js应用程序获取docker映射的端口?

我想从node.js应用程序内部获取映射端口。

例如

docker-compose

my-app:
    build:
        context: ./my-app
    ports:
        - "80"     
    volumes:
        - /var/run/docker.sock:/tmp/docker.sock
    networks:
        - private
Run Code Online (Sandbox Code Playgroud)

docker ps -a

1234 my-app "/usr/local/bin/dock…"   About a minute ago   Up About a minute   0.0.0.0:33962->80/tcp
Run Code Online (Sandbox Code Playgroud)

我想33962从node.js应用程序获取端口。

有任何想法吗?

node.js docker docker-compose

8
推荐指数
2
解决办法
494
查看次数

从容器中获取Docker映像摘要/哈希

我知道可以访问docker api,以下命令可以正常工作:
curl -s --unix-socket /var/run/docker.sock http:/v1.24/containers/$HOSTNAME/json | jq -r '.Image'

但是,我真的想避免将暴露docker.sock给容器本身,因为它是CI构建的一部分。是否有其他方法可以2acdef41a0c从容器自身内部检索容器图像ID /哈希值(即),而无需暴露容器并向容器docker.sock发出curl请求?

也许像这里的Docker所示,如何从容器中获取容器信息

jenkins docker docker-swarm

7
推荐指数
1
解决办法
1285
查看次数

如何使用 cgroup v2 从容器内获取 docker 容器 ID

由于 Docker 自引擎版本 20.10 起支持 cgroup v2,它将自动在启用了 cgroups v2 的发行版上使用它。从容器内获取唯一容器 ID 的已知解决方案不再有效。

/ # cat /proc/self/cgroup
0::/

/ # cat /proc/1/cpuset
/
Run Code Online (Sandbox Code Playgroud)

在 Debian 11 上使用 alpine:latest 尝试使用 docker v20.10.8。

cgroup v1 的工作解决方案: 如何从容器本身获取 Docker Linux 容器信息?

正如 docker 参考中所述,使用 cgroup v2,容器 id 在文件系统中的以下位置仍然可见,但无法从容器本身访问这些位置。

/sys/fs/cgroup/memory/docker/<longid>/ on cgroup v1, cgroupfs driver
/sys/fs/cgroup/memory/system.slice/docker-<longid>.scope/ on cgroup v1, systemd driver
/sys/fs/cgroup/docker/<longid/> on cgroup v2, cgroupfs driver
/sys/fs/cgroup/system.slice/docker-<longid>.scope/ on cgroup v2, systemd driver
Run Code Online (Sandbox Code Playgroud)

https://docs.docker.com/config/containers/runmetrics/#find-the-cgroup-for-a-given-container

编辑 1/2021-09-01:

一种解决方法是使用选项运行容器--cgroupns host。但这需要控制容器的创建。

/ # cat /proc/self/cgroup
0::/ …
Run Code Online (Sandbox Code Playgroud)

linux cgroups docker

7
推荐指数
1
解决办法
94
查看次数

动态获取由docker run命令创建的运行中容器ID /名称

因此,我试图动态运行下面的shell脚本,该脚本需要容器的容器ID /名称(将在其中运行脚本)。

一种方法是做docker ps然后获取容器ID,但这不会是动态的。

那么有没有办法动态地做到这一点?

#!/bin/bash
docker exec <container id/name> /bin/bash -c "useradd -m <username> -p <password>"
Run Code Online (Sandbox Code Playgroud)

linux bash docker

6
推荐指数
3
解决办法
4851
查看次数

从自身内部获取 Kubernetes POD 的完整 ID(正在运行的容器)

如何在 Kubernetes 中从自身内部获取容器的完整 id。我想在作为 Kubernetes 容器运行的应用程序日志中添加容器 ID

logging containers kubernetes

6
推荐指数
2
解决办法
1462
查看次数

如何在java代码中获取docker容器名称

如果我在 Docker 容器中运行一个 java 应用程序,并且我想从同一个 java 应用程序代码中获取正在运行的 docker 容器的名称(我的 java 应用程序在其中运行),那么通过 java 获取容器名称的方法是什么?代码?

请注意,我希望在容器内运行的同一个 java 应用程序中使用 java 代码。

java containers docker

5
推荐指数
1
解决办法
3640
查看次数

如何从里面获取容器名称?docker.io

如何从容器内获取docker的容器名称?

我不能使用inspect因为我必须使用容器内部的脚本来从JSON url获取信息.

containers docker

3
推荐指数
4
解决办法
1万
查看次数

如何获取docker容器内的服务及其状态?

我在 Linux 服务器中有 docker 容器,我需要知道如何获取容器内应用程序、服务及其状态的详细信息。我需要执行哪个命令才能获取这些详细信息。

例如:

容器包含 tomcat 服务器。我需要获取 tomcat 服务器的详细信息及其状态(服务是否正在运行)。

我不知道是否有任何命令可以获取这些详细信息。

docker

3
推荐指数
1
解决办法
4万
查看次数

PHP:获取 Docker 容器中的容器 ID

如何使用 PHP 获取容器本身内的 Docker 容器 ID?

我刚刚发现 linux 命令如下

DOCKER_CID=$(cat /proc/1/cpuset | cut -c9-)
Run Code Online (Sandbox Code Playgroud)

php containers docker php-7.2

2
推荐指数
1
解决办法
2597
查看次数