Alpine Linux应用--(通过alpine镜像制作jdk1.8镜像)

上一章节已经对alpine做了详细的讲解,本章主要通过一个小案例来讲述下Alpine Linux的应用。

1、准备jdk安装包

在这里插入图片描述

软件包下载链接:https://pan.baidu.com/s/1MJrZfEMofKoq0R6l66n0sg 
提取码:5l03 

2、拉取alpine镜像

docker search alpine

Alpine Linux应用--(通过alpine镜像制作jdk1.8镜像)_第1张图片

docker pull alpine

Alpine Linux应用--(通过alpine镜像制作jdk1.8镜像)_第2张图片

3、下载glibc

github下载链接:https://github.com/sgerrand/alpine-pkg-glibc/releases/
wget https://github.com/sgerrand/alpine-pkg-glibc/releases/download/2.30-r0/glibc-2.30-r0.apk

或者百度云链接

链接:https://pan.baidu.com/s/1ZkKIv6dCetK2157e21V4tA 
提取码:kgiy

4、编写dockerfile文件

cat <<EOF > dockerfile_jdk_1.8
FROM alpine:latest
#获取基础镜像
MAINTAINER WKX
#作者信息
RUN echo "http://mirrors.aliyun.com/alpine/v3.9/community" > /etc/apk/repositories && \
    echo "http://mirrors.aliyun.com/alpine/v3.9/main" >> /etc/apk/repositories
#更新Alpine的软件源为国内(清华大学)的站点,默认官网比较慢
RUN apk update \
        && apk upgrade \
        && apk add --no-cache bash \
        bash-doc \
        bash-completion \
        vim \
        wget \
        curl \
        net-tools \
        && rm -rf /var/cache/apk/* \
        && /bin/bash
#安装vim bash curl wget net-tools
COPY glibc-2.30-r0.apk /opt
#将glibc复制到镜像中
RUN apk add --allow-untrusted /opt/glibc-2.30-r0.apk && \
    rm -rf /opt/glibc-2.30-r0.apk && \
    rm -rf /var/cache/apk/*
#Alpine安装 Glibc
ADD ./jdk-8u112-linux-x64.tar.gz /usr/local/
#将jdk复制到镜像中
ENV JAVA_HOME /usr/local/jdk1.8.0_112
ENV PATH ${PATH}:${JAVA_HOME}/bin
ENV CLASSPATH $JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
#环境变量
EOF

5、构建镜像

docker build -t jdk:1.8 -f dockerfile_jdk_1.8 .

Alpine Linux应用--(通过alpine镜像制作jdk1.8镜像)_第3张图片

6、测试

对比发现,采用alpine制作的jdk镜像要比用centos镜像制作的jdk要小得多
在这里插入图片描述

docker run -it jdk:1.8 /bin/bash
bash-4.4# java -version

Alpine Linux应用--(通过alpine镜像制作jdk1.8镜像)_第4张图片

你可能感兴趣的:(docker)