Docker Error: Error: Os { code: 6, kind: Uncategorized, message: "No such device or address" }
近日在使用 Docker 包装程序时,遇到如下错误:
Error: Os { code: 6, kind: Uncategorized, message: "No such device or address" }
程序在开发环境中运行一切正常,排除了文件挂载问题,一直没有头绪。
排错过程中我忽略了一个问题,进行调试的时候使用的命令是 docker run -it
给容器分配了伪终端,其实问题就出现在这里。
程序运行时需要调用 tty 或访问标准输入输出(如 /dev/tty)设备。当没有分配伪终端时,这些设备根本不存在,因此就报出了 No such device or address 的错误。
解决方法
命令行
使用 docker run -t
创建容器
Docker compose
1 | services: |
Docker Error: Error: Os { code: 6, kind: Uncategorized, message: "No such device or address" }