docker简介
Docker是一个开源商业用品,基于go语言开发,Linux内核技术,支持Linux、Windows和Mac操作系统。Docker容器与虚拟机类似,但二者原理不同。容器是将操作系统虚拟化,虚拟机则是虚拟化硬件,因此容器可以更便携、更高效的利用服务器。借助docker可以快速交付、测试和部署。大大减少编码和生产环境中运行代码部署环境的延迟。
镜像
Docker把应用程序及其依赖打包在镜像文件里,镜像文件相当是一个root文件系统,只有通过这个文件才能生成容器实例。同一个镜像文件,可以生成多个同时运行的容器实例。
镜像文件是通用的,一台机器的镜像文件拷贝到另一台机器同样可以使用,即使Windows的镜像拷贝到Linux中一样可以。一般来说为了节省时间,镜像文件应尽量使用现成的而不是自己制作。Docker的官方仓库Docker Hub是最常用的镜像仓库。
容器
容器是以镜像为基础的,是独立运行的一个或一组应用,容器的实质是进程,可以拥有自己的root文件系统、自己的网络配置、自己的进程空间甚至自己的用户id,是镜像运行的实体。容器可以被创建、启动、停止、删除、暂停等,关闭容器并不会删除容器文件,只是容器停止运行,终止运行的容器文件,依然会占据硬盘空间。
Docker命令
docker images docker所有镜像 一个镜像可以有多个容器
docker ps docker正启动的容器
docker ps -a docker所有容器
docker run -it 镜像id /bin/bash 进入某个镜像的容器
exit 退出容器
docker rmi -f 镜像id 强制删除镜像
docker rm 容器id 删除容器
docker rm -f 容器id 强制删除容器
docker tag 镜像id 容器名字:版本号 修改容器版本号
docker tab 镜像id 镜像新名称 修改镜像名称 修改后会出现两个id一样的镜像,删除其中不用的一个
docker build -f 本地dockerfile文件路径 -t 镜像名字 . docker将jar包打成镜像(最后的点不要忘记)