“docker运行-dti”与哑terminal
更新:添加了缺less的docker附加。
您好尝试运行docker集装箱,用-dti。 但是我不能访问一个terminal设置为愚蠢的。 有没有办法改变这一点(目前设置为xterm,即使我的SSH客户端是愚蠢的)
例:
创build容器
docker run -dti --name test -v /my-folder alpine /bin/ash docker attach test apk --update add nodejs cd /my-folder npm install -g gulp
最后一个命令总是包含ascii转义字符来移动光标。
我已经尝试“导出TERM =哑”内运行的容器,但它不起作用。
有没有办法使用哑terminal“运行”?
我从另一台计算机上的脚本运行,通过(愚蠢)ssh。
使用-t设置这个https://docs.docker.com/engine/reference/run/#env-environment-variables ,但是除去影响命令提示符(提示不显示)
可能的解决scheme1删除-t并保留-i。 查看命令是否已完成回显已知令牌( ENDENDEND )。 即
docker run -di --name test -v /my-folder alpine /bin/ash docker attach test apk --update add nodejs;echo ENDENDEND cd /my-folder;echo ENDENDEND npm install -g gulp;echo ENDENDEND
不漂亮,但它的作品(结果没有ascii)
可能的解决scheme2使用日志,docker可以注销到linux日志,这可以在命令在容器中执行时收集。 (我还没有完全testing这一个,但日志似乎是发生了什么更好的输出)
更新:是的,问题是。 但是,如果你想在运行一个命令的时候看到整个过程,也许这样更好:
docker run -di --name test -v/my-folder alpine /bin/ash docker exec -it test /bin/ash
最后你需要在所有工作完成后杀死容器。
docker run -d意思是“在后台运行容器并打印容器ID”不能作为守护进程启动容器
- Docker:通过django应用程序访问python类实例的容器
- $ POSTGRES_PORT_5432_TCP_ADDR和$ POSTGRES_PORT_5432_TCP_PORT从哪里来?
- 如何将参数追加到容器命令?
- Docker窗口容器内存限制
- docker-swarm错误:客户端和服务器没有相同的版本(客户端:1.18,服务器:1.17)
- 如何在docker json-file中configuration时区
- 为什么我不能在Docker中使用正确的ssh密钥克隆一个私人的git仓库?
- Docker中的Nginx无法使用map指令
- Kubernetes POD参数不传递给服务,但是Dockerparameter passing正确