不能以root身份访问docker mongo

我只是安装docker,我可以在一个容器中运行一个mongodb图像,没有sudo 。 端口暴露27017.我现在试图从一个运行在主机上的shell访问它,但它只能与

 sudo mongo --port 27017 

我不想使用sudo 。 可能吗?

可能吗?

是的,但我认为你没有采取正确的做法。

如果你在Docker容器中运行mongodb,你不应该从你的主机上运行mongo shell。 你应该从你的容器中运行它。

例如,如果你的docker容器被命名为mydb ,你可以这样做:

docker exec -it mydb mongo

这将在mydb容器中执行mongo shell,并为您提供“交互式”和“terminal仿真”( -it params),以便您可以像在计算机上直接使用mongo shell一样工作。