【面试题】- Docker

Docker

  • 1. 什么是Doker
    • 1.1 依赖兼容问题
    • 1.2 Dockers如何解决依赖兼容问题
    • 1.3 操作系统不同,函数库不同
    • 1.4 Dockers如何解决不同系统环境问题
    • 1.5 总结
      • 1.5.1 Docker如何解决大型项目依赖关系复杂,不同组件依赖兼容问题
      • 1.5.2 Docker如何解决开发,测试,线上环境有差异的问题
  • 2. Docker和虚拟机的区别
  • 3. Docker架构(CS架构)
    • 3.1 镜像
    • 3.2 容器( Docker 镜像的运行时实例)
    • 3.3 Docker架构
  • 4. Docker基本操作
    • 4.1 从DockerHub拉取一个nginx镜像并查看
  • 5. 容器基本操作
  • 6. 数据卷
    • 6.1 容器与数据耦合的问题
    • 6.2 数据卷
    • 6.3 数据卷的作用
    • 6.4 demo
      • 6.4.1 创建一个数据卷,并查看在宿主机的目录位置
      • 6.4.2 数据卷挂载 - 创建一个nginx容器,并修改容器内html目录内的内容
      • 6.4.3 目录挂载
      • 6.4.5 数据卷挂载和目录挂载区别
  • 7. 镜像结构
  • 8. 如何从 Docker 镜像创建 Docker 容器?
  • 9. 如何启动、停止和终止容器?

1. 什么是Doker

1.1 依赖兼容问题

依赖关系复杂,容易发生兼容性问题
【面试题】- Docker_第1张图片

1.2 Dockers如何解决依赖兼容问题

将应用的函数库,依赖,配置与应用一起打包
将每个应用放到一个隔离容器中运行,避免相互干扰
【面试题】- Docker_第2张图片

1.3 操作系统不同,函数库不同

【面试题】- Docker_第3张图片

1.4 Dockers如何解决不同系统环境问题

【面试题】- Docker_第4张图片

1.5 总结

1.5.1 Docker如何解决大型项目依赖关系复杂,不同组件依赖兼容问题

Docker允许开发中将应用,依赖,函数库,配置一起打包,形成可移植镜像
Docker应用运行在容器中,使用沙箱机制,相互隔离

1.5.2 Docker如何解决开发,测试,线上环境有差异的问题

Docker镜像中有完整镜像环境,仅依赖Linux的系统内核,因此可以在任意Linux操作系统上运行

2. Docker和虚拟机的区别

Docker是一个系统进程,虚拟机是操作系统中的操作系统;
Docker体积小,启动快,性能好,虚拟机体积大,启动慢,性能一般

3. Docker架构(CS架构)

3.1 镜像

将应用程序,依赖,环境,配置打包在一起

3.2 容器( Docker 镜像的运行时实例)

镜像运行起来就是一个容器,一个镜像可以运行多个容器

3.3 Docker架构

服务端:接收命令或远程请求,操作镜像或容器
客户端:发送命令或远程请求到Docker服务端
【面试题】- Docker_第5张图片

4. Docker基本操作

【面试题】- Docker_第6张图片

4.1 从DockerHub拉取一个nginx镜像并查看

【面试题】- Docker_第7张图片

5. 容器基本操作

【面试题】- Docker_第8张图片
【面试题】- Docker_第9张图片

6. 数据卷

6.1 容器与数据耦合的问题

【面试题】- Docker_第10张图片

6.2 数据卷

一个虚拟目录,指向宿主机文件系统的某个目录。
直接操作宿主机文件解决不方便修改问题;
不同容器共享数据解决数据不可服用问题;
容器与数据分离解决升级维护苦难问题。
【面试题】- Docker_第11张图片

6.3 数据卷的作用

将容器与数据分离,方便操作容器内的数据。

6.4 demo

6.4.1 创建一个数据卷,并查看在宿主机的目录位置

【面试题】- Docker_第12张图片

6.4.2 数据卷挂载 - 创建一个nginx容器,并修改容器内html目录内的内容

【面试题】- Docker_第13张图片【面试题】- Docker_第14张图片
通过以上命令,拿到宿主机目录,可以在外部直接操作宿主机目录中的文件,这样容器内的文件也会被更新。

6.4.3 目录挂载

【面试题】- Docker_第15张图片

6.4.5 数据卷挂载和目录挂载区别

【面试题】- Docker_第16张图片
数据卷挂载:由Dockers管理目录,层级较深,不容易找到
目录挂载:需要自己管理目录,但是目录很好找

7. 镜像结构

【面试题】- Docker_第17张图片

8. 如何从 Docker 镜像创建 Docker 容器?

$ docker run -it -d

9. 如何启动、停止和终止容器?

启动 Docker 容器
$ docker start

停止 Docker 容器
$ docker stop

终止 Docker 容器
$ docker kill

来源:https://blog.csdn.net/shanghongshen/article/details/121603303
https://www.bilibili.com/video/BV1LQ4y127n4?p=60&vd_source=b901ef0e9ed712b24882863596eab0ca

你可能感兴趣的:(面试题2022,docker,linux,运维)