【Dockerfile】基于openjdk镜像添加常用命令工具
背景
官方openjdk镜像是Red Hat操作系统,可以使用microdnf命令安装
bash-4.4# cat /etc/redhat-release
Red Hat Enterprise Linux release 8.5 (Ootpa)
拉取openjdk镜像
docker pull openjdk:17.0.2
编写Dockerfile
touch Dockerfile-openjdk-utils
FROM openjdk:17.0.2# 安装工具
RUN microdnf install net-tools sysstat lsof telnet procpsCMD ["jshell"]
构建shell
touch build.sh
# 构建
IMAGE_NAME=xxx.com:443/base/openjdk-utils:17.0.2
docker image rm $IMAGE_NAME
docker image build --tag $IMAGE_NAME . -f ./Dockerfile-openjdk-utils
# 推送镜像到仓库
docker image push $IMAGE_NAME
使用新构建的openjdk-utils镜像
FROM xxx.com:443/base/openjdk-utils:17.0.2
...
相关文章:
【Dockerfile】基于openjdk镜像添加常用命令工具
背景 官方openjdk镜像是Red Hat操作系统,可以使用microdnf命令安装 bash-4.4# cat /etc/redhat-release Red Hat Enterprise Linux release 8.5 (Ootpa)拉取openjdk镜像 docker pull openjdk:17.0.2 编写Dockerfile touch Dockerfile-openjdk-utilsFROM openjd…...
目录内图片转PDF(多图片打印助手)
最近同事经常找我帮她打印试卷,很奇葩的是,她的试卷都是*红书上下载的图片,一张张打印不好看,而且可能打印不完全,大小也不协调,所以有了这个脚本。 【需要给小孩打印图片格式的试卷时也比较实用】 -----…...
React TypeScript安装npm第三方包时,些包并不是 TypeScript 编写的
npm install types/包名称 例如:npm install types/jquery 学习链接...
Java 基础 面试 多线程
1.多线程 1.1 线程(Thread) 线程时一个程序内部的一条执行流程,java的main方法就是由一条默认的主线程执行 1.2 多线程 多线程是指从软硬件上实现的多条执行流程的技术(多条线程由CPU负责调度执行) 许多平台都离不开多…...
软考 系统架构设计师系列知识点之软件构件(1)
所属章节: 第2章. 计算机系统基础知识 第3节. 计算机软件 2.3.7 软件构件 1. 概述 构件又称为组件,是一个自包容、可复用的程序集。构建是一个程序集、或者说是一组程序的集合。这个集合可能会以各种方式体现出来,如源程序或二进制代码。这…...
RHCE8 资料整理(三)
RHCE8 资料整理 第三篇 网络相关配置第11章 网络配置11.1 网络基础知识11.2 查看网络信息11.3 图形化界面修改11.4 通过配置文件修改11.5 命令行管理11.6 主机名的设置 第12章 ssh12.1 ssh基本用法12.2 打开远程图形化界面12.3 ssh无密码登录12.4 ssh安全设置12.5 ssh限制用户1…...
C++ 使用httplib库,发送HTTP请求
简介 C 使用httplib库,发送HTTP请求 接口信息 ip地址 192.168.16.166 端口 8899 接口地址/abc/tk 请求方式GET 响应内容: { “result”: true, “message”: “”, “tk”: “yueguangsaxialexiangshuitan0ihai”, “datetimeout”: “2023-10-22 21…...
OceanBase自动安装部署演示环境demo
OceanBase自动安装部署 前提条件 官方给出硬件条件需要满足以下要求 本文操作系统为:Red Hat Enterprise Linux 8 64 位 下载链接:https://pan.baidu.com/s/1rZ39xJFhk0HdmC4wEJcxvg 提取码:c01x 下载并安装 all-in-one 安装包 执行如下…...
windows系统mysql服务启动失败
原因 电脑重启navicat连接mysql失败,在电脑-管理-服务没有mysql服务 解决方案 找到mysql的安装目录进入bin目录 执行mysqld --install 进行重新安装 提示服务安装成功 net start mysql mysql 启动成功 ...
B-tree(PostgreSQL 14 Internals翻译版)
概览 B树(作为B树访问方法实现)是一种数据结构,它使您能够通过从树的根向下查找树的叶节点中所需的元素。为了明确地标识搜索路径,必须对所有树元素进行排序。B树是为有序数据类型设计的,这些数据类型的值可以进行比较和排序。 下面的机场代…...
React环境初始化
环境初始化 学习目标: 能够独立使用React脚手架创建一个React项目 1.使用脚手架创建项目 官方文档:(https://create-react-app.bootcss.com/) - 打开命令行窗口 - 执行命令 npx create-react-app projectName 说明:…...
Hadoop3教程(二十八):(生产调优篇)NN、DN的多目录配置及磁盘间数据均衡
文章目录 (148)NN多目录配置(149)DataNode多目录配置及磁盘间数据平衡磁盘间数据均衡 参考文献 (148)NN多目录配置 NN多目录的意思是,本地目录可以配置成多个,且每个目录存放内容相…...
博客续更(五)
十一、后台模块-菜单列表 菜单指的是权限菜单,也就是一堆权限字符串 1. 查询菜单 1.1 接口分析 需要展示菜单列表,不需要分页。可以针对菜单名进行模糊查询。也可以针对菜单的状态进行查询。菜单要按照父菜单id和orderNum进行排序 请求方式 请求路径…...
看微功耗遥测终端机如何轻松应对野外环境挑战?
在野外,数据的实时监测和传输是至关重要的。无论是环境温度、湿度,还是水位、流量,都需要精准把控。然而,传统的监测方法往往受限于电源供应问题,而无法充分发挥其功能。这时候,一款微功耗遥测终端机&#…...
vue后台开发第一步
1、创建vue3.2的项目 2、安装前期组件 安装 安装 vue-router npm install vue-router4安装 vuex npm install vuexnext --save安装 element-plus npm install element-plus --save安装 element-plus图标 npm install element-plus/icons-vue 使用 创建router目录、目录下创…...
Vue3踩坑指南
vue.config.ts不起作用 关于项目 项目使用的还是vue-cli搭建的,底层还是webpack,没有使用新的vite搭建。 踩坑1:vue.config.ts不起作用 我本着既然是vue3 ts的项目,那么为了规范,项目中所有的js文件都得替换成ts文…...
第十七章 Java连接数据库
1.打卡“命令提示符”,用管理员身份运行 2.登录MySQL 3.创建库和表 4.使用Java命令查询数据库操作 5.右击——点击“Build Path”——选择第四个——找到包的位置——导入成功 一、创建java项目 二、连接数据库 1.注册驱动 2.获取链接 3.获取statment对象 4.…...
221 - Urban Elevations (UVA)
题目链接如下: Online Judge 首先,我的代码虽然AC了,但是是有问题的,uva的测试数据太水了所以侥幸通过而已。因为题目要求的数据是实数而非整数,我的代码是按所有数据都是整数来暴力做的……但因为刘汝佳的代码写得太…...
驱蚊“卷到”母婴,润本市值73亿
作者 | 若楠 禄存 排版 | Cathy 监制 | Yoda 出品 | 不二研究 从 " 驱蚊第二股 " 到 " 婴童护理第一股 " 润本终于敲钟了。 尽管宣称 " 婴童护理第一股 ",但实际上,润本最初是以驱蚊产品起家的。 10 月 17 日&#…...
Swingbench 压力测试(超详细)
目录 前提需要有配置好的oracle哦 1、环境准备 2、安装Swingbench 3、造数据 4、压测 前提需要有配置好的oracle哦 1、环境准备 启动监听 lsnrctl start 启动数据库 sqlplus / as sysdba startup 创建表 CREATE TABLESPACE soe DATAFILE /u01/app/oracle/oradata/or…...
百考通:AI精准赋能答辩PPT,让零散的想法智能生成为结构化内容
毕业季、开题季,一份专业出彩的PPT是顺利通过答辩的关键。但从论文中提炼核心观点、规划答辩逻辑、设计美观版式,往往让学生们焦头烂额。百考通(https://www.baikaotongai.com) 凭借AI技术深度赋能,打造出一站式答辩PP…...
rosdep-ROS2
ROS2 Humble rosdep 从入门到排错:定义、作用+404/超时终极解决方案(亲测有效) 前言:很多ROS2新手在搭建环境、编译功能包时,都会遇到 rosdep update 404、超时等问题,甚至不清楚rosdep到底是什么、为什么要用。本文从基础概念入手,一步步讲清rosdep的核心作用,再针对…...
SFUD串行Flash通用驱动库原理与嵌入式移植实战
1. SFUD 串行 Flash 通用驱动库深度解析1.1 库定位与工程价值SFUD(Serial Flash Universal Driver)并非一个简单的 SPI Flash 封装层,而是一个面向嵌入式产品全生命周期的底层固件基础设施。其核心价值在于解耦硬件选型与软件实现——当 Winb…...
车辆三自由度运动学模型; Carsim_Simulink联合仿真; 无人驾驶车辆模型预测控制(2.1);
车辆三自由度运动学模型; Carsim/Simulink联合仿真; 无人驾驶车辆模型预测控制(2.1); 包括Carsim的设置、控制信号数据、PPT文件、cpar件、车辆运动分析图(适用于word两栏布局);Simu…...
.NET 磁盘BitLocker加密-技术选型忠
在之前的文章中,我们花了大量的篇幅,从记录后端pod真实ip开始说起,然后引入envoy,再解决了各种各样的需求:配置自动重载、流量劫持、sidecar自动注入,到envoy的各种能力:熔断、流控、分流、透明…...
[AI/向量数据库/GUI] Attu : Milvus 的图形化与一体化管理工具艘
前言 在使用 kubectl get $KIND -o yaml 查看 k8s 资源时,输出结果中包含大量由集群自动生成的元数据(如 managedFields、resourceVersion、uid 等)。这些信息在实际复用 yaml 清单时需要手动清理,增加了额外的工作量。 使用 ku…...
深度拆解 Redis ZSet 底层实现:从“紧凑排队”到“多级瞬移”
在 Redis 的世界里,为了把性能和内存利用率压榨到极致,底层实现往往是“看人下菜碟”。今天咱们就揭开 ZSet 的底裤,看看它到底是怎么从“紧凑排队”进化到“多级瞬移”的。 一、 是什么:ZSet 的“两副面孔” 首先纠正一个小插曲…...
深入解析ULN2003电机驱动器:从原理到实战应用
1. ULN2003电机驱动器基础解析 第一次接触ULN2003时,我完全被这个小小的芯片震撼到了——谁能想到这个比指甲盖还小的黑疙瘩,竟然能直接驱动继电器和步进电机?作为电子爱好者入门电机驱动的"启蒙老师",ULN2003确实是个…...
C#怎么实现批量邮件发送 C#如何用MailKit批量发送个性化邮件和HTML格式邮件【网络】
MailKit批量发送邮件卡在SendAsync因缺乏并发控制,需用SemaphoreSlim限流、复用SmtpClient、单建MimeMessage、用BodyBuilder构建HTML正文并内联样式,逐封捕获异常定位问题。MailKit 发送批量邮件时为什么总卡在 SmtpClient.SendAsync?因为默…...
再次革新 .NET 的构建和发布方式(一)靡
本文能帮你解决什么? 1. 搞懂FastAPI异步(async/await)到底在什么场景下能真正提升性能。 2. 掌握在FastAPI中正确使用多线程处理CPU密集型任务的方法。 3. 避开常见的坑(比如阻塞操作、数据库连接池耗尽、GIL限制)。 …...
