文章目录
- 1.容器
- 1.概念
- 2.特点
- 3.与虚拟机的对比
- 2.docker
- 1.概念
- 2.命名空间
- 3.核心概念
- 3.命令
- 1.镜像命令
- 2.仓库命令
1.容器
1.概念
1.不同的运行环境,底层架构是不同的,这就会导致测试环境运行好好的应用,到了生产环境就会出现bug(就像有些游戏win7可以玩,win10就会闪退蓝屏)
2.容器是应用运行的平台,将应用程序封装在容器中,在任意地方都能运行(一次封装,到处运行)
2.特点
1.灵活性 最复杂的应用也可以封装
2.轻量级 共享利用主机内核
3.可互换 即时部署更新和升级
4.便携式 可以本地构建,部署到云,任何地方运行
5.可扩展 增加并自动分发容器副本
6.可堆叠 垂直和即时堆叠服务
3.与虚拟机的对比
1.共用核心 独享核心
2.秒级启动 分级启动
3.性能接近原生 性能弱于原生
4.计算资源几乎无浪费 资源浪费30-50%之间
5.单机支持量高达上千 单机支持量仅有几十
6.隔离方式为资源隔离 隔离方式为完全隔离
2.docker
1.概念
1.开源的应用容器引擎
2.可以为任何一个应用创造容器
2.命名空间
3.核心概念
1.镜像:创建容器的基础,是一个只读模板
2.容器:用镜像创建所反映出来的实例
3.仓库:存放镜像的地方
3.命令
1.镜像命令
#搜索镜像
docker search 仓库/镜像
#下载镜像
docker pull 仓库/镜像
#查看本地镜像
docker images
#查看镜像详细信息
docker inspect 镜像ID
#删除镜像
docker rmi 镜像ID
#为镜像增加标签
docker tag 旧标签 新标签
#导出镜像
docker save -o 镜像
#导入镜像
docker load -i 镜像
#登陆一个仓库
docker login 仓库
#推送一个镜像
docker push
2.仓库命令
#创建一个容器
docker create -i [--name=名字] 镜像
#创建容器时执行命令,并且放入后台执行
docker create -itd [--name=名字] 镜像 命令
#启动容器
docker start 容器ID/名字
#关闭容器
docker stop/kill 容器ID/名字
#查看所有容器的所有状态[ID]
docker ps -a[q]
#删除容器
docker rm 容器ID/名字
#删除所有容器
docker rm $(docker ps -aq)
#创建并后台运行容器
docker run -itd 镜像 bash