Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

dockerfile adding a make depedency on Windows vs not on OSX #173

Open
MarkEdmondson1234 opened this issue Jan 7, 2020 · 3 comments
Open

Comments

@MarkEdmondson1234
Copy link
Contributor

The Dockerfile created from the same script looks different if built on Windows or OSX - is this expected? See MarkEdmondson1234/googleCloudRunner#32 for background.

Dockerfile on OSX:

FROM trestletech/plumber

RUN ["install2.r", "crayon", "httpuv", "jsonlite", "later", "magrittr", "plumber", "promises", "R6", "Rcpp", "rstudioapi", "stringi"]
COPY ["./", "./"]
ENTRYPOINT ["R", "-e", "pr <- plumber::plumb(commandArgs()[4]); pr$run(host='0.0.0.0', port=as.numeric(Sys.getenv('PORT')))"]
CMD ["api.R"]

Dockerfile on Windows:

FROM trestletech/plumber
RUN export DEBIAN_FRONTEND=noninteractive; apt-get -y update \
  && apt-get install -y make
RUN ["install2.r", "crayon", "httpuv", "jsonlite", "later", "magrittr", "plumber", "promises", "R6", "Rcpp", "rstudioapi", "stringi"]
COPY ["./", "./"]
ENTRYPOINT ["R", "-e", "pr <- plumber::plumb(commandArgs()[4]); pr$run(host='0.0.0.0', port=as.numeric(Sys.getenv('PORT')))"]
CMD ["api.R"]

Normally this wouldn't break things but it triggered another bug in trestletech/plumber where you can't use apt-get

@nuest
Copy link
Member

nuest commented Jan 13, 2020

No, that is not expected.

I'd need to dig in which of the used packages says it requires make, and on Windows. Maybe this is a problem with the sysreqs database?

@nuest
Copy link
Member

nuest commented Jan 13, 2020

@MarkEdmondson1234 Can you run the following command on Mac, please?

futile.logger::flog.threshold(futile.logger::DEBUG)
containerit:::.find_system_dependencies(c("httpuv"), platform = "linux-x86_64-debian-gcc")

Just to be sure: you want the one where make is not installed, right? What is the Dockerfile for trestletech/plumber you use?

@nuest
Copy link
Member

nuest commented Jan 13, 2020

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants