简单dockerfile挂载springboot项目
2021-04-13 06:27
标签:rip 停止 端口 存在 声明 pre touch 系统启动 touch命令 背景说明: 一个springboot小项目,通过容器化方式部署。当修改工程源码后打包成jar,不想每次都重新进行docker build生成新的镜像,则采用挂载方式,dockerfile如下: dockerfile中注释已经明确,第一次需要构建镜像,同时执行“docker run -d -p 8080:8080 -v 自定义存放目录:VOLUME目录 自定义镜像名称”启动容器,后续更改了jar后,只需把jar放到自定义存放目录即可 然后执行“docker restart 容器名称” 简单dockerfile挂载springboot项目 标签:rip 停止 端口 存在 声明 pre touch 系统启动 touch命令 原文地址:https://www.cnblogs.com/Arthemis-z/p/13344991.html# 容器化部署方案
# Docker image for springboot file run
# VERSION 0.0.1
# Author: zhaoxx
# #################################################################### #
# Description:
# 1、如使用docker部署,当前文件需要放到服务器/home/docker/路径下
# 2、当前工程生成的jar也要放到/home/docker/路径下
# 3、构建镜像:docker build -t 自定义镜像名称 .
# 4、启动容器:docker run -d -p 8080:8080 -v 自定义存放目录:VOLUME目录 自定义镜像名称
#
# 后续启动:docker start 镜像名称
# 后续停止:docker stop 镜像名称
# 或者可视化插件中停止与启动
# #################################################################### #
# 基础镜像使用java
FROM java:8
# 声明运行时容器的端口,对应项目端口
EXPOSE 8080
# 创建一个可以从本地主机或其他容器挂载的挂载点,一般用来存放数据库和需要保持的数据等
VOLUME /home/kafka-deliverer
# 将jar包添加到容器中,可以更名,后者为容器中jar
#ADD kafka-deliverer-1.0.jar kafka-deliverer-1.0.jar
# 指定工作目录
WORKDIR /home/kafka-deliverer
# sh -c是将后面命令视为一个整体,touch命令实则改变了jar的时间,并无其它意义
RUN sh -c ‘touch /kafka-deliverer-1.0.jar‘
# 此处命令为启动容器
# "-Djava.security.egd=file:/dev/./urandom"java参数,可靠的产生随机数,此处目的是加快系统启动,如果存在tomcat建议使用此参数
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/kafka-deliverer-1.0.jar"]
上一篇:java-异常处理