容器技术
容器是一种轻量级、可移植、自包含的软件打包技术,使应用程序可以在几乎任何地方以相同的方式运行。开发人员在自己笔记本上创建并测试好的容器,无须任何修改就能够在生产系统的虚拟机、物理服务器或公有云主机上运行。
容器由两部分组成:
- 应用程序本身
- 依赖:比如应用程序需要的库或其他软件容器在Host操作系统的用户空间中运行,与操作系统的其他进程隔离。这一点显著区别于虚拟机
容器的优势
- 对于开发人员,Build Once、Run Anywhere;容器意味着环境隔离和可重复性。开发人员只需为应用创建一次运行环境,然后打包成容器便可在其他机器上运行
- 对于运维人员,Configure Once、Run Anything;容器消除了开发、测试、生产环境的不一致性
传统的虚拟化技术
传统的虚拟化技术,比如VMWare、KVM、Xen,目标是创建完整的虚拟机。为了运行应用,除了部署应用本身及其依赖(通常几十MB),还得安装整个操作系统(几十GB)。
容器与虚拟化技术的区别
由于所有的容器共享同一个Host OS,这使得容器在体积上要比虚拟机小很多。另外,启动容器不需要启动整个操作系统,所以容器部署和启动速度更快、开销更小,也更容易迁移。
Docker
Docker架构
Docker的核心组件包括:
- Docker客户端:Client,docker命令,可以构建和运行容器
- Docker服务器:Docker daemon,服务器组件,以Linux后台服务的方式运行
- Docker镜像:Image,镜像是容器的基石
- Registry:仓库,存放镜像
- Docker容器:Container,容器是镜像的运行实例
Docker常用命令
- 查询仓库镜像
docker search image_name
- 拉取镜像
docker pull image_name:image_version
- 查看本地仓库的镜像
docker images
- 删除本地仓库的镜像
docker rmi image_name
- 保存镜像文件
docker save -o image_name.tar image_name
- 离线加载镜像
docker load -i image_name.tar
- 查看容器(包含启动和停止的容器)
docker ps -a
- 创建并运行一个新的容器
docker run -itd --name container_name images_name:image_version
- 进入容器
docker exec -it container_name /bin/bash
- 停止容器
docker stop cotainer_name
- 重启容器
docker restart container_name
- 查看容器日志
docker logs -f container_name
- 删除容器
docker rm -f container_name
标签:容器,name,简介,image,镜像,Docker,docker
From: https://blog.csdn.net/qq_34149443/article/details/139656658