通过终端访问docker容器的文件系统

Zur*_*iar 23 docker

所以我已成功下载并从注册表运行dockerfile/nginx映像.我现在如何通过启动bash终端来访问其文件系统?

也许我在这里概念性地遗漏了一些东西.我需要进入吗?谢谢

Seb*_*ian 29

您可以在新图像中启动交互式shell:

sudo docker run -i -t nginx /bin/bash
Run Code Online (Sandbox Code Playgroud)

这使您可以访问容器,并且可以更改内容.完成后,您需要将更改保存在新的可重用图像中:

sudo docker commit <container_id> <some_name>
Run Code Online (Sandbox Code Playgroud)

这种方法对测试有意义.通常您会使用Dockerfiles来自动执行此操作.

如果您的图像有默认入口点,您可以覆盖它:

docker run -i -t --entrypoint /bin/bash nginx
Run Code Online (Sandbox Code Playgroud)