(三)Docker部署springboot项目

上文说过通过容器来创建镜像,这里介绍第二种创建镜像的方式,通过编写Dockerfile文件来创建镜像。

上图可以看到的Dockerfile文件是我们自己手动创建的,jdk也是事先上传到此目录下的,下面介绍文件各条内容:

    指定基镜像 centos

    指定维护者信息 zhaoxin

    复制jdk

    配置jdk环境

这里的docker.io/centos镜像是提前从镜像仓库中下载的centos基本镜像,相当于一个小型的纯净版的centos系统。这个文件的内容就是将我们事先上传的jdk安装到这个centos基本镜像中并配置环境变量,然后创建成一个新的镜像,这样我们这个新的镜像就是一个拥有jdk环境的centos系统,为我们之后添加项目做基础。

下面我们通过docker命令来执行此文件来创建新的镜像:

docker build -t jdk7/centos:v1 .

通过Dockerfile文件文件来创建镜像使用docker的build命令。

语法:docker build [OPTIONS] PATH | URL | -

这里说明一下OPTIONS常用的属性:

   -f :指定要使用的Dockerfile路径;

   -q :安静模式,成功后只输出镜像ID;

   --rm :设置镜像成功后删除中间容器;

   -q :安静模式,成功后只输出镜像ID;

   -t: 指定创建的镜像名称;

上面的命令即为使用当前目录下的Dockerfile(结尾出的“.”标识当前目录)来创建名为jdk7/centos标识(版本)为V1的镜像。

上面可以看到已经成功创建新的镜像。Docker images可以看到新的镜像。

此镜像的创建只是作为之后创建各个项目镜像的基础,有了这个带有jdk环境的镜像,之后需要创建的所有要用到jdk环境的镜像都可以重复的使用此基础镜像。

下面我们再通过Dockerfile文件的方式创建两个带有springboot程序的镜像。

这里我们再次编写Dockerfile文件,我们可以看到 实现上传到此目录的两个程序jar包,Dockerfile文件中内容:首先添加了程序jar包,然后设置了端口号,最后启动程序。然后通过docker build命令创建镜像,最后同样方式对另外一个程序也创建一个镜像。

最后我们可以看到一个带有jdk环境的centos基础镜像,两个基于此镜像的项目镜像。

我们运行两个服务镜像: docker run -d -p 8888:8000  ID

可以看到两个服务都正常运行了。

猜你喜欢

转载自blog.csdn.net/weixin_39893958/article/details/88686314