1.什么是Docker?
Go语言开发,容器虚拟化技术,C/S架构,具有隔离、快速、轻便的特点。
2.Docker与虚拟机有何不同?
相比于虚拟机,docker更快速、轻便。
快速:秒级启动
轻便:联合文件系统
3.Docker镜像是什么?
联合文件系统。
可以通过DockerFile构建或通过容器Commit生成。
4.Docker容器是什么?
镜像实例
5.Docker容器有几种状态?
四种状态:运行,暂停,重启,退出
6.DockerFile常见指令
FROM
ADD COPY
ENV WORKDIR
RUN
CMD ENTRYPOINT
7.Dockerfile中的命令COPY和ADD命令有什么区别?
COPY是复制文件
ADD可以自动解压
8.Docker常用命令
容器、镜像、仓库、日志、进程、元数据、拷贝
9.容器与主机之间的数据拷贝命令
docker cp <主机路径> <容器ID>:<容器路径>
docker cp <容器ID>:<容器路径> <主机路径>
10.启动nginx容器(随机端口映射),并挂载数据卷
docker run -d --name myNginx -P -v <主机路径>:<容器路径> nginx
11.什么是Docker Swarm?
与Docker引擎集成的集群管理
12.如何批量清理临时镜像文件?
docker rmi -f $(docker images -q)
13.如何查看镜像支持的环境变量?
docker run <镜像ID> env
14.本地的镜像文件都存放在哪里?
镜像文件路径:/var/lib/docker/image
容器文件路径:
/var/lib/docker/containers
15.构建Docker镜像应该遵循哪些原则?
1).尽量选取满足需求但较小的基础系统镜像
2).清理编译生成文件、安装包的缓存等临时文件3).安装各个软件时候要指定准确的版本号,并避免引入不需要的依赖
4).从安全的角度考虑,应用尽量使用系统的库和依赖
5).使用Dockerfile创建镜像时候要添加.dockerignore文件或使用干净的工作目录
16.容器退出后,通过docker ps 命令查看不到,数据会丢失么?
docker ps -a
17.如何停止所有正在运行的容器?
docker kill $(docker ps -q)
18.如何退出容器不终止容器
Ctrl+P+Q
19.如何清理批量后台停止的容器
docker rm $(docker ps -aq)
20.如何查看容器日志?
docker logs <容器ID>
21.可以在一个容器中同时运行多个应用进程吗?
一般不推荐在同一个容器内运行多个应用进程
22.如何控制容器占用系统资源(CPU,内存)的份额?
docker run 时,可以
使用-c|–cpu-shares[=0]参数来调整同期使用CPU的权重,
使用-m|–memory参数来调整容器使用内存的大小。
23.Docker能在非Linux平台(Windows+MacOS)上运行吗?
可以
24.如何将一台宿主机的docker环境迁移到另外一台宿主机?
停止Docker服务,将整个docker存储文件复制到另外一台宿主机上,然后调整另外一台宿主机的配置即可
25.什么是docker-compose?
标签:容器,面试题,宿主机,ps,常见,镜像,docker,Docker From: https://www.cnblogs.com/peteremperor/p/18052929实现批量docker容器编排