赞
踩
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
承接上文,在麒麟V10服务器(Linux内核为arm64/aarch64的云服务器)已经离线安装好docker,安装好对应版本的且可以使用的jdk,服务器上有arrch64版本的jdk安装包(如:jdk-8u311-linux-aarch64.tar.gz),在构建应用服务容器时候,会提示jdk镜像不存在,或者存在会报错说jdk镜像和系统不符合(因为java镜像默认是支持linux内核86的),这时我们可以通过通过docker构建我们自己想要的java1.8镜像,支持arrch64的系统。
在dockerhub页面查询centos7的镜像,获取到(linux/arm64/v8)版本的sha256码,找到一台有网络的linux服务器,拉取centos镜像(注意:一定要指定对应的sha256,不然会默认下载86内核版本的镜像)。
链接: centos7地址
docker pull centos@sha256:43964203bf5d7fe38c6fca6166ac89e4c095e2b0c0a28f6c7c678a1348ddc7fa
docker save 镜像id > /home/centos.tar
docker load < /home/centos.tar
docker images
docker image tag 镜像id centos:7
此时已经安装好arrch64版本centos7镜像,我们可以依赖这个系统镜像去构建arrch64版本的java1.8镜像。
#创建一个文件夹放**Dockerfile和指定jdk
mkdir -p /home/docker/java
#切换到该路径
cd /home/docker/java
#创建一个Dockerfile文件
vi Dockerfile
编写的Dockerfile如下:
这个是以centos7镜像为基础,构建镜像内的java1.8环境变量。
#依赖的环境
FROM centos:7
#作者
MAINTAINER shiwei
#ADD 把java添加到容器中指定位置
ADD jdk-8u311-linux-aarch64.tar.gz /usr/docker/java
#环境配置
ENV JAVA_HOME /usr/docker/java/jdk1.8.0_311
ENV JRE_HOME $JAVA_HOME/jre
ENV CLASSPATH=:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
ENV PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
docker build -t java:1.8 .
docker images
#创建容器并进入
# -it 终端交互式操作
# --name 给容器命名
# /bin/bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell
docker run -it --name java-jdk-demo java:1.8 /bin/bash
# 然后输入,出现java版本说明容器没有问题
java -version
#退出容器
exit
以上就是在麒麟V10构建java1.8镜像的全部过程,这样子有了java1.8的基础镜像,在内网环境部署应用程序就变得轻而易举。接下来我将详细讲解一下麒麟V10下部署nosql数据库和达梦数据库。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。