【问题标题】:mongo disconnect after connecting to executing thru shell in docker连接到在 docker 中通过 shell 执行后,mongo 断开连接
【发布时间】:2017-01-26 05:46:01
【问题描述】:

我想在 docker 命令中执行以下命令后关闭 mongo 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 命令以执行退出?

谢谢

【问题讨论】:

    标签: mongodb shell docker


    【解决方案1】:

    通常(当然这取决于您使用的基本映像)您不需要调用“sh -c”。此外,-it 组合通常是打开 shell 并等待输入的原因。尝试稍微改变你的命令,如下所示,没有-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
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-08-08
      • 1970-01-01
      • 1970-01-01
      • 2017-07-20
      • 2015-12-17
      • 1970-01-01
      • 2021-11-26
      • 2016-11-13
      相关资源
      最近更新 更多