前言
本文主要介绍涉及前端需要了解的 Docker 基础知识。
Dockerfile、Image、Container 区别
Image
镜像,是容器的模板,它存储了应用程序及其依赖,Docker 根据镜像可以生成不同容器。
Container
容器,是根据镜像生成的实例,它和镜像的关系就好比编程中类和实例的关系。
Dockerfile
镜像的依赖及相关描述,Docker 会根据 Dockerfile 生成镜像。
常见操作
拉取镜像
docker pull node:alpine
查看镜像信息
docker inspect node:alpine
列出所有镜像
docker images
构建镜像
docker build -t node-base:18 .
列出所有容器
docker ps
查看容器端口映射
docker port nginx
查看容器资源占用
docker port nginx
进入容器环境
docker exec -it container-name
Docker 原理
Docker 技术本质上是属于一个普通的宿主机进程,借助了 Linux 下提供的各种机制去实现了进程、文件和资源的隔离。其中,进程隔离是通过 Linux
的 Namespace
,文件隔离通过文件挂载,资源隔离通过 Cgroup
去实现的,使用代码去模拟 Docker 原理的话可以看下 Docker 是如何实现隔离。
总结
Docker
技术是当下的趋势,在应用部署这方面提供了很多解决方案,掌握好 Docker
非常有必要。