将Spring Boot程序打包成docker镜像

写了这多关于平台云的文章,其实我的平台云还没有搭建起来,但是我最终的目标是将spring boot运行于平台云当中。

我所知道我目前要学习的东西有CoreOS+Docker--这是平台云的基石。后面打算部署Deis或者flynn作为平台云。

不管怎么说,spring boot应用最终作为一种微服务运行于docker容器之中的。最后负载均衡也好,数据库也好,都是让平台云去做。

1、写一个简单的spring boot的例子。

使用STS新建一个spring boot项目,添加一点代码(其实就是访问“/”路径,返回字符串),整个代码见附件。

2、新建Dockerfile文件,内如如下:

FROM ubuntu:latest

MAINTAINER wiselyman

RUN apt-get update

RUN apt-get install default-jre -y

RUN apt-get install default-jdk -y

RUN apt-get install maven -y

ADD pom.xml /app/

ADD src/ /app/src/

WORKDIR /app/

RUN mvn package

EXPOSE  8080

CMD ["java","-jar","target/spring-boot-docker-0.0.1-SNAPSHOT.jar"]

3、我的windows上没有docker,上传到我的fedora上。


将Spring Boot程序打包成docker镜像
 

4、执行docker编译

docker build -t localhost:5000/spring-boot-docker .

 不要使用下面命令,会导致到不到文件

docker build -t localhost:5000/spring-boot-docker - < Dockerfile

5、查看编译好的镜像

docker images

 
将Spring Boot程序打包成docker镜像
 

6、运行镜像

docker run -d --name spring-boot-docker -p 49163:8080 a6e9ac3638fa

  查看状态

docker ps -a

 
将Spring Boot程序打包成docker镜像
 

访问页面


将Spring Boot程序打包成docker镜像

新书推荐《JavaEE开发的颠覆者: Spring Boot实战》,涵盖Spring 4.x、Spring MVC 4.x、Spring Boot企业开发实战。

 

京东地址:http://item.jd.com/11894632.html

当当地址:http://product.dangdang.com/23926195.html

亚马逊地址:http://www.amazon.cn/图书/dp/B01D5ZBFUK/ref=zg_bsnr_663834051_6 

淘宝地址:https://item.taobao.com/item.htm?id=528426235744&ns=1&abbucket=8#detail

 

或自己在京东、淘宝、亚马逊、当当、互动出版社搜索自选。


将Spring Boot程序打包成docker镜像