gpt4 book ai didi

shell - Docker:在容器中运行的spigot控制台上执行命令

转载 作者:行者123 更新时间:2023-12-02 20:29:52 24 4
gpt4 key购买 nike

总结一下我的问题:
我想在容器中运行的Minecraft控制台上执行命令,就像我以交互方式附加到该容器但不需要附加到它一样。
docker attach container_namecommanddetach_from_contaienr
就像运行docker exec一样,但是它像在docker attach中一样,将命令放入在容器内部运行的programm的stdin中。

我只是搜索具有相同功能的oneliner。就像这个question

编辑:echo 'say test' | docker attach <container id>
给出错误:
the input device is not a TTY
编辑2:
this post中删除容器链接上的-t标志后
echo 'say test' | docker attach <container id>
该命令进入日志显示的服务器,但是执行后,我陷入了空白输入,因为该命令不会以某种方式停止

如果我现在执行double ctrl + c,则容器停止...

编辑3:
我尝试在docker主机上执行这些命令并在运行中的spigot minecraft服务器中执行命令

最佳答案

显然,您可以使用命名管道来执行此操作,如下所示:https://stackoverflow.com/a/26765590/2926055

# in the Docker container
$ mkfifo myfifo
$ java -jar minecraft_server.jar nogui < myfifo

# via your `docker exec`
$ echo 'say test' > myfifo

如前所述,请注意不要意外发送EOF字符。

关于shell - Docker:在容器中运行的spigot控制台上执行命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61482048/

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