执行下面的 shell 脚本
sudo ssh -t ${node//[[:space:]]/} docker exec -t $(docker ps -f name=ucenter_api -q) curl localhost/alive
会报错
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
Error: No such container: curl
而 ssh
sudo ssh -t ${node//[[:space:]]/}
然后
docker exec -t $(docker ps -f name=ucenter_api -q) curl localhost/alive
可以正常执行,请问如何解决?
相关问题
- How to get the return code of a shell script in lu
- JQ: Select when attribute value exists in a bash a
- Invoking Mirth Connect CLI with Powershell script
- Emacs shell: save commit message
- bash print whole line after splitting line with if
相关文章
- 使用2台跳板机的情况下如何使用scp传文件
- In IntelliJ IDEA, how can I create a key binding t
- Check if directory exists on remote machine with s
- shell中反引号 `` 赋值变量问题
- How get the time in milliseconds in FreeBSD?
- Reverse four length of letters with sed in unix
- Launch interactive SSH bash session from PHP
- BASH: Basic if then and variable assignment
第一个只执行了ssh命令, docker命令是在$()命令替换里头执行的, 写在命令行的docker当做参数传给ssh了, 在docker前面加上
;
解决了,1)要将 ssh 执行的脚本放在双引号中;2)要对 $ 进行转义。
也可以使用 xargs