首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >eclipse中docker exec出错-蚊子

eclipse中docker exec出错-蚊子
EN

Stack Overflow用户
提问于 2021-02-07 01:34:23
回答 1查看 553关注 0票数 0

eclipse-蚊子在Ubuntu上用Docker安装了它们。我想执行"docker exec“命令,但它给出了以下错误?你能帮上忙吗?

代码语言:javascript
复制
sudo docker ps

outPut:

代码语言:javascript
复制
CONTAINER ID: b416d716ffd6   IMAGE: eclipse-mosquitto     COMMAND: "/docker-entrypoint.…"   CREATED: 2 days ago   STATUS: Up 44 minutes   PORTS: 0.0.0.0:9001->9001/tcp, 0.0.0.0:11883->1883/tcp   NAME: charming_bohr

命令:

代码语言:javascript
复制
sudo docker exec -it b416d716ffd6 /bin/bash

OutPut: OCI运行时执行失败: exec失败: container_linux.go:370:启动容器进程导致: exec:"/bin/bash":stat /bin/bash:无此类文件或目录:未知

for:自代理启动以来接收的字节总数。

代码语言:javascript
复制
sudo docker exec -it b416d716ffd6 $SYS/broker/bytes/received

OutPut:

代码语言:javascript
复制
OCI runtime exec failed: exec failed: container_linux.go:370: starting container process caused: exec: "/broker/bytes/received": stat /broker/bytes/received: no such file or directory: unknown
EN

回答 1

Stack Overflow用户

发布于 2021-02-07 02:09:51

有两个截然不同的问题。

  1. eclipse蚊子图像不包含bash,因此您需要使用不同的shell,例如sh

` `sudo docker exec -it b416d716ffd6 /bin/sh

蚊子是一个由蚊子自动内部管理的特殊主题,你可以“从外部”访问它,而不需要在运行的容器中执行任何东西,例如,你可以使用

  1. $SYS/broker/bytes/received (sudo apt-get install -y mosquitto_clients,如果你还没有它的话)

mosquitto_sub -t '$SYS/broker/bytes/received'

如果蚊子不在本地主机上,则添加-h选项;如果不在默认端口上,则添加-p;如果希望更详细,则添加-d,依此类推。

作为参考,mosquitto man page中对MQTT客户端的这一需求进行了清楚的解释。

Broker状态客户端可以通过订阅$SYS层次结构中的主题来查找有关代理的信息,如下所示。标记为静态的主题在订阅时仅发送给每个客户端一次。所有其他主题每sys_interval秒更新一次。如果sys_interval为0,则不发送更新。

请注意,如果您使用命令行客户端与$SYS主题进行交互,并且您的shell将$解释为环境变量,则需要将该主题放在单引号'$SYS/...‘中。或者转义美元符号:$SYS/...否则,$SYS将被视为环境变量。

$SYS/ broker / bytes /received自代理启动以来接收的字节总数。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66079871

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档