【发布时间】:2019-09-17 03:40:06
【问题描述】:
我想在 Docker 上的 Ubuntu 映像中安装 java8。所以我在 dockerfile 中插入了以下代码:
FROM ubuntu:latest
RUN apt-get update
CMD ["echo", "apt-get update done ..."]
RUN apt-get -qq install -y wget
CMD ["echo", "wget Done ..."]
RUN apt-get install -y software-properties-common
CMD ["echo","apt-get install -y software-properties-common"]
RUN add-apt-repository -y ppa:webupd8team/java
CMD ["echo","add-apt-repository. ..."]
RUN apt-get update
RUN apt-get -qq upgrade
CMD ["echo", "apt-get update done ..."]
# add webupd8 repository
RUN \
wget https://download.docker.com/linux/ubuntu/gpg && \
apt-key add gpg &&\
apt-get update &&\
echo "===> add webupd8 repository..." && \
echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" | tee /etc/apt/sources.list.d/webupd8team-java.list && \
echo "deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" | tee -a /etc/apt/sources.list.d/webupd8team-java.list && \
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys EEA14886 && \
apt-get update
RUN echo "===> install Java" && \
apt-get -qq upgrade && \
echo debconf shared/accepted-oracle-license-v1-1 select true | debconf-set-selections && \
echo debconf shared/accepted-oracle-license-v1-1 seen true | debconf-set-selections && \
apt-get update &&\
DEBIAN_FRONTEND=noninteractive apt-get install -f oracle-java8-installer
但是给我这个错误```正在读取包列表... 构建依赖树... 读取状态信息... 包 oracle-java8-installer 不可用,但被另一个包引用。 这可能意味着包丢失、已过时或 只能从其他来源获得
E: 包 'oracle-java8-installer' 没有安装候选 ```
【问题讨论】:
-
使用 ubuntu 16.04 代替。它有 openjdk8-jdk
-
感谢您的回答。我使用强制使用 Oracle-Java8 的图像;所以我强制安装它。
-
Ubuntu 14.04 支持将于本月结束。
-
看,在 docker 文件中,我输入了
Ubuntu: latest。我的问题是这个错误E: Package 'oracle-java8-installer'。我编辑我的问题。
标签: java docker ubuntu dockerfile