docker通过dockerfile打java项目镜像
环境:centos7
思路:java -jar 启动的项目打包成docker images进行运行
创建dockerfile——>创建shell脚本——>打包images
1、dockerfile内容如下
[root@k8s-master xxl-execl]# more dockerfile #网上拖取java8的镜像 FROM java:8 MAINTAINER zhangshan-makepakege #添加本地的jar包到根目录 ADD *.jar web.jar #暴露两个jar运行的端口 EXPOSE 9999/tcp EXPOSE 16081/tcp #执行cmd命令,下面两种方式都可以 #ENTRYPOINT ["java","-Duser.timezone=GMT+08","-jar","/web.jar"] ENTRYPOINT ["sh","-c","java -Duser.timezone=GMT+08 -jar /web.jar"]
2、创建shell脚本
[root@k8s-master xxl-execl]# more zxfb.sh #!/bin/bash dir=$(cd $(dirname $0);pwd) #获取当前路径 im='xxl-job-exec' #打成的images名称 ck='100.98.100.234' #harbor仓库地址 tag=`date +%-m`.`date +%-d` #images的tag版本 docker build -t $ck/$im:$tag -f $dir/dockerfile $dir/ docker push $ck/$im:$tag docker rmi $ck/$im:$tag
3、执行shell脚本和运行容器
chmod u+x zxfb.sh docker run --name xxl-job -p 9999:9999 -p 16081:16081 -d [images-id] #替换images-id的内容
做一个决定,并不难,难的是付诸行动,并且坚持到底。