015-Docker

作者: 郭艺宾 | 来源:发表于2018-06-19 00:05 被阅读3次

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。Docker image 是用于运行容器化进程的方案,在本文中,我们将构建一个简单的 Spring Boot 应用程序。

    首先新建一个简单的项目,只包含一个web组件,如下:

    在项目中新建一个简单的接口,如下:

    启动项目,测试接口访问:

    上面一个简单的项目和接口完成了。接下来配置和docker有关的内容。首先配置一个pom里面的插件:

    Spotify 的 docker-maven-plugin 插件是用于构建 Maven 的 Docker Image 

    1)imageName指定了镜像的名字,本例为 springboot/15-spring-docker

    2)dockerDirectory指定 Dockerfile 的位置 

    3)resources是指那些需要和 Dockerfile 放在一起,在构建镜像时使用的文件,一般应用 jar 包需要纳入。

    接下来创建文件 src/main/docker/Dockerfile:

    FROM指令指明了当前镜像继承的基镜像,编译当前镜像时会自动下载基镜像。

    MAINTAINER 指令指明了当前镜像的作者。

    ADD指令是从当前工作目录复制文件到镜像目录中去。

    EXPOSE指令指明了镜像运行时的容器必须监听指定的端口。

    ENTRYPOINT指令可让容器像一个可执行程序一样运行,这样镜像运行时可以像软件一样接收参数。

    接下来在项目根目录下执行命令:

    mvn  package  docker:build

    注意:执行上面的环境需要有maven和docker的安装环境,建议可以把代码拉到linux上面直接执行命令:

    接下来,在docker环境下查看镜像列表,发现镜像已经成功创建:

    最后创建一个容器,测试镜像是否成功:

    docker run -dit -p 8015:8015 springboot/15-spring-docker

    运行 docker  logs 命令,查看容器启动日志,

    可以看到,启动成功。

    访问服务器映射的端口:

    可以看到容器用docker部署成功!

    代码地址: https://gitee.com/blueses/spring-boot-demo

    相关文章

      网友评论

        本文标题:015-Docker

        本文链接:https://www.haomeiwen.com/subject/pbuoeftx.html