docker练习题

张开发
2026/4/16 15:47:28 15 分钟阅读

分享文章

docker练习题
第一章 容器介绍什么是容器?通过命名空间与cgroups实现容器隔离与资源限制是基于镜像只读层与顶层可写层运行的进程容器的本质是什么?宿主机上的进程容器可以直接运行在物理机上吗? 容器可以运行在虚拟机上吗?都可以什么是docker? 优势是什么?docker是一款部署容器的工具, 同时为容器的运行提供环境一次构建, 多次部署实现容器隔离节省资源docker的特性是什么?隔离性: 每个容器拥有独立的文件系统, 网络以及进程, 并且容器与容器之间是独立的可度量性: 通过cgroups控制组来控制容器资源的分配, 避免资源异常占用可移植性: 通过AUFS来实现对容器的快速更新容器与虚拟机的区别是什么?虚拟机: 有独立内核与操作系统容器: 无独立内核, 是宿主机上的进程第二章 容器基本概念docker的服务组成是什么? 作用分别是什么?docker服务端: 管理所有容器docker客户端: 是docker服务端的远程控制器docker的组件都有什么?仓库: 存放docker镜像, 分为公有仓库与私有仓库镜像: 是docker容器运行时的只读模板, 每一个镜像由一系列层组成容器: 通过命名空间与cgroups实现容器隔离与资源限制是基于镜像只读层与顶层可写层运行的进程对docker容器的修改, 会影响原本docker镜像吗?不会docker容器的运行, 依赖docker镜像吗?依赖什么是基础镜像?指该镜像没有父镜像docker镜像名称的组成是什么?镜像仓库地址镜像名镜像标签(版本)docker容器由什么组成? 作用分别是什么?命名空间(namespace): 是基于Linux内核的资源隔离机制是 Docker容器实现隔离的核心技术资源限制(cgroups): 规定容器的资源大小, 避免资源的异常占用文件系统: 是容器的文件系统, 所有对容器的写操作, 都会被记录在文件系统中镜像与容器的关系是什么?镜像是容器运行的基础, 容器是镜像启动后的进程docker容器是在镜像层的基础上增加了可写层吗? docker容器的可写层, 是运行在cpu上的进程吗?是的是的docker容器的状态都有什么?create: 仅创建容器, 没有启动running: 容器处于运行中exited: 容器处于停止状态docker容器由运行状态到停止状态, 这期间对容器内的写操作, 都会被写入容器的文件系统吗?对的docker容器中, 进程之间的交互方法都有什么?共享内存信号量socket管道第三章 镜像管理检索仓库中指定服务的镜像使用什么命令?docker search 仓库地址/镜像名查看本地镜像使用什么命令?docker images拉取镜像是什么命令?docker pull 仓库地址/镜像名:版本删除镜像使用什么命令?docker rmi 仓库地址/镜像名:版本查看镜像详细信息使用什么命令?docker inspect 仓库地址/镜像名:版本修改镜像标签与名称使用什么命令?docker tag docker.1ms.run/nginx:latest nginx:v1第四章 容器管理在启动容器时, 进入容器的shell, 若容器没有/bin/bash, 那么使用什么进入容器的shell ?/bin/sh查看当前宿主机上容器的进程使用什么命令?docker ps -a若容器处于创建状态, 启动该容器使用什么命令?docker start nginx1前台启动容器使用什么命令?docker run -it --name nginx1 docker.1ms.run/nginx:latest /bin/bash后台启动容器需要加shell吗?不需要后台启动容器使用什么命令?docker run -itd --name nginx1 docker.1ms.run/nginx:latest在创建并启动容器时, 没有指定容器名称, 那么该容器名称会自动分配吗?对的容器处于运行状态, 通过宿主机正常关闭容器使用什么命令?docker stop 容器名称容器处于运行状态, 通过宿主机强制关闭容器使用什么命令?docker kill 容器名称在创建并启动容器时, 若需要容器的启动根据docker服务的启动而启动, 是用什么参数–restartalways对于docker容器来说, exit命令与ctrlpq命令的有什么共同点, 有什么不同点?相同点: 都在容器内部执行, 不在宿主机上执行不同点: exit为退出容器并停止容器运行, ctrlpq表示仅退出查看容器详细信息使用什么命令?docker inspect 容器名删除容器前需要将容器先停止吗?对的删除容器使用什么命令?docker rm 容器名称连接运行状态的容器使用什么命令?docker exec -it nginx1 /bin/bash动态查看容器的日志使用什么命令?docker logs -f nginx1查看容器退出时的状态码, 使用什么命令?docker wait nginx1容器的退出状态码, 0和其他数字分别表示什么?0: 正常退出非0: 非正常退出宿主机与容器进行文件的拷贝使用什么命令? 目录拷贝使用什么参数?docker cp /root/1.txt nginx1:/tmp目录使用 -a第五章 容器打包什么是容器的打包?将正在运行的容器压缩为tar包将容器进行打包使用什么命令?docker export nginx1 nginx.tar将打包后的容器, 恢复为镜像使用什么命令? 运行该镜像使用什么命令?docker run -itd --name latest nginx:latest nginx -g “daemon off;”docker import nginx.tar nginx:v2将容器提交为本地镜像使用什么命令?docker commit nginx1 nginx:v3将镜像打包使用什么命令?docker save -o nginx1.tar nginx:v3导入打包后的镜像使用什么命令?docker load nginx1.tardocker制作镜像使用什么命令?docker build -t nginx:v7 -f dockerfile路径制作docker镜像时, dockerfile中每一行命令的运行逻辑是什么?启动上一个容器, 执行命令, 退出容器制作docker镜像时, dockerfile中都会用到哪些命令? 作用分别是什么?FROM: 指定基本镜像MAINTAINER: 指定镜像作者WORK: 指定工作目录ENV: 指定环境变量RUN: 指定运行命令ADD: 文件拷贝, 并自动解压EXPOSE: 定义容器中服务的端口ENTRYPOINT: 容器启动时, 执行的命令或脚本CMD: 容器启动时, 执行的命令或脚本dockerfile中, entrypoint与cmd的区别是什么?cmd: 受容器启动时影响, 可以被启动容器中的命令替换entrypoint: 不受容器启动时影响, 无法被启动容器中的命令替换, 除非强制替换若想在启动容器时, 强制替换entrypoint中的指令, 使用什么参数–entrypoint 命令轻量化的镜像, 含有什么单词?alpine清理yum缓存, 使用什么命令?yum clean all第六章 私有化仓库在为私有化仓库推送镜像前, 需要做什么?将镜像的registry改为, 私有仓库宿主机ip:端口/镜像名私有化仓库中, 将https协议改为http协议怎么配置?私有化仓库的宿主机上创建/etc/docker/daemon.json文件文件中添加 “insecure-registries”:[“192.168.255.130:5000”]其他宿主机上的镜像上传到该仓库, 怎么操作修改镜像名在/etc/docker/daemon.ljson中配置insecure-registries为仓库推送镜像, 使用什么命令?docker push 镜像名:版本在私有仓库拉取镜像, 使用什么命令?docker pull 镜像名:版本查看私有仓库的镜像使用什么命令?curl http://192.168.255.130:5000/v2/_catalog查看指定镜像的详细信息使用什么命令?curl 192.168.255.130:5000/v2/nginx/tags/list第七章 docker资源限制什么是docker的资源限制?通过cgroup控制组, 来管理容器对cpu, 内存与磁盘资源的使用, 避免容器对资源的异常占用docker资源限制的作用是什么?合理的为容器分配硬件资源, 便于管理防止恶意攻击异常docker容器资源限制的方式都有什么?cpu资源限制内存资源限制磁盘资源限制docker的cpu资源限制, 可以指定容器占用cpu的确定值吗?不可以cpu资源限制的默认cpu share是多少?1024若一台宿主机上, 每个容器的cpus核数之和大于宿主机的cpu核数, 容器会退出或失败吗?不会docker默认对容器的内存有资源限制吗?没有, 可以使用宿主机的所有内存cpu资源限制的方式都有什么?指定容器cpu权重指定cpu可使用核数绑定cpu容器内存限制使用什么参数?启动是使用 -m 64M第八章 端口映射什么是docker的端口映射?让外部能够通过宿主机端口访问容器内的服务容器端口映射的方式都有什么?指定端口映射 -p 50:50随机端口映射 -P查看容器端口映射使用什么命令?docker ps -a第九章 容器卷什么是docker的容器卷?将宿主机上的某一目录挂载到容器中的指定目录, 实现将宿主与容器之间的数据共享配置容器卷使用什么参数?-v 宿主机目录:容器目录第十章 docker的数据存储位置docker默认的数据存放路径是什么?/var/lib/docker怎么查看docker的数据存放路径?docker info | grep Root怎么修改docker的数据存放路径?vim /usr/lib/systemd/system/docker.service–data-root/datasystemctl restart docker第十一章docker支持的网络类型都有什么?桥接模式: 每个容器有独立ip, 连在docker0的网桥上none模式: 没有网络仅主机模式: 容器共用宿主机网络docker容器默认的网络类型是什么?桥接模式桥接模式的特点是什么?容器之间可以通过ip互相访问外部通过端口映射访问容器提供的服务容器默认的网段是什么?172.17.0容器启动时怎么指定桥接模式?-p 80:80仅主机网络模式的特点是什么?直接使用宿主机ip:port, 访问容器服务容易与宿主机端口产生冲突在容器启动时, 怎么指定网络为仅主机模式?–networkhostnone网络模式的特点是什么?完全隔离, 容器之间, 容器与宿主机之间无法通信在容器启动时, 怎么指定网络模式为none模式?–networknone怎么查看容器的网络信息?docker inspecrt 容器名

更多文章