Ubuntu 18.4 установка языка R 3.5

#r #docker #dockerfile

#r #docker #dockerfile

Вопрос:

Я пытаюсь установить язык R в файл docker. Моя версия Ubuntu — 18.04 LTS

 RUN add-apt-repository 'deb https://cloud.r-project.org/bin/linux/ubuntu bionic-cran35/' amp;amp; 
    apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9 
    apt-get update 
    apt-get install -y r-base 
    rm -rf /var/lib/apt/lists/*
 

Но я получаю приведенную ниже ошибку. Но он работает на моем компьютере и не работает с файлом docker.

 Reading package lists...
W: GPG error: https://cloud.r-project.org/bin/linux/ubuntu bionic-cran35/ InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 51716619E084DAB9
E: The repository 'https://cloud.r-project.org/bin/linux/ubuntu bionic-cran35/ InRelease' is not signed.
The command '/bin/bash -c add-apt-repository 'deb https://cloud.r-project.org/bin/linux/ubuntu bionic-cran35/' amp;amp;     apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9     apt-get update     apt-get install -y r-base     rm -rf /var/lib/apt/lists/*' returned a non-zero code: 100
 

Кто-нибудь может помочь решить эту проблему?

Заранее спасибо

Ответ №1:

Добавьте ключ перед добавлением репозитория.

Также вам нужна команда amp;amp; after every, чтобы связать их все. Я предпочитаю использовать ; after set -uex для длинных цепочек, чтобы я мог легко видеть, какой вывод команды поступает, особенно при сбое.

 RUN set -uex; 
    apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9; 
    add-apt-repository 'deb https://cloud.r-project.org/bin/linux/ubuntu bionic-cran35/'; 
    apt-get update; 
    apt-get install -y r-base; 
    rm -rf /var/lib/apt/lists/*