docker运行springboot实例

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            -->                -->                    package-->                    -->                        build-->                    -->                -->            -->
  1. 指定了jar的名称为app

  2. 指定了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

关键字:java, docker


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部