标签:量化 仓库 运行 命令 rest 组成 持续集成 机器 共享
Docker 是世界领先的软件容器平台。是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,
然后发布到任何流行的Linux或Windows机器上,可以实现虚拟化(软件层面),并没有虚拟化“物理机“,
也不需要安装新系统,共用”宿主机“的操作系统,提供功能的同时提高性能。容器是完全使用沙箱机制,相互没有接口。
容器是一个应用层抽象,将代码和依赖资源打包在一起,多个容器可以在一台机器上运行,共享操作系统内核,但是各自作为独立的进程在运行,
和虚拟机相比,占用空间较少,瞬间就能完成启动。
docker 正如图标中扮演的角色一样,是个大鲸鱼,鲸鱼上的集装箱就是一个个容器,容器中是我们开发的应用程序
(不仅限于web应用), 每个容器都有自己的独立的环境(环境设置、网络、文件系统...),互不干扰。而每个箱子,又可以
打包成一个新的镜像,放到其他服务器中的docker环境中直接运行,不在需要重复安装程序运行环境。
通俗一点,镜像就类似于我们日常中的安装软件,甚至说是操作系统镜像更为形象点。
给电脑安装Windows系统需要有Windows镜像,因此给docker安装容器也是需要镜像的,
主要使用在搭建和配置开发环境上
Docker一共分为三部分 1仓库 2镜像 3容器.
1 仓库 :见名知意,它就好比是 存储 各种 app 的地方,从这里下载镜像
2 镜像 : 因为根据Dockers的特性,延申出一个名词,好比是程序的 安装包
3 容器 : 有了镜像就可以创建容器,并且在创建的时候设置权限,就像一个运行的 app ,一个镜像可以创建多个容器,之间是隔离的,在主从这点就很好的诠释了
优点 :速度更快 、更加轻量化,节省资源,弹性延伸,快速扩展,迁移方便,持续交付,部署,组建微服务架构
一致的运行环境:Docker 的镜像提供了除内核外完整的运行时环境,确保了应用运行环境一致性,从而不会再出现“这段代码在我机器上没问题啊”这类问题。
更快速的启动时间:可以做到秒级、甚至毫秒级的启动时间。大大的节约了开发、测试、部署的时间。
弹性伸缩,快速扩展:善于处理集中爆发的服务器使用压力。
迁移方便:可以很轻易的将在一个平台上运行的应用,迁移到另一个平台上,而不用担心运行环境的变化导致应用无法正常运行的情况。
持续交付和部署:使用 Docker 可以通过定制应用镜像来实现持续集成、持续交付、部署。
组建微服务架构:通过多个容器,一台机器可以跑多个服务,因此在本机就可以模拟出微服务架构。
Compose
当用到模拟或者演示项目的时候 会用到Compose 这个东西,它是负责实现对Docker容器集群的 快速编排
1 创建出需要的准备工作,比如项目的某个库,框架编写的源代码,写配置文件 约定好 端口,路由 之类的
2 定义组成应用的服务,以便他们可以在隔离的环境中一起运行,连通各服务
3 运行和撰写启动并运行整个应用
命令:
docker images 查看已下载的镜像
docker rmi 镜像名称:标签名 删除已下载的镜像
docker search 镜像 从官方仓库(hub.docker.com)查找镜像
docker pull 镜像名称:标签名 标签名默认是 latest,代表最新版本。
docker run 创建容器
docker ps 列出运行中的容器(运行中)
docker ps -a 列出所有的容器(运行、未运行)
docker rm 容器名称 删除停止的容器
docker rm -f 容器名称 删除运行中的容器
docker start 容器名称 启动容器
docker stop 容器名称 停止容器
docker restart 容器名称 重启容器
docker exec 执行容器中的指令
尽量不要使用docker commit
制作镜像。
tips :
docker的四种网络模式 : https://www.cnblogs.com/gispathfinder/p/5871043.html
为什么要用 docker :https://www.cnblogs.com/myprogramer/p/10288634.html
标签:量化 仓库 运行 命令 rest 组成 持续集成 机器 共享
原文地址:https://www.cnblogs.com/wy919/p/12675701.html