Dockerfile构建springboot Image

目录

    • 编译springboot项目
    • 编写Dockerfile
    • 使用Docker构建Image
    • 运行自己构建的Image
    • Push Image到Harbor
    • 问题总结

编译springboot项目

  1. 大家可以使用git pull 我准备好springboot demo项目下:
    git pull https://github.com/wenshangbei/Jenkins_demo.git
    
  2. 使用maven打包好项目
    mvn package
    

编写Dockerfile

创建Dockerfile文件,我在github的demo项目里面已经创建了。

# 指定base image
FROM openjdk:8-jdk-alpine

# 挂载容器/tmp到hos主机上的/var/lib/docker/volumes 里面的目录
VOLUME /tmp

# 将target里面的jar文件添加到镜像,以app.jar命名
ADD target/*jar app.jar

# 使用ENTRYPOINT 在容器运行时使用命令 jave -jar /app.jar
ENTRYPOINT [ "java", "-jar", "/app.jar" ]

使用Docker构建Image

docker build -t 192.168.108.131/library/jenkins_demo:v1.0.0 --no-cache .

其中 -t是用来打tag的,192.168.108.131是harbor或者其它镜像仓库的域名或者IP,library为harbor里的project名,jenkins_demo就是自己的镜像名,v1.0.0为镜像版本号。

运行自己构建的Image

docker run -p 8888:8080 -d 192.168.108.131/library/jenkins_demo:v1.0.0

结果返回容器ID。

其中-p 指定host端口8888映射到容器里面的8080端口,我们可以通过host端口8888去访问,例如http://127.0.0.1:8888/testMethod
-d是后台运行,运行后返回容器ID

curl http://127.0.0.1:8888/testMethod

会返回response
在这里插入图片描述

Push Image到Harbor

  1. 先login到Harbor,输入账号跟密码
docker login 192.168.108.131

其中192.168.108.131为Harbor的IP
Dockerfile构建springboot Image_第1张图片
2. 使用docker push,根据自己的信息修改以下命令:

docker push 192.168.108.131/library/jenkins_demo:v1.0.0

问题总结

基本大家会遇到Error response from daemon: … connect: connection refused 问题
请参考:https://blog.csdn.net/programer_bei/article/details/101462821

你可能感兴趣的:(Docker,devops,harbor,Docker,Harbor)