岳英豪 2019-06-27
Docker是一个虚拟化的容器,将app交由给指定docker容器可以达到:
首先,需要安装docker:https://docs.docker.com/
然后,通过docker version 命令确保安装成功。切记windows用户在powershell中执行docker命令,不能通过cmd执行。
我们要知道docker和maven一样拥有自己的仓库,只不过docker的仓库存储的是官方镜像,maven存储的是jar。
每个镜像都拥有自己的特性,比如有的镜像安装了tomcat,有的镜像安装了java。但是只有镜像还不够,我们需要在镜像中加入自己的app,app的形态可以是jar,也可以是war。
镜像制作需要用的docker build 命令:
1.创建一个文件夹:Dockerfile文件是用于制作镜像使用的文件,seckill.jar是需要拷贝到镜像中的app。
dockerfile:
第一行:表明该镜像源于 hub.c.163.com/library/java:openjdk-8-jre-alpine ,而这个基础镜像包含java的运行环境。也就是为我的app提供java环境。
第二行:将当前目录下的seckill-0.0.1-SNAPSHOT.jar复制到镜像中/opt/webapps/seckill/seckill.jar。
第三行:在镜像开始运行时执行的命令,这个命令是启动app。
执行以下命令完成制作:
与jar类似,只需要修改dockerfile即可:
我们拥有的是一组微服务,每次单个启动镜像很麻烦,所以就需要用到docker-compose。
docker-compose.yml文件内容:
启动:
记住,要执行docker-compose相关的命令需要进入docker-compose.yml文件所在的文件夹。