zoukankan      html  css  js  c++  java
  • 让你的Spring Boot应用快速运行在Docker上面


    前置条件:

    1. 服务器(我这边是CentOS7)上已经安装了Docker(安装步骤很简单,可以参考我上一篇博客)

    2.服务器上已经安装了Java和Maven

    在满足以上条件后,我们就可以开始了:

    1. 创建一个简单的Spring Boot应用,应用只有一个控制器DockerController,内容如下:

    package cn.bounter.docker.controller;
    
    import org.springframework.web.bind.annotation.GetMapping;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RestController;
    
    @RestController
    @RequestMapping("/api/docker")
    public class DockerController {
    
        @GetMapping
        public String get() {
            return "Hello Docker!";
        }
    
    }

    2. 在pom文件中添加dockerfile-maven-plugin插件,添加之后的build如下:

    <build>
            <plugins>
                <plugin>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-maven-plugin</artifactId>
                </plugin>
    
                <!--Docker-->
                <plugin>
                    <groupId>com.spotify</groupId>
                    <artifactId>dockerfile-maven-plugin</artifactId>
                    <version>1.3.6</version>
                    <executions>
                        <execution>
                            <id>default</id>
                            <phase>package</phase>
                            <goals>
                                <goal>build</goal>
                            </goals>
                        </execution>
                    </executions>
                    <configuration>
                        <repository>bounter/${project.artifactId}</repository>
                        <buildArgs>
                            <JAR_FILE>target/${project.build.finalName}.jar</JAR_FILE>
                        </buildArgs>
                    </configuration>
                </plugin>
            </plugins>
        </build>

    3. 在和pom文件同级目录下创建Dockerfile,内容如下:

    FROM openjdk:8
    VOLUME /tmp
    ARG JAR_FILE
    COPY ${JAR_FILE} app.jar
    ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]

    4. 拷贝应用代码到服务器,在pom所在的目录执行:mvn clean package

    5. 查看所创建的镜像:docker images

    6. 创建容器并运行:docker run -d -p 8080:8080 bounter/bounter-docker

    7. 验证:curl localhost:8080/api/docker

    以上就是全部步骤了,是不是很简单哉,赶快自己动手试试吧!如果还有什么不明白的,请参考我的Github,地址:https://github.com/13babybear/bounter-docker

  • 相关阅读:
    把csv文件导入数据库
    c# DataTable 针对xml、excel、csv导入和导出
    ASP.NET常用珍藏代码
    C# 判断图片链接是否存在
    在asp.net中长内容自动分页的实现.NET教程
    SQL代理服务启动不了SQLSERVERAGENT
    SQL重复记录查询(转载)
    在asp.net中长内容自动分页的实现.NET教程2
    根据年月来判断月里天数
    SQL字符串函数
  • 原文地址:https://www.cnblogs.com/gdufs/p/9564407.html
Copyright © 2011-2022 走看看