Docker-常见手写面试题分享,给你安排的明明白白,东软集团Java笔试题

本文介绍了Docker镜像的导出与导入,批量清理临时镜像文件,删除本地镜像,以及系统清理无用数据的方法。此外,还探讨了构建Docker镜像的最佳实践,如选择小体积基础镜像、精确安装软件版本、管理环境变量等。对于容器管理,讨论了容器数据持久化、停止所有容器、获取容器PID和临时退出容器终端的操作。最后,提到了Docker仓库的相关知识。
摘要由CSDN通过智能技术生成

导出所有镜像为当前目录下文件, 可以使用如下命令:

while read img; do 
echo $img 
file="${img/\//-}" 
sudo docker save --output $file. tar $img 
done< images.list

将本地镜像文件导入为Docker镜像:

while read img; do 
echo $img 
file="${img/\//-}" 
docker load< $file.tar 
done< images.list
  1. 如何批量清理临时镜像文件?
    答:可以使用docker rmi $(docker images -q -f dangling = rue)命令。

  2. 如何删除所有本地的镜像?
    答: 可以使用docker rmi -f $(docker images -q)命令。

  3. 如何清理Docker系统中的无用数据?
    答:可以使用docker system prune --volumes -f命令, 这个命令会自动清理处于停止状态的容器、 无用的网络和挂载卷、 临时镜像和创建镜像缓存。

  4. 构建Docker镜像应该遵循哪些原则?
    答:整体原则上, 尽量保待镜像功能的明确和内容的精简, 避免添加额外文件和操作步骤, 要点包括:

  • 尽量选取满足需求但较小的基础系统镜像, 例如大部分时候可以选择debian:
    wheezydebian:jessie镜像, 仅有不足百兆大小;
  • 清理编译生成文件、 安装包的缓存等临时文件;
  • 安装各个软件时候要指定准确的版本号, 并避免引入不需要的依赖;
  • 从安全角度考虑, 应用要尽量使用系统的库和依赖;
  • 如果安装应用时候需要配置一些特殊的环境变量, 在安装后要还原不需要保持的变量值;
  • 使用 Dockerfile创建镜像时候要添加.dockerignore文件或使用干净的工作目录;
  • 区分编译环境容器和运行时环境容器, 使用多阶段镜像创建。

二、容器相关

  1. 容器退出后, 通过docker ps命令查看不到,数据会丢失么?
    答:容器退出后会处于终止(exited)状态, 此时可以通过docker ps -a查看。 其中的数据也不会丢失, 还可以通过docker [container] start命令来启动它。 只有删除掉容器才会清除所有数据。

  2. 如何停止所有正在运行的容器?
    答:可以使用docker [container] stop $(docker ps -q)命令。

  3. 如何获取某个容器的PIO信息?
    答:可以使用docker [container] inspect --format ' {{ . State.Pid }} '< CONTAINER ID or NAME>命令。

  4. 如何临时退出一个正在交互的容器的终端, 而不终止它?
    答:按ctrl-p Ctrl-q。 如果按ctrl-c往往会让容器内应用进程终止, 进而会终止容器。

  5. 如何控制容器占用系统资源(CPU、内存)的份额?
    答:在使用docker [container] create命令创建容器或使用docker [con­tainer] run 创建并启动容器的时候, 可以使用-c | - cpu -shares[=O]参数来调整容器使用 CPU 的权重;使用-ml-memory[=MEMORY]参数来调整容器使用内存的大小。

三、仓库相关

读者福利

分享一份自己整理好的Java面试手册,还有一些面试题pdf

CodeChina开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频】

不要停下自己学习的脚步

字节跳动的面试分享,为了拿下这个offer鬼知道我经历了什么

字节跳动的面试分享,为了拿下这个offer鬼知道我经历了什么

mg-5x8ZMFeo-1630547360379)]

[外链图片转存中…(img-ZE7BBiDY-1630547360381)]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值