You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
dsProject/操作文档/6、制作JDK21的Docker镜像.md

2.7 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

一、下载JDK21

https://download.oracle.com/java/21/latest/jdk-21_linux-x64_bin.tar.gz

二、利用阿里云的ECS制作私有镜像

在阿里云购买了一台ECS主机

8.147.134.252
用户名: root
密  码DsideaL4r5t6y7u!@#

三、安装Docker

yum install -y yum-utils
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin -y

# 配置Docker加速器
sudo mkdir -p /etc/docker

sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://95lqrpjl.mirror.aliyuncs.com"]
}
EOF

systemctl daemon-reload
systemctl restart docker

四、生成JDK基础镜像

yum install lrzsz -y
rz -be 
选择D:\SetupSoftware\JDK21\jdk-21_linux-x64_bin.tar.gz

cat Dockerfile 


# 使用 Debian 11 slim 作为基础镜像
FROM debian:11-slim

# 设置环境变量
ENV jdk=jdk-21_linux-x64_bin.tar.gz
MAINTAINER bright "10402852@qq.com"

# 配置镜像源
RUN sed -i 's/deb.debian.org/mirrors.aliyun.com/g' /etc/apt/sources.list

# 更新软件包索引并安装必要的工具和依赖
RUN apt-get update && apt-get install -y \
    locales \
    tzdata \
    && rm -rf /var/lib/apt/lists/*

# 如果您需要某个特定的 locale例如 en_US.UTF-8则生成它
RUN locale-gen en_US.UTF-8


# 安装设置时区
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo "Asia/Shanghai" > /etc/timezone

# 添加 JDK 文件


COPY $jdk /usr/local/
RUN tar -zxvf /usr/local/$jdk -C /usr/local/ && rm /usr/local/$jdk

# 设置环境变量
ENV JAVA_HOME=/usr/local/jdk-21.0.1
ENV PATH=$JAVA_HOME/bin:$PATH

docker build -t dsideal/jdk:21 .

五、查看JDK信息

#测试镜像
docker run --rm -it --name test dsideal/jdk:21
#进入临时镜像测试是否成功
java -version

六、上传到黄海的个人私有仓库

# 登录黄海的个人镜像仓库
docker login --username=东师黄海 registry.cn-hangzhou.aliyuncs.com --password DsideaL4r5t6y7u
 
# 修改tag标签 
docker tag dsideal/jdk:21 registry.cn-hangzhou.aliyuncs.com/dsideal/jdk:21

# 上传镜像
docker push registry.cn-hangzhou.aliyuncs.com/dsideal/jdk:21

# 测试拉取
docker pull registry.cn-hangzhou.aliyuncs.com/dsideal/jdk:21