如何创建Dockerfile, 并让hub.docker.com帮忙build

本文举例将一个MAVEN springboot 项目打包到docker.


1. tree -a  看下当前springboot 的build output 结构

如何创建Dockerfile, 并让hub.docker.com帮忙build_第1张图片

2. 上图中, 需要conf文件夹 和打包的.war文件就可以了,所以 Dockerfile:

FROM openjdk:8-jdk-alpine
VOLUME /tmp
#ARG JAR_FILE
#ADD ${JAR_FILE} app.jar
#http://spring.io/guides/gs/spring-boot-docker/
COPY target/yq-server-mgr.war /springboot/app.war
#[conf] is folder, so just copy its content, not include folder itself
COPY target/conf/ /springboot/conf/
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/springboot/app.war"]

3. 这里本地build, 也是可以的

$ docker build -t spring-boot-docker-yqapp:1.0.0 .

4. Build完成后, 查看images

$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
spring-boot-docker-yqapp 1.0.0

5. 这个image可以正常的本地运行, 那么久可以upload到docker hub. 当然, 先docker login

$ docker tag spring-boot-docker-yqapp:1.0.0 allan114/springboot:yqapp

$ docker push allan114/springboot:yqapp

6. 可以看到我们upload的image:  https://hub.docker.com/r/allan114/springboot/tags/


下面部分介绍如何让docker hub 帮忙在线build.


1. 首先, 我们需要在https://github.com/ 建立个账户,创建project, 并将代码上传, 记住Dockerfile位置


2. Create - Create Automated Build , 需要link到github account

如何创建Dockerfile, 并让hub.docker.com帮忙build_第2张图片

3. 填入相关的build文件位置, 需要手工trigger build

如何创建Dockerfile, 并让hub.docker.com帮忙build_第3张图片

4. end

你可能感兴趣的:(如何创建Dockerfile, 并让hub.docker.com帮忙build)