当前位置: 首页 > news >正文

Docker 制作java8镜像

一、在Linux服务器安装Docker

可参考:Linux安装Docker-CSDN博客

二、使用Dokcer制作java8镜像

2.1 上传jdk8的压缩包

mkdir -p /home/data/develop/jdk

cd /home/data/develop/jdk

在该路径下上传jdk-8u261-linux-x64.tar.gz包

如下图:

2.2 编写Dockerfile

/home/data/develop/jdk 编写Dockerfile

vi Dockerfile

#1.指定基础镜像,本来基础镜像用的时scratch,但是由于sh/bash,执行tar命令一直失败!!!!!!!
FROM nginx:latest
#2.指明该镜像的作者
MAINTAINER wux

#3.一个复制命令,把jdk安装文件复制到镜像中
COPY jdk-8u261-linux-x64.tar.gz /

#4.解压缩
RUN tar -xzf jdk-8u261-linux-x64.tar.gz && rm jdk-8u261-linux-x64.tar.gz

#5.配置环境变量
ENV JAVA_HOME=/jdk1.8.0_261
ENV CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV PATH=$JAVA_HOME/bin:$PATH

#容器启动时需要执行的命令
CMD ["java","-version"]

2.3 制作镜像并查看成果

#制作镜像

docker build -t java:8 .

如下图:

#查看成果

docker run -it java:8

三、遇到的问题

当以from scratch 作为基础镜像时

会出现exec /bin/java: no such file or directory

原因:由于scratch 没有sh或bash,很多命令会依赖它,且无法进入容器内进行交互式调试

解决:可以选择centos作为基础镜像,这里我选择了nginx镜像

疑问:有人可以用scratch作为基础镜像???,希望后面能解决这个问题 

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 橙单前端项目下载编译遇到的问题与解决
  • 02 MySQL数据库管理
  • LabVIEW汽车动态信号模拟系统
  • 基于微信小程序+SpringBoot+Vue的刷题系统(带1w+文档)
  • 【C#】 CancellationTokenSource 与Thread的启动、取消的区别?
  • 打卡第27天------贪心算法
  • 探索Linux-1-虚拟机远程登陆XShell6远程传输文件Xftp6
  • 算能端侧 AI 盒子 Stable Diffusion 一秒一张图:AirBox BM1684X
  • 【RHCE】实战练习
  • 物联网在电力行业的应用
  • React hook 之 useState
  • 基于opencv[python]的人脸检测
  • 遭遇上司为难,穿小鞋,给低绩效怎么办?
  • Windows电脑如何启动RTSP服务实现本地摄像头数据共享
  • 学习ruixingkafei过程
  • @angular/forms 源码解析之双向绑定
  • 【407天】跃迁之路——程序员高效学习方法论探索系列(实验阶段164-2018.03.19)...
  • Brief introduction of how to 'Call, Apply and Bind'
  • C语言笔记(第一章:C语言编程)
  • echarts花样作死的坑
  • idea + plantuml 画流程图
  • Java基本数据类型之Number
  • JS专题之继承
  • Linux Process Manage
  • pdf文件如何在线转换为jpg图片
  • Python连接Oracle
  • Rancher如何对接Ceph-RBD块存储
  • select2 取值 遍历 设置默认值
  • ⭐ Unity 开发bug —— 打包后shader失效或者bug (我这里用Shader做两张图片的合并发现了问题)
  • 不用申请服务号就可以开发微信支付/支付宝/QQ钱包支付!附:直接可用的代码+demo...
  • 订阅Forge Viewer所有的事件
  • 分类模型——Logistics Regression
  • 小程序01:wepy框架整合iview webapp UI
  • 深度学习之轻量级神经网络在TWS蓝牙音频处理器上的部署
  • CMake 入门1/5:基于阿里云 ECS搭建体验环境
  • ​​​​​​​​​​​​​​Γ函数
  • ​【数据结构与算法】冒泡排序:简单易懂的排序算法解析
  • ​七周四次课(5月9日)iptables filter表案例、iptables nat表应用
  • #if等命令的学习
  • (~_~)
  • (07)Hive——窗口函数详解
  • (152)时序收敛--->(02)时序收敛二
  • (delphi11最新学习资料) Object Pascal 学习笔记---第7章第3节(封装和窗体)
  • (DenseNet)Densely Connected Convolutional Networks--Gao Huang
  • (Redis使用系列) Springboot 使用redis的List数据结构实现简单的排队功能场景 九
  • (windows2012共享文件夹和防火墙设置
  • (zt)基于Facebook和Flash平台的应用架构解析
  • (动手学习深度学习)第13章 计算机视觉---图像增广与微调
  • (附源码)springboot 智能停车场系统 毕业设计065415
  • (一)Kafka 安全之使用 SASL 进行身份验证 —— JAAS 配置、SASL 配置
  • (转)JVM内存分配 -Xms128m -Xmx512m -XX:PermSize=128m -XX:MaxPermSize=512m
  • .“空心村”成因分析及解决对策122344
  • .bat批处理(十):从路径字符串中截取盘符、文件名、后缀名等信息
  • .NET CLR Hosting 简介
  • .net core 客户端缓存、服务器端响应缓存、服务器内存缓存