centos7使用Dockerfile(docker | 您所在的位置:网站首页 › dockerfile启动jar包 › centos7使用Dockerfile(docker |
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
如果需要改变配置环境 使用 --spring.profiles.active=test
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
不使用Dockerfile方式 version: '3' services: mydemo: image: primetoninc/jdk:1.8 ports: - 8080:8080 restart: "always" network_mode: "host" environment: TZ: Asia/Shanghai container_name: my-demo volumes: - /data/mydemo:/home/mydemo - /data/mydemo/logs:/logs - /etc/localtime:/etc/localtime entrypoint: java -Dspring.profiles.active=prod -Xms512m -Xmx512m -jar /home/mydemo/mydemo-0.0.1.jar
这种方式只是使用了容器环境,然后把jar路径挂载出来,替换jar包不用重新生成镜像,直接重启容器即可
|
CopyRight 2018-2019 实验室设备网 版权所有 |