相关资料:
【Docker初探】第一节:Docker+Alpine+Openssh+Supervisor部署Linux基础环境
这次在上一章的基础上配置java运行环境。
建空文件夹,在下面新建Dockerfile文件,内容如下:
# 基于上一章的镜像
FROM highlevel/alpine-server:base
MAINTAINER Docker PPHT <[email protected]>
#复制文件
COPY glibc-2.29-r0.apk /root/glibc-2.29-r0.apk
COPY glibc-bin-2.29-r0.apk /root/glibc-bin-2.29-r0.apk
COPY glibc-i18n-2.29-r0.apk /root/glibc-i18n-2.29-r0.apk
RUN apk --no-cache add ca-certificates wget \
&& wget -q -O /etc/apk/keys/sgerrand.rsa.pub https://alpine-pkgs.sgerrand.com/sgerrand.rsa.pub \
&& apk add /root/glibc-2.29-r0.apk /root/glibc-bin-2.29-r0.apk /root/glibc-i18n-2.29-r0.apk \
&& rm -rf /var/cache/apk/* /root/glibc-2.29-r0.apk /root/glibc-bin-2.29-r0.apk /root/glibc-i18n-2.29-r0.apk
# 配置Java环境变量,这里请对应jdk路径
ENV JAVA_HOME=/root/jdk1.8.0_211
ENV CLASSPATH=$JAVA_HOME/bin
ENV PATH=.:$JAVA_HOME/bin:$PATH
# 开端口
EXPOSE 22
EXPOSE 9001
CMD "sh /root/start.sh"
下载glibc安装包glibc-2.29-r0.apk glibc-bin-2.29-r0.apk glibc-i18n-2.29-r0.apk到文件夹下,下载地址:
https://github.com/sgerrand/alpine-pkg-glibc/releases
在命令行切换到根目录,执行下面命令,建立docker镜像:
docker build -t highlevel/alpine-server:glibc .
先删除上一节的镜像:
docker rm alpine-base
运行镜像:
docker run --name alpine-glibc -p 10022:22 -p 9001:9001 -it highlevel/alpine-server:glibc
运行镜像时,可通过-v来映射主机目录到docker目录:
docker run --name alpine-glibc -p 10022:22 -p 9001:9001 -v D:\tmp:/mnt/tmp -it highlevel/alpine-server:glibc
然后即可用ssh登录,默认密码123456:
ssh [email protected] -p 10022
最后在官网下载jdk解压到上面Dockerfile配置的路径下即可,官网下载地址:
https://www.oracle.com/technetwork/cn/java/javase/downloads/index.html
验证java:
java -version
补充说明,如果多个Java版本,建议去掉java环境变量,直接用jdk对应的bin目录下java启动。