docker运行jar包加载外部配置文件方式
作者:a540948758
这篇文章主要介绍了docker运行jar包加载外部配置文件方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
docker运行jar包加载外部配置文件
1、创建Dockerfile文件
FROM java EXPOSE 8083 ADD data_app-3.2.1-SNAPSHOT.jar smart.jar COPY application.properties / RUN bash -c 'touch /smart.jar' ENTRYPOINT ["java","-jar","/smart.jar","--spring.config.location=/application.properties"]
FROM
拉取java镜像EXPOSE
开放的端口号ADD
将需要执行的jar包复制到容器的根目录下,并更换别名COPY
将配置文件复制到容器的根目录中RUN
将在当前镜像基础上执行指定命令,并提交为新的镜像ENTRYPOINT
配置容器启动后执行的命令
2、构建docker镜像
docke build -t java/demo .
注意事项:不能漏掉.,-t是给镜像命名,.(点)是基于当前目录的Dockerfile来构建镜像
3、启动docker容器
docker run -d -p 8083:8083 --restart=always --name demo java/demo
docker run
:基于镜像启动一个容器-d
:后台方式启动-p 8083:8083
: 端口映射,将宿主机的8083端口映射到容器的8083端口–name
:容器名,我起的叫demojava/demo
:要启动的镜像名称–restart=always
跟随docker容器启动
4、查看,访问
docker ps
打开测试工具poman,192.168.99.100:8083+对应的接口名称,测试结果返回即成功
docker搭建jar包运行环境
docker搭建jar包运行环境Dockerfile(之前都是用的 java:8-alpine
,因为使用 easyexcel
字体问题切的)
# 容器版本 FROM centos:centos7.9.2009 # jdk根目录 ENV JAVA_DIR=/usr/local # 把宿主机的jdk上传到容器中 COPY ./jdk1.8.0_51 $JAVA_DIR/jdk1.8.0_51 # 配置环境变量 ENV JAVA_HOME=$JAVA_DIR/jdk1.8.0_51 ENV PATH=$PATH:$JAVA_HOME/bin # 设置字符,不然中文会乱码 ENV LANG en_US.utf8 # 安装字体 RUN yum install dejavu-sans-fonts fontconfig -y #添加时区 ENV TZ=Asia/Shanghai RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
编写玩Dockerfile后build,可推送到镜像仓库后重复使用或者导出来重复使用
- build
docker build -t [镜像服务器地址]:[版本号] .
- pull
docker pull [镜像服务器地址]:[版本号]
- 导入导出镜像
#导入 docker load -i xxx.tar #导出 docker save -o xxx.tar [镜像id|镜像名:tag]
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。