-
Notifications
You must be signed in to change notification settings - Fork 24
Open
Description
Hi! I've been recently trying out rix
and encountered the following issue
Context
I'm working in a shiny app docker image and decided to give a try to rix
. Dependency management worked really well with minimum setup time, even for my project that has a considerable amount of dependencies.
I'm using RJDBC to query against a remote dbms to render a few tables on the app. All worked fine, except calls to RJDBC::dbGetQuery
when called inside a reactive expression.
Examples
1. Would do fine
writeFile <- observe({
# Consider conx properly defined in an external file invoked by source()
query <- f("path/to/sql.sql", input$user_input)
tbl <- RJDBC::dbGetQuery(conx, query)
write.csv(tbl)
}) |> bindEvent(input$button_1)
2. Would fail
myTable <- reactive({
# Consider conx properly defined in an external file invoked by source()
query <- f("path/to/sql.sql", input$user_input)
tbl <- RJDBC::dbGetQuery(conx, query)
tbl
}) |> bindEvent(input$button_2)
Further Info
This is the dockerfile I used. Also tried with a very similar one using nixos/nix base docker image
FROM ubuntu:jammy
COPY generate_env.R .
RUN apt update -y
RUN apt install curl -y
RUN curl --proto '=https' --tlsv1.2 -sSf -L https://install.determinate.systems/nix | sh -s -- install linux \
--extra-conf "sandbox = false" \
--init none \
--no-confirm
# Adds Nix to the path, as described by the Determinate Systems installer's documentation
ENV PATH="${PATH}:/nix/var/nix/profiles/default/bin"
RUN nix-channel --update
RUN nix-shell \
--expr "$(curl -sl https://raw.githubusercontent.com/ropensci/rix/master/inst/extdata/default.nix)" \
--run "Rscript generate_env.R"
RUN nix-build
EXPOSE 3838
COPY . /app
RUN chmod 777 -R /app
CMD ["nix-shell", "--run", "R CMD javareconf && Rscript /app/run-app.R"]
Metadata
Metadata
Assignees
Labels
No labels