Развертывание голема в docker:%>% не фонд - PullRequest
0 голосов
/ 22 января 2020

Я перевожу свое блестящее приложение в приложение dockerised golem. У меня проблема с использованием трубы. С этой строкой:

plotly::plot_ly(tabPieTension, labels = ~cat, values = ~valeur, type = 'pie', sort = FALSE) %>%
     plotly::layout(title = "Delta tension (Baisse de tension décharge)")

Мое приложение хорошо работает в локальном Rstudio. Я строю .tar.gz без ошибок. Я создаю образ docker без проблем (и dplyr хорошо установлен), но когда я запускаю образ, у меня появляется ошибка

: не удалось найти функцию "%>%"

Кажется, что dplyr не распознан. Я пытаюсь изменить на dplyr ::%>%, но сборка не будет работать.

Кто-то имеет представление о моей ошибке? Большое спасибо!

Ответы [ 2 ]

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

Поскольку приложения-големы являются пакетами, вы должны объявлять все свои зависимости так же, как в пакете, особенно если вы докернизируете приложение.

При этом вызов библиотеки () внутри сервера приложений не будет хорошей практикой для приложения-голема. Чтобы добавить dep, вы можете добавить их в ОПИСАНИЕ с помощью usethis :: use_package ("package"), а затем добавить правильные теги roxygen, где это необходимо в приложении.

Если вам нужна продуманная схема, вы можете просто вызвать usethis :: use_pipe (), и вы получите всю необходимую инфраструктуру:)

Дополнительная информация о пакетах и ​​пакетах: http://r-pkgs.had.co.nz/description.html#dependencies

0 голосов
/ 22 января 2020

Вы очистили свое рабочее место, а затем провели локальные испытания? Возможно, вы загрузили пакет один раз и не сделали этого в реальном коде. Вы проверяли, чтобы поставить library(dplyr) в разделе сервера?

...