gpt4 book ai didi

docker - 如何从容器内在主机上运行 podman 命令

转载 作者:行者123 更新时间:2023-12-02 18:35:21 29 4
gpt4 key购买 nike

对于 docker,这可以通过在容器内安装 docker.sock 来实现。

但是由于podman中没有守护进程。 docker.sock 的替代品是什么?

我通常想检查主机上显示的 podman 镜像并启动一个新容器。

我将 Podman 与 --privileged=true 和 root 一起使用。

最佳答案

blog post 中宣布了一个新的 API(状态:实验性) 2020 年 1 月。

[root@fedora31 ~]# podman --version
podman version 1.8.0
[root@fedora31 ~]# podman system service --timeout 500000 unix://root/foobar.sock
This function is EXPERIMENTAL.

由于 API 仍处于试验阶段,这可能会有所改变,但现在您可以像这样进行查询:

[root@fedora31 ~]# curl -s --unix-socket /root/foobar.sock http://d/v1.24/images/json | python3 -m json.tool
[
{
"Containers": 0,
"Created": 1572319417,
"Id": "f0858ad3febdf45bb2e5501cb459affffacef081f79eaa436085c3b6d9bd46ca",
"Labels": {
"maintainer": "Clement Verna <cverna@fedoraproject.org>"
},
"ParentId": "",
"RepoDigests": [
"sha256:8fa60b88e2a7eac8460b9c0104b877f1aa0cea7fbc03c701b7e545dacccfb433"
],
"RepoTags": [
"docker.io/library/fedora:latest"
],
"SharedSize": 0,
"Size": 201095865,
"VirtualSize": 201095865,
"CreatedTime": "0001-01-01T00:00:00Z"
},
null
]
[root@fedora31 ~]#

添加了命令 python3 -m json.tool 以漂亮地打印 JSON 输出。

我认为可以使用绑定(bind)安装技术(在问题中提到)从容器内部访问 UNIX 套接字。

根据man page ,命令 podman system service 也接受标志 --varlink

使用 Varlink 而不是新 API 现在可能是更好的解决方案,因为它更成熟,但将来会被弃用。

关于docker - 如何从容器内在主机上运行 podman 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59574914/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com