gpt4 book ai didi

Docker:如何将信号从一个正在运行的容器发送到另一个容器?

转载 作者:IT老高 更新时间:2023-10-28 21:24:45 27 4
gpt4 key购买 nike

我正在使用 docker,我想知道:是否可以从正在运行的容器向另一个正在运行的容器发送信号?

更准确地说,我想将 SIGUSR1 发送到 python 程序。

我已经制作了一个 bash 脚本来获取我的 python 进程的 pid 并发送信号:

send_signal.sh

#!/bin/bash
py_pid=$(pidof -s python my_programme.py
杀死 -SIGUSR1 $py_pid

之前,我是这样从 Docker 主机执行 send_signal.sh 的:

docker exec docker_with_python bash send_signal.sh

或者就这样:

docker kill --signal="SIGUSR1 docker_with_python

但是现在,我想将信号发送到正在运行的容器到另一个容器。那么,我怎么能从另一个正在运行的容器中执行这个命令。还是有其他发送信号的方式?

提前致谢

最佳答案

这是我使用的代码。它可以帮助其他人:

echo -e "POST /containers/<docker_id>/kill?signal=SIGUSR1 HTTP/1.0\r\n" | nc -U /tmp/docker.sock

以前,在我的 docker-compose.yml 中,我共享了卷:

example1:
hostname: example_1
volumes:
- /var/run/docker.sock:/tmp/docker.sock

关于Docker:如何将信号从一个正在运行的容器发送到另一个容器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30775628/

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