centos7使用Dockerfile(docker-compose)运行jar包


 

 

Dockerfile文件

 

FROM openjdk:8-jdk-alpine

MAINTAINER "镜像维护者的姓名和邮箱地址"

WORKDIR app

ADD demo.jar /app/demo.jar

ENV TIME_ZONE=Asia/Shanghai 
RUN ln -snf /usr/share/zoneinfo/$TIME_ZONE /etc/localtime && echo $TIME_ZONE >  /etc/timezone

EXPOSE 8081

CMD java -jar  -Xms512M -Xmx512M -Duser.timezone=GMT+8 /app/demo.jar

 

 

 

demo.jar是运行的jar包的名字,根据自己的来

EXPOSE 后面的端口跟jar包启动的端口即可

 

然后把运行的demo.jar放到和Dockerfile放在同一个目录下

 

 

 

然后执行

docker build -t mydemo:1.0 .

说明:docker build -t 新镜像名字:TAG .

 

打印

Sending build context to Docker daemon  17.29MB
Step 1/6 : FROM openjdk:8-jdk-alpine
 ---> a3562aa0b991
Step 2/6 : MAINTAINER "镜像维护者的姓名和邮箱地址"
 ---> Using cache
 ---> 16e8e339e102
Step 3/6 : WORKDIR app
 ---> Using cache
 ---> 995ea3982a9b
Step 4/6 : ADD demo.jar /app/demo.jar
 ---> Using cache
 ---> 6126614408ad
Step 5/6 : EXPOSE 8881
 ---> Using cache
 ---> 2460834128af
Step 6/6 : CMD java -jar /app/demo.jar
 ---> Using cache
 ---> 0206019397cb
Successfully built 0206019397cb
Successfully tagged mydemo:1.0

 

使用

docker images

 

 

运行镜像

docker run -dp 8080:8881 mydemo:1.0

 

 docker-compose.yml文件

也可以直接使用docker-compose直接启动

version: '3'
services:
  mydemo:
    build:
      context: .  #Dockerfile 所在目录
      dockerfile: Dockerfile 
    image: file-server  #镜像名称
    restart: unless-stopped
    network_mode: "host"
    privileged: true
    container_name: file-server  #容器名称
    environment:
      - TZ=Asia/Shanghai
    volumes:
      - /logs:/logs
    ports:
      - 8080:8080

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM