centos 7 用docker 启动java程序

328 阅读1分钟

docker 介绍文档参考

zhuanlan.zhihu.com/p/455601775

使用文档参考

blog.csdn.net/Pcccy/artic…

blog.csdn.net/xixiyuguang…

blog.csdn.net/wang_jing_j…

一、安装检查

  • 安装docker
  • docker 安装jdk
  • docker 创建java镜像,并启动java项目

默认从第三步开始,第1,2步需要自行完成。

二、docker 创建java镜像,并启动java项目

  1. 在项目根目录下创建dockerfile文件,并复制以下内容。

FROM java:8

VOLUME /temp

ADD springboot-api-0.0.1-SNAPSHOT.jar app.jar


RUN bash -c 'touch  /app.jar'


ENTRYPOINT ["java","-Djava.security.egd-file:/dev/./urandom","-jar","-Xmx128m","-Xms128m","/app.jar"]

2.构建镜像

docker build -t jiaqunba .
  1. 查看构建镜像是否制作完毕
docker images | grep demo
  1. 启动镜像
docker run --name jiaqunba -d -p 8080:8080 jiaqunba
  1. 查看日志
docker logs -f jiaqunba

ps: 不好的是每次重新上传jar包后,需要删除镜像和容器,重新构建镜像,和启动容器

优化后,用以下脚本代替,可快速打包部署。

脚本内容:

#!/bin/bash


appName='jiaqunba'

echo  'begin backup ..'


dat=$(date "+%Y%m%d")

dirname=$dat


mkdir -p $dirname

 
cp -r ./*.jar $dirname


echo 'backup finish ...'

echo 'backup success...'

   


echo 'start begin ...'

echo '关闭 docker容器.'

docker stop $appName

echo '删除docker 容器'

docker rm $appName

echo '路径'

pwd

echo '删除镜像'

docker rmi $appName

echo '重新构建'

docker build -t $appName .

echo '查看是否构建完成'

docker images | grep $appName

echo '启动镜像'

docker run --name $appName -d -p 8080:8080 $appName

echo '查看日志'

docker logs -f $appName