Spring Boot服务打包成docker镜像并推送到镜像仓库

  1. 编写微服务Dockerfile

    # 基础镜像,如果本地没有,会从远程仓库拉取
    FROM openjdk:11
    # 镜像的制作人
    MAINTAINER zjg_num01@163.com
    # 定义环境变量
    ENV JAVA_OPTS="$JAVA_OPTS"
    # 声明容器应该打开的端口并没有实际将端口启用
    EXPOSE 6010
    # 拷贝本地文件到镜像中
    COPY ./target/gateway-service.jar ./
    # 指定容器启动时要执行的命令,但如果存在CMD命令,CMD命令中的参数会被附加到ENTRYPOIN指令的后面
    ENTRYPOINT ["java","-jar","./gateway-service.jar","$JAVA_OPTS"]
    
  2. 通过maven命令构建微服务:

    mvn clean package -Dmaven.test.skip=true
    
  3. jar包构建成docker镜像并推送到镜像仓库中:

    docker build -t gateway-service .
    # -f : 可以指定要使用的Dockerfile路径.
    # -m : 可以设置内存最大值.
    # -t : 可以指定镜像名称及版本.
    # .  : 指定构建镜像的上下文路径,docker build 会将这个路径下所有的文件都打包上传给Docker引擎.
    
  4. 将微服务镜像推送到镜像仓库中:

    docker login http://192.168.1.90:6666
    docker push http://192.168.1.90:6666/simple-microservice/gateway-service:v1.0
    # simple-microservice:表示镜像仓库中的项目名称,把镜像打到指定的项目下.
    # gateway-service: 表示镜像名称.
    # v1.0:表示镜像版本.
    

原文地址:https://www.cnblogs.com/xiaoshuzhagen/p/14704940.html