R Postgres не найден при использовании Packrat для контейнера Docker - PullRequest
0 голосов
/ 04 мая 2020

Я пытаюсь проверить упаковку с контейнером docker. Вот мой dockerfile:

FROM rocker/tidyverse:3.6.3

# Install java and rJava
RUN apt-get -y update && apt-get install -y \
   default-jdk \
   r-cran-rjava \
   && apt-get clean \
   && rm -rf /var/lib/apt/lists/

# Install ODBC stuff
RUN apt-get -y update && apt-get install -y --install-suggests \
   unixodbc unixodbc-dev \
   && apt-get clean \
   && rm -rf /var/lib/apt/lists/

# Install further R packages
RUN install2.r --error --deps TRUE \
   RJDBC \
   odbc \
   && rm -rf /tmp/downloaded_packages/ /tmp/*.rds

RUN apt-get update

WORKDIR /home/project

COPY ./packrat/packrat.lock packrat/

RUN install2.r packrat

RUN Rscript -e 'packrat::restore()'

COPY packrat_test.R .

CMD Rscript packrat_test.R

Вот packrat_test.R:

library(lubridate)
library(broom)
library(magrittr)
library(tidyverse)
library(rlang)
library(RPostgres)
library(DBI)
library(rJava)
library(timeDate)
library(HSAUR3)
library(chron)
library(ncdf4)
library(stringr)
library(chron)
library(aws.s3)

print('testing packrat')

Я запускаю это как задачу на AWS ECS с использованием Fargate. Задача не выполняется из-за: Ошибка в библиотеке (R Postgres): нет пакета с именем 'RPostgres'. Однако этот файл определен в файле packrat.lock. Любые идеи о том, что может пойти не так?

Большое спасибо

...