在连接到docker执行通过shell之后,mongo断开连接

在docker命令中执行以下命令后,我想closuresmongo shell:

#!/bin/bash docker run -it --link sonams-mongo:mongo --rm mongo sh -c 'exec mongo "$MONGO_PORT_27017_TCP_ADDR:$MONGO_PORT_27017_TCP_PORT/test"' if [ $? -eq 0 ]; then \ echo "connected to mongo successful"; \ else \ echo "mongo connection NOT successful"; \ fi; \ 

当它连接到mongo中的shell提示符。 是否有一种方法可以在docker命令中或之后传递shell命令来执行退出操作?

谢谢

通常(当然,这取决于你使用的基本图像),你不需要调用“sh -c”。 而且,这个组合通常是使shell打开并等待input的。 尝试改变你的命令有点像下面,没有-itsh -c

 docker run --link sonams-mongo:mongo --rm mongo mongo "$MONGO_PORT_27017_TCP_ADDR:$MONGO_PORT_27017_TCP_PORT/test" 

如果这没有帮助,试试这个:

 echo "$MONGO_PORT_27017_TCP_ADDR:$MONGO_PORT_27017_TCP_PORT/test" | docker run --link sonams-mongo:mongo --rm mongo mongo