• Dockerfile之SpringBoot的镜像构建


    编写Dockerfile

    # 镜像来源的基础
    FROM java:8
    # 创建镜像容器时,会在Docker容器中创建对应的文件夹,因为SpringBoot内嵌的Tomcat工作路径需要这个文件夹。
    VOLUME /tmp
    # 拷贝宿主机的文件到容器中
    COPY /usr/local/xxx.log /root/
    # 构建Docker镜像时,传入参数
    # 比如:docker build --build-arg JAR_NAME=manage-0.0.1-SNAPSHOT.jar
    ARG JAR_NAME
    # 复制jar包名称,简化名称
    ADD ${JAR_NAME} app.jar
    # docker容器中暴露出的端口,用于docker容器启动时,映射端口
    # 比如:docker run -di --name 容器名称 -p 8080:8080 镜像名称,这里前面的8080对应宿主机的端口,后面的8080对应docker容器中的端口,意思就是将宿主机的8080端口和docker容器的8080端口映射上去
    EXPOSE 8080
    # 最后一步 执行命令
    # 格式一:ENTRYPOINT exec java ${JAVA_OPTS} -Djava.security.egd=file:/dev/./urandom -jar /app.jar
    # 格式二:ENTRYPOINT ["java", "${JAVA_OPTS}", "-Djava.security.egd=file:/dev/./urandom", "-jar", "/app.jar"]
    ENTRYPOINT exec java ${JAVA_OPTS} -Djava.security.egd=file:/dev/./urandom -jar /app.jar

    构建镜像

    打镜像并启动

    # 构建命令:docker build --build-arg JAR_NAME=manage-0.0.1-SNAPSHOT.jar -t app .
    
    # 启动命令:docker run -di --name app01 -p 8080:8080 app

     

  • 相关阅读:
    Codeforces 691A Fashion in Berland
    HDU 5741 Helter Skelter
    HDU 5735 Born Slippy
    HDU 5739 Fantasia
    HDU 5738 Eureka
    HDU 5734 Acperience
    HDU 5742 It's All In The Mind
    POJ Euro Efficiency 1252
    AtCoder Beginner Contest 067 C
    AtCoder Beginner Contest 067 D
  • 原文地址:https://www.cnblogs.com/lcmlyj/p/16171850.html
Copyright © 2020-2023  润新知