Использование источника (functions.R) в скрипте r с docker - PullRequest
0 голосов
/ 27 февраля 2020

Я создал R-скрипт с именем analysis.R, который использует пользовательские функции из functions.R Когда я запускаю скрипт локально с помощью source(./functions.R), он работает, но когда я запускаю docker изображение с файлами, я получаю ошибку

Error in file(filename, "r", encoding = encoding) : 
  cannot open the connection
Calls: source -> withVisible -> eval -> eval -> source -> file
In addition: Warning message:

In file(filename, "r", encoding = encoding) :
  cannot open file './functions.R': No such file or directory
Execution halted

Я заглянул внутрь изображения docker и functions.R был скопирован в контейнер вместе со скриптом analysis.R.

Вот строки из Dockerfile, используемые для копирования сценариев

FROM rocker/r-ver:3.6.2

RUN mkdir /home

COPY analysis.R /home/analysis.R
COPY functions.R /home/functions.R

У кого-нибудь есть решение этой проблемы? Заранее спасибо?

1 Ответ

0 голосов
/ 27 февраля 2020

Установка рабочего каталога в файле docker решает эту проблему.

FROM rocker/r-ver:3.6.2

WORKDIR /home

COPY analysis.R analysis.R
COPY functions.R functions.R
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...