- 主题:怎么在一个docker里执行另外一个docker里的命令?
把系统的/var/run/docker.sock 挂载到容器内部,然后就可以在这个容器内部执行docker exec 命令了
【 在 wjhtingerx (ca6140) 的大作中提到: 】
: rt
:
:
:
--
FROM 120.245.94.*
这种玩法,容器意义何在
容器不许挂掉?或者两个容器一起挂掉?
不然ID变了
【 在 galaxy123 的大作中提到: 】
: 可以 host 告诉第一个docker 第二个docker的id。
--
FROM 114.249.18.*
这种玩法要是能上生产环境
那。。。当我啥也没说。。。
【 在 eGust 的大作中提到: 】
: 你这问题就是典型的 xy problem
: container 承担的责任是独立的 service,压根就不应该更不需要知道自己或者其它的服务是否在 container 内
: 搞编译一般都是 multi-stage。多 containers 管理,简单的有 docker compose,复杂的话直接上 k8s 了
: ...................
--
FROM 114.249.18.*
无论实际情况,先把docker用起来,最后就只能是这种用法了
【 在 eGust 的大作中提到: 】
: 标 题: Re: 怎么在一个docker里执行另外一个docker里的命令?
: 发信站: 水木社区 (Fri Feb 17 04:57:29 2023), 站内
:
: 这都啥山寨用法……
:
: 【 在 galaxy123 的大作中提到: 】
: : 可以 host 告诉第一个docker 第二个docker的id。
:
: --
:
: ※ 来源:·水木社区 mysmth.net·[FROM: 203.184.25.*]
--
FROM 222.71.112.*
没意义。 最好通过http网络服务传递消息,或上数据库,message queue等。
【 在 littleSram (littleSram) 的大作中提到: 】
: 这种玩法,容器意义何在
: 容器不许挂掉?或者两个容器一起挂掉?
: 不然ID变了
: 【 在 galaxy123 的大作中提到: 】
--
FROM 74.88.40.*
是啊
至少通过域名访问
【 在 galaxy123 的大作中提到: 】
: 没意义。 最好通过http网络服务传递消息,或上数据库,message queue等。
--
FROM 8.219.129.*
如果是单机:
你可以在docker containter A里操作主机的所有docker
启动A的时候挂载主机的docker socket文件
docker run -v /var/run/docker.sock:/var/run/docker.sock
然后在A里启动dockerd
然后你就可以用docker ps/docker ... 来操作主机的docker
有些权限问题要解决
如果是k8s,可以给pod相应的权限,让他可以调用kubectl,这个可以参照gitlab ci的设
置。
【 在 wjhtingerx 的大作中提到: 】
: rt
--
修改:iwannabe FROM 119.139.197.*
FROM 119.139.197.*
这地方应该用gitlab-ci。
【 在 wjhtingerx 的大作中提到: 】
: 比方说,有几个docker环境用于编译,另外有一个docker里的应用控制这几个docker编译执行
:
: 发自「今日水木 on M2007J17C」
--
FROM 106.37.240.*
你是说 k8s 里 容器可以反向控制系统 ?
【 在 iwannabe 的大作中提到: 】
: 如果是k8s,可以给pod相应的权限,让他可以调用kubectl,这个可以参照gitlab ci的设
: ...................
--
FROM 47.152.112.*
当然,k8s里很多功能都是通过某些pod实现的,只要给权限就行
【 在 hongyan2022 (仁恭智能) 的大作中提到: 】
: 你是说 k8s 里 容器可以反向控制系统 ?
:
: 【 在 iwannabe 的大作中提到: 】
: : 如果是k8s,可以给pod相应的权限,让他可以调用kubectl,这个可以参照gitlab ci的设
--
FROM 112.96.54.*