dockerfile指定jvm参数

docker dockerfile java jvm内存不够被kill 解决办法 dockerfile 配置 jdk1.8版本>=java 8u191java 8u191+ UseContainerSupport默认开启。 阅读详情

dockerfile指定jvm参数

实例

FROM java:8
VOLUME /tmp
ADD app.jar app.jar
RUN bash -c 'touch /app.jar'
EXPOSE 9001
ENV JAVA_OPTS="\
-server \
-Xmx4g \
-Xms4g \
-Xmn1536m \
-XX:SurvivorRatio=1 \
-XX:MetaspaceSize=256m \
-XX:MaxMetaspaceSize=256m \
-XX:ParallelGCThreads=4 \
-XX:+PrintGCDetails \
-XX:+PrintTenuringDistribution \
-XX:+PrintGCTimeStamps \
-XX:+HeapDumpOnOutOfMemoryError \
-XX:HeapDumpPath=/ \
-Xloggc:/logs/gc.log \
-XX:+UseGCLogFileRotation \
-XX:NumberOfGCLogFiles=5 \
-XX:+DisableExplicitGC \
-XX:+UseConcMarkSweepGC \
-XX:+UseParNewGC \
-XX:+CMSParallelRemarkEnabled \
-XX:+CMSClassUnloadingEnabled \
-XX:LargePageSizeInBytes=128M \
-XX:+UseFastAccessorMethods \
-XX:+UseCMSInitiatingOccupancyOnly \
-XX:CMSInitiatingOccupancyFraction=80 \
-XX:SoftRefLRUPolicyMSPerMB=0 \
-XX:+PrintClassHistogram \
-XX:+PrintHeapAtGC \
-XX:+UnlockDiagnosticVMOptions \
-XX:+UnlockExperimentalVMOptions \
-XX:+PrintFlagsFinal\
-XX:GCLogFileSize=10M"
ENTRYPOINT java ${JAVA_OPTS} -Djava.security.egd=file:/dev/./urandom -jar /app.jar

不过这种方式在dockerfile写死了不灵活,不是很推荐,特别是要区分env的应用来说。

docker run指定

docker run --rm -e JAVA_OPTS='-Xmx1g' tomcat

docker-compose方式指定

environment:
  - JVM_OPTS=-server -Xmx4000M -Xms4000M -Xmn600M -Xss256K -XX:+DisableExplicitGC -XX:SurvivorRatio=1 -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+CMSParallelRemarkEnabled -XX:+CMSClassUnloadingEnabled -XX:LargePageSizeInBytes=128M -XX:+UseFastAccessorMethods -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=80 -XX:SoftRefLRUPolicyMSPerMB=0 -XX:+PrintClassHistogram -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintHeapAtGC -XX:+HeapDumpOnOutOfMemoryError -XX:MetaspaceSize=256m -XX:MaxMetaspaceSize=256m -Xloggc:/logs/gc.log

k8s指定

apiVersion: v1
kind: ReplicationController
metadata:
  labels:
    app: jenkins
    role: master
    version: v1
  name: jenkins-master
  namespace: jenkins
spec:
  replicas: 1
  selector:
    app: jenkins
    role: master
    version: v1
  template:
    metadata:
      labels:
        app: jenkins
        role: master
        version: v1
    spec:
      containers:
      - env:
        - name: JENKINS_OPTS
          value: --prefix=
        - name: JAVA_OPTS
          value: -Djava.awt.headless=true -Xmx200m -Dcom.sun.management.jmxremote=
            -Dcom.sun.management.jmxremote.port=1099 -Dcom.sun.management.jmxremote.ssl=false
            -Dcom.sun.management.jmxremote.authenticate=false
        image: jenkins:2.7.2
        name: jenkins
        ports:
        - containerPort: 8080
          name: web
        - containerPort: 50000
          name: leader
        resources:
          limits:
            cpu: 1000m
            memory: 800Mi
          requests:
            cpu: 100m
            memory: 400Mi
        volumeMounts:
        - mountPath: /var/jenkins_home
          name: jenkins-master
      nodeSelector:
        worker: "true"
      volumes:
      - name: jenkins-master
        nfs:
          path: /data/jenkins-master
          server: '{{nfs_server}}'

doc

【docker】docker 使用dockerfile 打镜像指定运行的命令,jvm参数,主类,参数、依赖的jar 在这个例子中,它运行了 Java 应用程序,设置了最大堆内存为 256 MB (-Xmx256m),类路径为当前目录和 /app 目录下的所有文件,指定主类为 com.example.YourMainClass,并传递了一个应用程序参数 --your-parameter。同时,你可以使用 COPY 指令将依赖的 JAR 包复制到容器中。COPY target/lib /app/lib: 将本地 target/lib 目录下的所有文件复制到容器的 /app/lib 目录下,以添加依赖的其他 JAR 文件。 阅读详情

相关推荐

量化策略缺数据?一份QMT/PTrade免费数据清单与特殊数据源QtFactor评测

本文为量化策略开发者提供QMT和PTrade平台的免费数据资源清单,并深度评测QtFactor在补充特色数据方面的价值。涵盖Tick级数据、Level2行情、资金流向等关键信息,帮助开发者在预算有限的情况下构建高效数据解决方案,特别适合打板策略和日内回转交易。

weixin_29058331的博客 415

dockerfile 配置 JVM配置

代码】dockerfile 配置 JVM配置。

m0_67400972的博客 2503

Orange:一个基于 Python 的数据挖掘和机器学习平台

Orange是一个开源的数据挖掘和机器学习平台,采用可视化编程方式,用户可通过拖拽组件构建数据分析工作流。它支持交互式数据探索、多种机器学习算法,并允许Python脚本扩展。Orange特别适合教育和研究,提供直观的界面和丰富的可视化工具。最新版本为3.39.0,支持Windows、macOS和Linux系统。作为GPL许可的免费工具,它既能满足初学者需求,又能通过Python集成实现高级功能。

likuoelie的博客 1435

springboot设置运行内存_docker run容器 设置 jvm 运行springboot 程序

首先dockerfile中需要设置一个变量比如我Dockerfile内容FROM openjdk:8-jre-alpineVOLUME/tmpADD *.jar app.jarENV TZ=PRCRUN ln-snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone#设置变量 JAVA_OPT...

weixin_39908948的博客 1755

Dynamics 365 On-Premise Server v9.0部署体验

期盼已久的Dynamics 365 On-Premise的版本升级终于在11月初姗姗来迟。 11月2日起已经可以在官方渠道下载正式版的Dynamics 365 Server v9.0安装文件,版本号9.0.2,随手附上中文版安装文件下载地址。 想必已经有不少小伙伴开始尝试各种升级、安装了吧。 Dynamics 365 On-Premise的安装过程,度娘一下已经有很多了,这里就不赘述了,只是...

Roger的专栏 2139

从零到一:手把手教你用海康VisionMaster完成第一个字符识别项目(附完整流程与避坑点)

本文详细介绍了如何使用海康VisionMaster完成首个字符识别项目,涵盖从环境搭建、图像预处理到系统集成的完整流程。特别分享了Blob分析配置、字符识别优化等实战技巧,帮助开发者避开常见陷阱,快速掌握VisionMaster的基本操作,提升工业自动化场景下的字符识别效率。

weixin_29313423的博客 665

Docker环境下的JVM参数非定值配置 —— 筑梦之路

之前有种说法是,容器环境,由于java获取不到容器的内存限制,只能获取到服务器的配置。以前确实有这种情况,但是java为了更好的使用容器环境,在Java 10 引入了 +(默认情况下启用),通过这个特性,可以使得JVM在容器环境分配合理的堆内存。后来这个特性也合入了JDK8U191版本,在JDK8U191版本之后的java8也是可以获取容器的内存限制的。

筑梦之路 1487

C#实战:如何用HslCommunication快速搞定三菱FX5U PLC通讯(附完整代码)

本文详细介绍了如何利用HslCommunication库在C#环境中快速实现与三菱FX5U PLC的通讯。通过实战代码演示,从环境搭建、建立连接、核心数据读写到构建健壮的监控服务,系统讲解了如何高效完成数据采集与交互,大幅提升工业自动化项目的开发效率。

s4t5u6v的博客 1202

docker-compose调整JVM参数 java.sql.SQLException: GC overhead limit exceeded

docker-compose调整JVM参数技术博客。

coderYJ的博客 881

x86架构学习之中断

外部中断,一般是由CPU的外部引脚电信号触发,这些引脚留给硬件厂商去定义中断,例如主板厂商可以将USB中断挂载70号中断引脚上,MCU厂商可以将片上外设(SPI、I2C等)的中断挂载在指定中断线上。中断描述符主要用于说明该中断的入口地址,中断描述符表则是将中断描述符一项一项管理在一个数组中,每一项中断描述符占用8个字节(64位模式下,占用16字节),其。简称中断,后文如果没特别说明,中断都指外部中断,由外部IO事件触发,由于时钟源来自CPU外部,与CPU时钟不同源,因此是异步事件。

qq_26962739的博客 1571

Allegro172版本如何在联机模式下使用skill文件操作指导

注意:如果下次重新开启Symphony模式的时候可能导致symphony_skill中的文件内容被清空,所以最好将自己常用的skill文件都写到symphony_skill.txt中去,然后做好备份,需要的时候,在开启软件后把文件放到env目录中去。在用Allegeo172版本进行PCB设计的时候,有时会用到Symphony模式进行多人实时在线协同设计,如下图。这个模式设计起来可以提升设计速度,但是也有一个缺陷,就是不能使用skill文件。如下图,当调用skill的时候就会出现如下报错。

weixin_54787054的博客 1586

docker设置jvm参数_dockerfile指定jvm参数

实例FROM java:8VOLUME /tmpADD app.jar app.jarRUN bash -c 'touch /app.jar'EXPOSE 9001ENV JAVA_OPTS="\-server \-Xmx4g \-Xms4g \-Xmn2g \-XX:SurvivorRatio=8 \-XX:MetaspaceSize=256m \-XX:MaxMetaspaceSize=512...

weixin_42513448的博客 2567

【机器学习|评价指标8】混淆矩阵(Confusion Matrix)、Cohen‘s Kappa 系数、详解,平均交并比(mIoU)、列联表(Contingency Table)附代码。

【机器学习|评价指标8】混淆矩阵(Confusion Matrix)、Cohen's Kappa 系数、详解,平均交并比(mIoU)、列联表(Contingency Table)附代码。

2401_89898861的博客 1426

Dockerfile中指定JVM参数

Dockerfile中指定JVM参数的方式。

点滴记录IT技术进程 1959

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

通过Dockerfile来实现项目可以指定读取不同环境的yml包

我就指定了每次运行得jdk,是我们已经下载的docker image。

Blue_Pepsi_Cola的博客 1182

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

dockerfile 笔记

指定存储卷, 任何向/tmp写入的信息都不会记录到容器存储层。# 设置JVM运行参数, 这里限定下内存大小,减少开销。# 入口点, 执行JAVA运行命令。#空参数,方便创建容器时传参。# 设置JAVA版本。# 拷贝运行JAR包。

weixin_39689854的博客 505

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

docker-常用应用部署dockerfile模板

本文列举了Java开发中常用如SpringBoot、Vue前端等类型的应用Docker部署所需的DockerFile

program哲学 1001

[问题已处理]-dockerfile 启动支持spring.profiles

dockerfile 启动支持spring.profiles FROM registry.cn-shanghai.aliyuncs.com/yjk-datag/jdk:8u202 ENV LANG C.UTF-8 ENV PATH /usr/bin:$PATH ADD ihaozhuo-servicecenter-6.0.1-SNAPSHOT.jar /srv/ihaozhuo-servicecenter-6.0.1-SNAPSHOT.jar ENTRYPOINT ["java","-jar","/srv

爷来辣的博客 2733
上一篇: Nginx 服务器安装及配置文件详解
下一篇: eureka 的几种主动下线服务的方式
低调的杉菜
博客等级 码龄15年 12粉丝 34原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值