资讯专栏INFORMATION COLUMN

docker运行springboot实例

Darkgel / 2523人阅读

摘要:中使用打包直接在的时候执行指定了的名称为指定了镜像名为实例文件在文件夹下面建立的内容也可以直接在中用设置定义存储位置定义应用名称每隔小时分割为表示以分为边界添加依赖镜像查看日志工程

docker-maven-plugin

        
        app
        
            
                org.springframework.boot
                spring-boot-maven-plugin
            

            
            
                com.spotify
                docker-maven-plugin
                0.2.3
                
                    ${project.name}:${project.version}
                    
                        ${project.version}
                        latest
                    
                    ${project.basedir}/src/main/docker
                    false
                    
                        
                            ${project.build.directory}
                            ${project.build.finalName}.jar
                        
                    
                

                
                
                    
                        
                        
                            
                        
                    
                
            
        
    

指定了jar的名称为app

指定了docker镜像名为${project.name}:${project.version}

Springboot实例
@SpringBootApplication
@RestController
public class SpringbootDockerDemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(SpringbootDockerDemoApplication.class, args);
    }

    @RequestMapping("/")
    public String index(){
        return "this is index";
    }
}
docker文件

在src/main/docker文件夹下面建立Dockerfile

FROM java:8
# time zone
RUN echo "Asia/Chongqing" > /etc/timezone && dpkg-reconfigure -f noninteractive tzdata
RUN mkdir /app
RUN mkdir /app/logs
ADD app.jar /app/app.jar
ADD runboot.sh /app/
RUN bash -c "touch /app/app.jar"
WORKDIR /app
RUN chmod a+x runboot.sh
CMD /app/runboot.sh

runboot.sh的内容

sleep 90
java -Djava.security.egd=file:/dev/./urandom -jar /app/app.jar

也可以直接在Dockerfile中用ENTRYPOINT

ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","app.jar"]
设置log4j2.xml


    
        
        /app/logs
        
        springboot-docker-demo
    
    
        
            
        
        
            
            
                
                
            
        

        
        
            
            
        
    
    
        
            
        
    

添加依赖


            org.springframework.boot
            spring-boot-starter-web
            
                
                
                    org.springframework.boot
                    spring-boot-starter-logging
                
            
        
        
            org.springframework.boot
            spring-boot-starter-log4j2
        
build镜像
mvn package -Dskip.test=true
mvn docker:build
docker run -d -p 8080:8080 -v /tmp/docker-logs:/app/logs springboot-docker-demo
http://{docker-machine-ip}:8080/
查看日志
docker-machine ssh default
cd /tmp/docker-logs
tail -f springboot-docker-demo.log

工程github:springboot-docker-demo

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/65912.html

相关文章

  • docker运行springboot实例

    摘要:中使用打包直接在的时候执行指定了的名称为指定了镜像名为实例文件在文件夹下面建立的内容也可以直接在中用设置定义存储位置定义应用名称每隔小时分割为表示以分为边界添加依赖镜像查看日志工程 docker-maven-plugin app org.springframework.boo...

    linkFly 评论0 收藏0
  • 解决SpringBootDocker运行注册IP不正确的问题

    摘要:在开发中经常会碰到应用在启动成功以后,发现注册到注册中心的不是自己想要的。配置忽略网络接口使用中运行服务时,服务注册的时候,可以忽略掉一些指定名称的网络接口,想要忽略的网络接口的名称可以使用正则表达式来配置。 showImg(https://segmentfault.com/img/bVbj89J?w=900&h=500);在开发中经常会碰到SpringBoot应用在启动成功以后,发现...

    defcon 评论0 收藏0
  • jenkins+maven+docker+github全自动化部署SpringBoot实例

    实践性尝试,这里只在一台虚拟机下操作。 1.vmware 下centos 安装 设置centos 桥接模式 参考:https://www.cnblogs.com/loven... 2.centos 软件安装 1) docker 安装 yum install -y docker 2)JDK 安装 参考:https://blog.csdn.net/evan_chen_1/article/de...

    lk20150415 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<