docker 部署Java项目

jdk安装参考:
https://blog.csdn.net/jg_csdn/article/details/122671063?spm=1001.2014.3001.5501

1、将jar包上传到centos上
2、编写Dockerfile文件,创建文件名为Dockerfile的文本文件,将maven打包好的jar包和Dockerfile文件放在同一目录下,内容如下:

Dockerfile文件内容

FROM java:8COPY  small_demo.jar  app.jarRUN bash -c "touch /app.jar"EXPOSE 8080ENTRYPOINT ["java", "-jar", "app.jar"]

3、 制作镜像

docker build -t  small .


制作完成,查看镜像

docker image ls

4、启动容器

docker run -d -p 8080:8081 small


重启docker

 systemctl  restart docker

再重启docker 容器
dockers start 容器id

5、日志清理
有两种方式,一种写脚本定时删除,另一种设置容器日志大小
默认日志存储在/var/lib/docker/containers/目录下

一、写脚本定时删除
新建脚本,我一般存放在日志目录同级

 vim  /var/lib/docker/containers/clean_docker_log.sh

#!/bin/sh echo "======== start clean docker containers logs ========"  logs=$(find /var/lib/docker/containers/*/ -name *-json.log)  for log in $logs  do  echo "clean logs : $log"  cat /dev/null > $log  done  echo "======== end clean docker containers logs ========"

修改脚本权限

chmod 777 /var/lib/docker/containers/clean_docker_log.sh

执行脚本

./clean_docker_log.sh


设置定时任务执行脚本
检查本机crond的基本情况

service crond status


查看当前定时任务

crontab -l

编辑定时任务

crontab -e
# 定时执行脚本*/1  *  *  *  * /var/lib/docker/containers/clean_docker_log.sh

*/1 :代表每分钟执行
再查看

重启定时服务

 systemctl  reload crond.service
systemctl  restart  crond.service

二、设置容器日志大小
1.新建/etc/docker/daemon.json,若有就不用新建了。添加log-dirver和log-opts参数,样例如下:

{"exec-opts": ["native.cgroupdriver=systemd"],"log-driver": "json-file","log-opts": {"max-size": "100m","max-file": "10"}
}

max-size=100m,意味着一个容器日志大小上限是100m,
max-file=3,意味着一个容器有三个日志,分别是id+.json、id+1.json、id+2.json。

2.然后重启docker的守护线程

systemctl daemon-reloadsystemctl restart docker.service
注意:新创建的容器会生效,原有容器不生效。

docker 部署Java项目相关推荐

  1. Docker部署java项目(Dockerfile方式)

    Java 项目如何部署到Docker中? 如何将java项目部署到Docker中呢,这里以一个springboot为例 以下命令全部都是以linux为基础的 1. 首先找一个你熟悉的目录下创建一个目录 ...

  2. linux安装docker部署java项目

    大家好,我是烤鸭: 分享一下linux上部署docker的javaweb项目 1.环境 linux centos 7.2 64-bit 系统 kernel 3.10+ 查看版本号 : uname -r ...

  3. java docker 部署_使用docker部署java项目

    在接触了docker后,干什么都想用docker来弄.最近刚做完毕业设计,本来是说将项目简单在本地部署就行了,结果老师说如果部署在服务器的话有加加分,于是果断用docker来搞,多加点分. java项 ...

  4. jenkins+docker部署java项目

    jenkins + maven + jdk + docker + docker register + dockerfile jenkins插件 # 安装插件 SSH# 配置系统设置-> SSH ...

  5. docker compose java_Docker-compose部署java项目

    Docker-compose部署java项目 前置条件: 安装docker 安装docker-compose 防火墙啥的都设置好 dockerfile-demo FROM java:8 VOLUME ...

  6. Docker 部署 SpringBoot 项目整合 Redis 镜像做访问计数Demo

    Docker 部署SpringBoot项目整合 Redis 镜像做访问计数Demo 最终效果如下 大概就几个步骤 1.安装 Docker CE 2.运行 Redis 镜像 3.Java 环境准备 4. ...

  7. Docker 部署SpringBoot项目不香吗?

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 作者:流星007 链接:toutiao.com/i68433912 ...

  8. Jenkins+Pipeline+Docker部署SpringBoot项目到远程服务器

    Jenkins部署 前言 Jenkins 安装 nginx配置 jenkins配置 Docker安装 项目部署 项目添加Dockerfile文件 Jenkins新建任务 使用Pipeline部署 结果 ...

  9. 又到了上云时刻啦!!!阿里云 Docker部署SpringBoot项目 方便测试的部署方式

    又到了上云时刻啦!!!阿里云 Docker部署SpringBoot项目 方便测试的部署方式 部署思路: 具体步骤: 1.打成jar 2.上传到服务器 3.启动JDK容器 4.进入JDK 容器 启动 项 ...

  10. docker部署sprinboot项目

    掌握了基本的docker知识之后,我们就想尝试使用docker来部署一下项目,由于现在越来越多的项目都是直接以jar包启动的,即springboot项目,下面就简单演示一下使用用docker部署一个j ...

最新文章

  1. vs中.exe运行闪退的解决办法
  2. maple linux,Linux下面如何安装maple,mathematica,matlab这类软件?
  3. linux内核锁机制学习
  4. Redis实现求交集操作结果缓存的设计方案
  5. 计算机与采集卡无法通信,通信工程毕业设计(论文)-基于.NET平台的高速图像采集.doc...
  6. java jdom 更新xml_Java中使用JDOM来修改XML文档(续前)
  7. 关于扫描的一个比较好的网站
  8. create CRM task via code
  9. 【洛谷 1879】玉米田
  10. OCM_第十九天课程:Section9 —》Data Guard _ DATA GUARD 原理/DATA GUARD 应用/DATA GUARD 搭建...
  11. OSI 七层网络协议的定义与理解
  12. java两个数最大公约数和最小公倍数_java中请给出例子程序:找出两个数的最大公约数和最小公倍数...
  13. Facebook最新研究:全局一致的视频深度估计
  14. 在ASP.NET中执行URL重写(一)
  15. JS获取当天23时59分59秒
  16. The client and server cannot communicate, because they do not possess a common algorithm.
  17. URL Scheme的作用是应用间调用
  18. [Cocos2d塔防游戏开发]Cocos2dx-3.X完成塔防游戏《王国保卫战》--其他
  19. 设计模式——23种设计模式学习总结
  20. Skype应用将在7月1日停止支持Windows Phone 8/8.1等系统

热门文章

  1. 从零学Java(31)之构造方法
  2. Java怎么连接数据库 (使用技术及步骤原理,入门即会)
  3. 干货分享 |全面总结XSS
  4. Python语言程序设计课程论文——Python小游戏
  5. python基础代码大全-Python-基础汇总
  6. Lex和Yacc实现句子识别
  7. 网络编程中udp,tcp.客户端,和服务器端。运用到的软件,串口调试助手 NetAssist
  8. linux下hex文件到bin文件的格式转化,hex转换成bin文件小工具(HEX2BIN.EXE)下载_hex转换成bin文件小工具(HEX2BIN.EXE)官方下载-太平洋下载中心...
  9. TDH 更新Inceptor UDF步骤
  10. SpringMVC的拦截器Inceptor