Linux 从shell到docker容器执行多个命令
我尝试在一个命令中执行,从docker容器中执行bash,打开mongo并使用类似的命令发出请求 'db.test.find({});' 我正在读其他类似的文章,但没有成功 这是我正在执行的命令 docker exec-it mongoDB bash-c'mongo;使用试验;db.test.find({})' 那个命令给我 bash:-c:第0行:意外标记{}附近出现语法错误 bash:-c:0行:mongo;使用试验;db.test.find({})' 有可能吗 我希望你能帮助我 问候,Linux 从shell到docker容器执行多个命令,linux,bash,mongodb,shell,docker,Linux,Bash,Mongodb,Shell,Docker,我尝试在一个命令中执行,从docker容器中执行bash,打开mongo并使用类似的命令发出请求 'db.test.find({});' 我正在读其他类似的文章,但没有成功 这是我正在执行的命令 docker exec-it mongoDB bash-c'mongo;使用试验;db.test.find({})' 那个命令给我 bash:-c:第0行:意外标记{}附近出现语法错误 bash:-c:0行:mongo;使用试验;db.test.find({})' 有可能吗 我希望你能帮助我 问候, R
Roth.这实际上可能是使用一个文件来执行多个命令。将mongo脚本放入文件中 例如:
myFile.js
文件内容:
use myDB
show collections
然后,您可以使用
mongo < myFile.js
mongo
在你的情况下:
docker exec -it mongoDB bash -c 'mongo < myFile.js'
docker exec-it mongoDB bash-c'mongo
别忘了将此文件复制到docker容器中
您可以实际上不需要将脚本复制到容器中 您只需运行:
docker exec -it mongoDB bash -c 'mongo' < myFile.js
docker exec-it mongoDB bash-c'mongo'