在Docker容器中运行Mongo eval会返回随机字符串吗?

时间:2018-04-26 14:46:05

标签: mongodb docker

我正在尝试使用获取所有数据库名称的eval运行以下Docker mongo客户端。但是它返回一个像6baed0a2a2b0aac93d56a02238132cb9726这样的字符串。这个字符串是什么?如果我在localhost上运行mongo客户端,它确实会返回正确的数据库名称。

docker run --name NAME -d mongo --host SERVER --username USER --password PASS --authenticationDatabase admin --ssl --eval \"printjson(db.getMongo().getDBNames())\" > availableMongoDatabases.txt"

1 个答案:

答案 0 :(得分:0)

docker run返回的字符串是容器ID。它与在容器内执行的应用程序没有任何关系。

因此,您所谈论的字符串6baed0a2a2b0aac93d56a02238132cb9726在每个容器上都有所不同,因此,每次执行docker run时,您都会得到不同的字符串。如果您想访问同一个容器,请执行docker rundocker exec -ti [container_id] bash