一、docker简介
Docker是世界领先的软件容器平台,容器就是将软件打包成标准化单元,以用于开发、交付和部署。
按我个人理解来说,你可以把docker想象成一个集装箱,你需要运行的软件和它依赖的tomcat,jdk,redis等想象成箱子。docker能将它们打包好,这样即使更换了软件的部署环境也不会产生因为环境不一致问题造成的运行不成功。实现了一次部署,多次运行,完成了软件和操作系统的解耦。
二、docker基本概念
Docker包括三个基本概念:
镜像(Image)
镜像就是一个只读模板,docker可使用它创建容器。
容器(Container)
镜像和容器的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等 。
仓库(Repository)
仓库是集中存放镜像文件的场所
docker架构如下图:
三、docker的常见基本命令
获取images:
docker pull 镜像名
使用当前目录的Dockerfile创建镜像:
docker build -t 标签名
列出所有镜像:
docker images
运行容器,-p表示端口映射,8080表示映射成的主机端口,80表示在容器端口
docker run -p 8080:80 -d image的名字
列出所有运行容器
docker ps
列出所有容器
docker ps -a
停止运行容器
docker stop container的id
删除容器
docker rm container的id
删除镜像
docker rmi image的id
在host和container之间拷贝文件,将A.war拷到容器的/www目录下
docker cp A.war container的id:/www/
重启docker容器
docker start 容器的id
进入docker容器内部
docker exec -it 容器的name /bin/bash
使用docker查看容器日志
docker logs -f -t --since="2017-05-31" --tail=10 edu_web_1
--since : 此参数指定了输出日志开始日期,即只输出指定日期之后的日志。
-f : 查看实时日志
-t : 查看日志产生的日期
-tail=10 : 查看最后的10条日志。
edu_web_1 : 容器名称