栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

探索Docker容器的文件系统

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

探索Docker容器的文件系统

UPDATe
最简单的方法:使用docker exec

Docker 1.3或更高版本支持

exec
行为与相似的命令
nsenter
。该命令可以在已运行的容器中运行新进程(容器必须已运行PID
1进程)。您可以运行
/bin/bash
以探索容器状态:

docker exec -t -i mycontainer /bin/bash

请参阅Docker命令行文档

替代方法1
快照

您可以通过以下方式评估容器文件系统:

# find ID of your running container:docker ps# create image (snapshot) from container filesystemdocker commit 12345678904b5 mysnapshot# explore this filesystem using bash (for example)docker run -t -i mysnapshot /bin/bash

这样,您可以在准确的时间评估运行中的容器的文件系统。容器仍在运行,不包括将来的更改。

您可以稍后使用(不影响正在运行的容器的文件系统!)删除快照:

docker rmi mysnapshot

备用方法2
SSH

如果需要连续访问,可以将sshd安装到您的容器中并运行sshd守护程序:

 docker run -d -p 22 mysnapshot /usr/sbin/sshd -D # you need to find out which port to connect: docker ps

这样,您可以使用ssh运行应用程序(连接并执行所需的操作)。

更新:替代方法3
nsenter

使用

nsenter
,请参阅https://web.archive.org/web/20160305150559/http://blog.docker.com/2014/06/why-
you-dont-need-to-run-sshd-in-
docker/

简短的版本是:使用nsenter,您可以将shell放入现有容器中,即使该容器未运行SSH或任何特殊用途的守护程序



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/394162.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号