我正在为我的项目测试Rocker / Shiny容器。有些库需要“rJava”作为其依赖项,但是当我尝试安装“rJava”时,它有一个由没有Java的摇杆/闪亮容器引起的错误。所以,我试过了
# Install Java.
echo oracle-java8-installer shared/accepted-oracle-license-v1-1 select true | debconf-set-selections && \
add-apt-repository -y ppa:webupd8team/java && \
apt-get update && \
apt-get install -y oracle-java8-installer && \
rm -rf /var/lib/apt/lists/* && \
rm -rf /var/cache/oracle-jdk8-installer
通过一些修改来安装java但没有成功。它停在了
add-apt-repository -y ppa:webupd8team/java
抱怨
No such file or directory: 'gpg'
我也尝试将jdk- - .tar.gz复制到容器中,但也没有运气。
所以,我想知道如何在摇杆/容器中安装java,以便我成功安装rJava。
任何帮助将不胜感激
答案 0 :(得分:0)
您必须通过在其上添加Java来扩展rocker/shiny
图像。然后,您将能够使用新图像运行docker容器。
使用以下代码创建Dockerfile
:
FROM rocker/shiny:latest
# install wget and gnupg
RUN apt-get update && apt-get install -my wget gnupg
# install oracle java 8
RUN echo oracle-java8-installer shared/accepted-oracle-license-v1-1 select true | /usr/bin/debconf-set-selections \
&& 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 \
&& apt-get install oracle-java8-installer -y
# clean local repository
RUN apt-get clean
# set up JAVA_HOME
ENV JAVA_HOME /usr/lib/jvm/java-8-oracle
使用以下方式构建它:
docker build -t rocker_with_java .
您可以通过运行以下来验证您的Java安装:
docker run -it rocker_with_java java -version