首页 > 其他分享 >docker 构建遇见的问题一记

docker 构建遇见的问题一记

时间:2024-01-25 09:45:44浏览次数:28  
标签:文件夹 java dockerhub 一记 version 遇见 docker 环境变量

这两天项目里需要使用opencv的库,springboot需要添加opencv,最终确认使用已有的docker4.6+jdk1.8进行改写,首先想到的就是直接将1.8卸载,安装上17,之后再打包,发布到dockerhub上,之后docker-compose下载使用。

开始操作,在oracle官网上下载了jdk17,上传至服务器,解压,配置环境变量,java -version一切正常,commit后再次输入java -version发现没有java,打印环境变量发现没有java17路径,出现了第一个问题。

感觉应该是环境变量在docker重启时被冲掉了,查了一下说是要在./root/.bashrc下配置,但这种配置只对root用户生效,考虑发现没有问题,因为我们用的就是root启动的docker,打包, 启动docker,发现没有问题。

接着搞。

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

上传到dockerhub上,使用docker-compose构建,出现问题,提示如下错误。

Java Runtime (class file version 61.0), this version of the Java Runtime only ...55.0

使用docker run单独跑容器,发现没有问题,接着仔细检查发现是home文件夹挂载问题。我的jdk文件夹是放在home目录下的,然后home挂在了其他内容把jdk文件夹覆盖了,于是没有jdk17了,但是为什么会出现55呢?

55对用的是java11,仔细检查,发现系统自带了openjdk11,于是将其卸载掉,再次打包上传至dockerhub,再次拉取,再次报错,提示的是python报错,没有图了。

仔细检查报错信息,发现是启动时执行java -jar时报错了,因为没有java环境,为什么呀?我已经部署了java17呀,而且单独run这个镜像没有问题,后来仔细查了一下发现需要使用dockerfile

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

于是使用Dockerfile构建容器在里面创建文件夹,上传jdk安装包,是个压缩包(会自动解压)。设置环境变量。docker构建完成直接上传至dockerhub,拉取验证,没有问题了。。

标签:文件夹,java,dockerhub,一记,version,遇见,docker,环境变量
From: https://www.cnblogs.com/liuth-0214/p/17986355

相关文章

  • docker -- images镜像消失问题排查
    1.问题描叙安装model-serving组件时,错误日志输出push时对应的tag不存在,导致镜像推送失败2.问题排查#找到对应镜像,尝试手动推送dockerimages|grepmlserver#发现未找到,尝试手动loadcdmodel-serving/imagesdockerload-imlserver.tar.gz#等待加载完成,再次通过d......
  • OpenIM Open Source Instant Messaging Project Docker Compose Deployment Guide
    ThedeploymentofOpenIMinvolvesmultiplecomponentsandsupportsvariousmethodsincludingsourcecode,Docker,andKubernetes.Thisrequiresensuringcompatibilitybetweendifferentdeploymentmethodsandeffectivelymanagingdifferencesbetweenversio......
  • OpenIM Open Source Instant Messaging Project Docker Compose Deployment Guide
    ThedeploymentofOpenIMinvolvesmultiplecomponentsandsupportsvariousmethodsincludingsourcecode,Docker,andKubernetes.Thisrequiresensuringcompatibilitybetweendifferentdeploymentmethodsandeffectivelymanagingdifferencesbetweenversio......
  • docker 网络
    docker网络Docker网络实现原理Docker使用Linux桥接,在宿主机虚拟一个Docker容器网桥(docker0),Docker启动一个容器时会根据Docker网桥的网段分配给容器一个IP地址,称为Container-IP,同时Docker网桥是每个容器的默认网关。因为在同一宿主机内的容器都接入同一个网桥,这样容器之间就......
  • docker的安装
    一、docker的简单介绍建议看阮一峰老师的这篇博文Docker入门教程也可以看一下这篇博文Docker容器入门二、docker的安装环境介绍:-内核:CentOSLinuxrelease7.4.1708(Core)-centos系统发行版本:3.10.0-693.el7.x86_64-yum第一步:确认本机是否安装docker命令:dock......
  • containerd 像Docker一样丝滑操作镜像【转】
    containerd像Docker一样丝滑操作镜像• 我们知道DockerCLI工具提供了需要增强用户体验的功能,containerd同样也提供一个对应的CLI工具:ctr,不过ctr的功能没有docker完善,但是关于镜像和容器的基本功能都是有的。接下来我们就先简单介绍下ctr的使用。➜  ~ ctrN......
  • 绿联DH2600 docker基本命令
    查看容器(运行中的Containers)dockerps或dockercontainerls查看所有容器dockerps-a或dockercontainerls--all进入容器(ubuntu系统)dockerexec-it容器id/bin/bash或dockerattach容器id注:attach进入后exit退出会关闭容器。可以通过:ctrl+P+Q挂起容......
  • 绿联DH2600配置如何进入docker内部
    前提:已经能ssh进入绿联、已经成功运行docker容器已进入dockerhome-assistant为例查看当前docker运行容器dockerps输出:root@UGREEN-3822:~#dockerpsCONTAINERIDIMAGECOMMANDCREATEDSTATUS......
  • Docker部署Prometheus监控
    1.拉取所需的镜像dockerpullprom/node-exporter #用于机器系统数据收集dockerpullprom/mysqld-exporter #用于MySQL数据库数据收集dockerpullgoogle/cadvisor #用于收集宿主机上的docker容器数据dockerpullprom/prometheus #监控&报警&时间序列......
  • 小白使用Docker实现每周「自动领取」 Epic 免费游戏
    每周的epic免费游戏,已经成了我的快乐源泉!游戏可以不玩,但是不可以不领!白嫖的快乐,懂得都懂......