制作Java8环境Docker镜像

制作Java8环境Docker镜像

这里介绍如何制作一个java8环境的镜像,用于运行java应用程序。

1.安装包

这里采用OpenJDK,不会涉及版本问题。

同样思源中文字体也是开源的,没有版权问题。

OpenJDK8:OpenJDK8U-jdk_x64_linux_hotspot_8u382b05.tar.gz

wget安装包:wget-1.14-18.el7_6.1.x86_64.rpm

思源中文字体:09_SourceHanSerifSC.zip

上面三个文件全部放入 /opt/openjdk_images 目录下。

2.准备

OpenJDK8U-jdk_x64_linux_hotspot_8u382b05.tar.gz 解压后目录为 jdk8u382-b05 ,这里提前创建openjdk环境变量文件,方便镜像制作时直接拷贝进去。

创建openjdk环境变量文件:

shell 复制代码
tee /opt/openjdk_images/openjdk.sh << \EOF
export JAVA_HOME=/opt/jdk8u382-b05
export CLASSPATH=.:$JAVA_HIOME/lib/rt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
EOF

部分java应用程序,可能会涉及中文乱码问题,需要安装中文字体,这里采用的是开源的思源中文字体,思源字体包提前解压,方便镜像制作时直接拷贝进去。

解压思源字体包:

shell 复制代码
unzip /opt/openjdk_images/09_SourceHanSerifSC.zip -d /opt/openjdk_images/SourceHanSerifSC

3.创建Dockerfile

这里选择centos:centos7.9.2009作为基础镜像。

创建Dockerfile文件:

dockerfile 复制代码
tee /opt/openjdk_images/Dockerfile << \EOF
# 基础镜像
FROM centos:centos7.9.2009

# 作者
MAINTAINER 胡桃夹子 <infowangxin@139.com>

# 传wget安装包
COPY ./wget-1.14-18.el7_6.1.x86_64.rpm /opt

# 传openjdk包
ADD ./OpenJDK8U-jdk_x64_linux_hotspot_8u382b05.tar.gz /opt

# 传openjdk环境变量配置文件
COPY ./openjdk.sh /etc/profile.d

# 传思源中文字体
COPY ./SourceHanSerifSC/OTF/SimplifiedChinese/* /usr/share/fonts/

# 安装wget
RUN rpm -ivh /opt/wget-1.14-18.el7_6.1.x86_64.rpm --force --nodeps

# 删除安装包
RUN rm -f /opt/*.rpm
EOF

4.制作镜像

制作镜像,镜像名称定义为:library/java:openjdk-8u382-b05-centos7

shell 复制代码
cd /opt/openjdk_images
docker build -f Dockerfile -t  library/java:openjdk-8u382-b05-centos7 .

5.验证

运行刚刚制作的镜像,命名为centos:

shell 复制代码
docker run -itd --name=centos --privileged=true -p 3333:22 library/java:openjdk-8u382-b05-centos7 /usr/sbin/init

进入centos容器:

shell 复制代码
docker exec -it centos bash

验证java环境变量:

复制代码
java -version

同时直接运行 javajavacjstackjpsjmap 等命令,如果都会出现提示信息,代表java环境安装没有问题。

验证wget:

shell 复制代码
wget --help

能正常的出现wget帮助信息,则代表安装也没有问题。


至此整个java8环境的docker镜像已经制作完成。


引用 Reference

Kubernetes 1.25.4版本安装

kubeasz安装kubernetes1.25.5

CentOS8搭建nfs服务

k8s一键安装redis单机版

k8s一键安装mysql8单机版

Docker制作springboot运行应用镜像

k8s部署springboot应用

zookeeper集群安装

Nginx日志切割

Elasticsearch单机版本安装

Elasticsearch集群安装

springboot集成prometheus+grafana

安装Docker及学习

RabbitMQ集群安装

Docker安装Mysql5.7.31

ELK安装

Docker安装ELK

windows11安装android应用

制作Java8环境Docker镜像

相关推荐
沸速存储4 小时前
整机瓶颈判断思路,自上而下定位卡顿根源
运维·服务器·电脑·内容运营
BullSmall4 小时前
Anolis OS 8.10 Docker 部署 PostgreSQL 15 完整实操
docker·postgresql·容器
奈斯先生Vector5 小时前
告别工具碎片化:基于 Nano Banana 全模态 AI 聚合架构搭建“文本-图像-视频”自动化协同生产线
运维·数据库·人工智能·架构·自动化·aigc·音视频
DLYSB_6 小时前
AIOps 大模型实战:基于 LangChain 运维 Agent 的根因诊断与现场声光播报闭环
运维·langchain·报警灯
一可米8 小时前
gitHub.com Actions自动化发布
运维·自动化·github
智塑未来8 小时前
证券公司智能运维平台哪个品牌做得好?擎创科技智能运维 2.0 适配券商全场景
运维·科技·区块链
java_logo9 小时前
Docker 部署 CUPS Web:浏览器即可管理打印机与打印任务
docker·容器·打印机·轩辕镜像·cups web·cups web 镜像部署·cups web 部署教程
酷可达拉斯9 小时前
自动化运维-ansible配置文件与主机清单
linux·运维·自动化·ansible
来者皆善10 小时前
ZYNQ linux上使用 USB CDC ACM
linux·运维·服务器
4/5$全真龙门10 小时前
廉价易行的内网穿透
运维