Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。(摘自百科)
1.更加高效的利用系统资源(容器不需要进行硬件以及运行完整操作系统等额外开销) 2.更快速的启动时间 3.一致的运行环境 4.持续交付和部署(对开发和运维(DevOps)人员来说,最希望的就是一次创建或配置,可以在任意地方正常运行。) 5.更加轻松的迁移 6.更加轻松的维护和扩展
特性 | 容器 | 虚拟机 |
---|---|---|
启动 | 秒级 | 分钟级 |
硬盘使用 | 一般为 MB |
一般为 GB |
性能 | 接近原生 | 弱于 |
系统支持量 | 单机支持上千个容器 | 一般几十个 |
- 容器是APP层面的隔离
- 虚拟化是物理资源层面的隔离
- 虚拟化和容器结合使用
查看centos7版本内核要高于3.10
yum install docker
systemctl start docker
systemctl enable docker
镜像搜索使用以下命令
docker search [imagename]
docker pull [imagename]
docker pull [imagename]:1.0.1//指定版本
将镜像源换成阿里云镜像
您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器:
重启docker
再次拉取镜像
docker images
例如
docker images|grep mysql
docker rmi 镜像名称/镜像ID
docker rmi $(docker images -q)
公网地址:上传镜像的仓库地址 tag:标签,为镜像设置版本
登录:docker login --username=鱼尾九八一七 registry.cn-beijing.aliyuncs.com 打标签:docker tag [ImageId] registry.cn-beijing.aliyuncs.com/yuwei_test/test:[镜像版本号] 上传:docker tag [ImageId] registry.cn-beijing.aliyuncs.com/yuwei_test/test:[镜像版本号]
实例化镜像即是运行一个镜像,即容器,容器为独立运行的一个或者一组应用以及他们所需要的运行环境
docker create [选项] 镜像 运行的程序 -i 让容器的输入保持打开状态 -t 让docker分配一个伪终端 例如
docker create -it docker.io/mysql /bin/bash
docker start 容器的id/名称
docker stop 容器的id/名称
docker rm 容器的id/名称