Mac环境下Dockerfile构建Oracle 11g镜像时apt-get update执行失败求助
解决方案
你遇到的报错根因为Docker构建属于非交互会话,apt-get upgrade默认会弹出是否确认继续的交互提示,无人工输入确认就会直接中止返回错误码1,同时你原有Dockerfile还存在两处语法错误需要修正,修改后完整可用的Dockerfile如下:
FROM jaspeen/oracle-xe-11g RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get upgrade -y RUN apt-get install -y vim-common ENV LC_ALL=C.UTF-8
修改说明
- 为所有
apt操作添加-y参数:自动确认所有安装/升级提示,跳过人工交互步骤,适配非交互的构建环境。 - 升级命令前添加
DEBIAN_FRONTEND=noninteractive临时环境变量:避免部分deb包安装过程中弹出时区、参数配置类交互弹窗,导致构建阻塞。 - 修正包名语法错误:原有
vim -common写法多了空格,正确包名为连写的vim-common,否则apt会识别为两个不存在的包抛出安装错误。 - 修正环境变量赋值语法错误:原有
ENV LC_ALL-C.UTF-8的分隔符错误,环境变量赋值使用等号=而非横杠-,否则变量不会生效。
内容的提问来源于stack exchange,提问作者sunjh96
相关产品推荐
相关产品推荐

