当前位置:   article > 正文

学习Spring Boot:(二十三)Spring Boot 中使用 Docker_springboot docker 混淆

springboot docker 混淆

前言

参考代码
简单的学习下怎么在 Spring Boot 中使用 Docker 进行构建,发布一个镜像,现在我们通过远程的 docker api 构建镜像,运行容器,发布镜像等操作。

这里只介绍两种方式:

  1. 远程命令 api (需要知道 Docker 命令)
  2. maven 插件 (不需要了解 Docker 命令)

开启 Docker api 远程访问

开启 docker api 远程操作的功能,
例如,centos 7 中在 /usr/lib/systemd/system/docker.service,文件中,修改 ExecStart 的参数:

ExecStart=/usr/bin/dockerd  -H tcp://0.0.0.0:2375  -H unix:///var/run/docker.sock
  • 1

端口自定义设置即可。

重载所有修改过的配置文件,并且重启 docker,

systemctl daemon-reload    
systemctl restart docker.service 
  • 1
  • 2

需要注意的是,由于没有密码登陆任何权限验证,外网或者生产环境需要上证书使用。

命令方式构建镜像

这种方式其实非常简单,就是需要懂得 docker 命令,才能操作。

经过上面开启 Docker Api 后,我们可以使用网络环境操作 Docker 引擎了。

  1. 新建 Dockerfile 构建镜像文件,新创建一个文件夹,专门放构建镜像需要的文件,我创建的是 /src/docker/

    FROM java:8
    EXPOSE 8080
    
    VOLUME /tmp
    ADD springboot-docker.jar app.jar
    ENTRYPOINT ["java","-jar","/app.jar"]
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
  2. 执行 maven 命令 ,将项目打包 mvn clean package --DskipTests,然后将打好的 jar 包,也放入到 Dockerfile项目目录中。

  3. 然后进入 src/docker 目录下执行 :

    docker -H tcp://xxx.xxx.xxx.xxx:2375 build -t test .
    
    • 1

    开始构建镜像:

    Sending build context to Docker daemon  31.74MB
    Step 1/5 : FROM java:8
     ---> d23bdf5b1b1b
    Step 2/5 : EXPOSE 8080
     ---> Using cache
     ---> 060a43a42146
    Step 3/5 : VOLUME /tmp
     ---> Using cache
     ---> b4f88fde6181
    Step 4/5 : ADD springboot-docker.jar app.jar
     ---> 3a40188825b0
    Step 5/5 : ENTRYPOINT ["java","-jar","/app.jar"]
     ---> Running in ab093916fc4c
    Removing intermediate container ab093916fc4c
     ---> 45a3966feb60
    Successfully built 45a3966feb60
    Successfully tagged test:latest
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18

使用 docker-maven-plugin构建镜像

在 maven 项目下加入 docker-maven-plugin
            <!--打包docker插件相关参数的配置-->
            <plugin>
                <groupId>com.spotify</groupId>
                &
  • 1
  • 2
  • 3
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/article/detail/57863
推荐阅读
相关标签
  

闽ICP备14008679号