2016-04-11 21 views
3

this post'den ilham alarak, çalışan bir kapsayıcıyı durdurmak için Mac'imde docker-machine kullanmayı deniyorum. Ancak, awk, docker-machine ssh'da, kabın doğrudan "içinde" çalıştırılmasından daha farklı davranır. uzaktan çalıştırdığınızda awk farklı davranıyorsa,Docker makinesinde awk'den beklenmeyen davranış

[email protected]:~$ docker-machine ssh default 
[email protected]:~$ docker ps 
CONTAINER ID  IMAGE    COMMAND     CREATED    STATUS    PORTS    NAMES 
028fd7148881  myrepo/mycontainer "apachectl -DFOREGROU" 14 minutes ago  Up 14 minutes  0.0.0.0:80->80/tcp gloomy_mayer 
[email protected]:~$ docker ps | awk 'NR > 1 {print $1}' 
028fd7148881 
[email protected]:~$ docker ps | awk 'NR > 1 {print $1}' | xargs --no-run-if-empty docker kill 
028fd7148881 
[email protected]:~$ docker ps 
CONTAINER ID  IMAGE    COMMAND    CREATED    STATUS    PORTS    NAMES 

Ama:

doğrudan kaba ssh'd ediyorum

, her şey beklendiği gibi çalıştığını

[email protected]:~$ docker-machine ssh default "docker ps" 
CONTAINER ID  IMAGE    COMMAND     CREATED    STATUS    PORTS    NAMES 
7927b10b8a28  myrepo/mycontainer "apachectl -DFOREGROU" 11 seconds ago  Up 10 seconds  80/tcp    happy_wozniak 
[email protected]:~$ docker-machine ssh default "docker ps | awk 'NR > 1 {print $1}'" 
7927b10b8a28  myrepo/mycontainer "apachectl -DFOREGROU" About a minute ago Up About a minute 80/tcp    happy_wozniak 
[email protected]:~$ docker-machine ssh default "docker ps | awk 'NR > 1 {print $1}' | xargs --no-run-if-empty docker kill" 
7927b10b8a28 
Failed to kill container (myrepo/mycontainer): Error response from daemon: Cannot kill container myrepo/mycontainer: No such container: myRepo/myContainer 
Failed to kill container (apachectl -DFOREGROU): Error response from daemon: Cannot kill container apachectl -DFOREGROU: No such container: apachectl -DFOREGROU 
Failed to kill container (3): Error response from daemon: Cannot kill container 3: No such container: 3 
... 

Neden altında awk farklı davranır yapar docker-machine?

cevap

2
"docker ps | awk 'NR > 1 {print \$1}' | xargs --no-run-if-empty docker kill" 


$ ==> \$ 

liman işçisi ps -q

+0

Lanet olsun ... teşekkürler! :) – scubbo