从shell执行多个命令到docker容器
我试图做一个命令,从docker集装箱做一个bash,打开mongo,并用类似的东西提出请求
'db.test.find({});'
我正在阅读其他类似的文章没有成功。
这是我正在执行的命令。
docker exec -it mongoDB bash -c'mongo; 使用testing; db.test.find({})”
那个命令给了我这个
bash:-c:第0行:附近出现意外令牌的语法错误{}'
bash:-c:第0行:mongo; 使用testing; db.test.find({})”
这可能吗?
我希望你能帮助我。
问候,
罗斯。
这实际上可能是使用一个文件来执行多个命令。 把你的mongo脚本放到一个文件中。
例:
myFile.js
文件内容:
use myDB show collections
然后你可以执行这个文件
mongo < myFile.js
在你的情况下:
docker exec -it mongoDB bash -c 'mongo < myFile.js'
不要忘记将这个文件复制到您的docker集装箱。
你可以在这里阅读更多