| ARG RELEASE |
| ARG LAUNCHPAD_BUILD_ARCH |
| LABEL org.opencontainers.image.version=24.04 |
| ADD file:cb9335ce6f27399c2b17787739d6675502767c53e0335ded2a5f0d003d996650 in / |
| CMD ["/bin/bash"] |
| LABEL maintainer=Posit Docker <docker@posit.co> |
| RUN /bin/sh -c apt-get update -qq && DEBIAN_FRONTEND=noninteractive apt-get install -y apt-transport-https curl fontconfig libcurl4-openssl-dev locales perl sudo tzdata wget xz-utils && rm -rf /var/lib/apt/lists/* # buildkit |
| RUN /bin/sh -c wget -qO- "https://yihui.org/tinytex/install-bin-unix.sh" | TMPDIR=/ sh && /root/.TinyTeX/bin/*/tlmgr path remove && mv /root/.TinyTeX/ /opt/TinyTeX && /opt/TinyTeX/bin/*/tlmgr option sys_bin /usr/local/bin && /opt/TinyTeX/bin/*/tlmgr path add # buildkit |
| ARG PANDOC_VERSION=2.19.2 |
| RUN |1 PANDOC_VERSION=2.19.2 /bin/sh -c wget "https://github.com/jgm/pandoc/releases/download/${PANDOC_VERSION}/pandoc-${PANDOC_VERSION}-linux-$(dpkg --print-architecture).tar.gz" -O pandoc.tar.gz && tar -xvf pandoc.tar.gz && mv "pandoc-${PANDOC_VERSION}" /opt/pandoc && ln -s /opt/pandoc/bin/pandoc /usr/local/bin/pandoc && rm pandoc.tar.gz # buildkit |
| ENV LANG=C.UTF-8 |
| ENV TZ=UTC |
| ARG R_VERSION=4.5.0 |
| ARG OS_IDENTIFIER=ubuntu-2404 |
| RUN |2 R_VERSION=4.5.0 OS_IDENTIFIER=ubuntu-2404 /bin/sh -c wget "https://cdn.posit.co/r/${OS_IDENTIFIER}/pkgs/r-${R_VERSION}_1_$(dpkg --print-architecture).deb" && apt-get update -qq && DEBIAN_FRONTEND=noninteractive apt-get install -f -y "./r-${R_VERSION}_1_$(dpkg --print-architecture).deb" && ln -s "/opt/R/${R_VERSION}/bin/R" /usr/bin/R && ln -s "/opt/R/${R_VERSION}/bin/Rscript" /usr/bin/Rscript && ln -s "/opt/R/${R_VERSION}/lib/R" /usr/lib/R && rm "r-${R_VERSION}_1_$(dpkg --print-architecture).deb" && rm -rf /var/lib/apt/lists/* # buildkit |
| CMD ["R"] |
| /bin/sh -c apt-get update && apt-get upgrade -y |
| ENV R_HOME /opt/R/4.5.0/lib/R |
| ENV CRAN_MIRROR https://packagemanager.posit.co/cran/__linux__/noble/2025-05-25 |
| ENV JAMOVI_REPO https://repo.jamovi.org/cran/2025-05-25 |
| /bin/sh -c apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends locales |
| /bin/sh -c sed -i -e 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen && dpkg-reconfigure --frontend=noninteractive locales && update-locale LANG=en_US.UTF-8 |
| ENV LANG en_US.UTF-8 |
| /bin/sh -c apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends libprotoc-dev libglu1-mesa libgl1 |
| /bin/sh -c echo "options(repos=c(jr='$JAMOVI_REPO', pm='$CRAN_MIRROR'))" > $R_HOME/etc/Rprofile.site |
| /bin/sh -c R -e " packages <- c('R6', 'RColorBrewer', 'backports', 'base64enc', 'brio', 'cpp11', 'curl', 'devEMF', 'evaluate', 'farver', 'fastmap', 'fontBitstreamVera', 'fontLiberation', 'magrittr', 'praise', 'rappdirs', 'rprojroot', 'sys', 'utf8', 'uuid', 'viridisLite', 'yaml', 'zip', 'Rcpp', 'askpass', 'cli', 'crayon', 'data.table', 'digest', 'fansi', 'fontquiver', 'fs', 'generics', 'glue', 'isoband', 'jsonlite', 'labeling', 'mime', 'pkgconfig', 'ps', 'remotes', 'rlang', 'stargazer', 'stringi', 'withr', 'xfun', 'xtable', 'RInside', 'RProtoBuf', 'cachem', 'desc', 'diffobj', 'highr', 'htmltools', 'lifecycle', 'openssl', 'openxlsx', 'processx', 'tinytex', 'xml2', 'callr', 'fontawesome', 'gtable', 'jquerylib', 'knitr', 'memoise', 'sass', 'scales', 'systemfonts', 'vctrs', 'waldo', 'bslib', 'gdtools', 'pillar', 'pkgbuild', 'purrr', 'stringr', 'textshaping', 'tidyselect', 'pkgload', 'ragg', 'rmarkdown', 'tibble', 'dplyr', 'ggplot2', 'htmlwidgets', 'officer', 'testthat', 'flextable', 'rvg', 'tidyr', 'broom', 'export'); for (pkg in packages) { install.packages( pkg, depends=FALSE, lib='$R_HOME/library', INSTALL_opts='--no-data --no-help --no-demo --no-html --no-docs --no-multiarch --clean'); library(pkg, character.only=TRUE); }" |
| /bin/sh -c apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends libglpk40 libgmp10 libxml2 |
| /bin/sh -c R -e " packages <- c('BH', 'RcppParallel', 'bitops', 'ca', 'carData', 'contfrac', 'glasso', 'jpeg', 'lisrelToR', 'matrixStats', 'mnormt', 'nloptr', 'numDeriv', 'pbivnorm', 'png', 'prettyunits', 'quadprog', 'qvcalc', 'rematch', 'rstudioapi', 'Deriv', 'Formula', 'GPArotation', 'Matrix', 'PMCMR', 'RUnit', 'RcppEigen', 'SparseM', 'TH.data', 'XML', 'abind', 'caTools', 'cellranger', 'checkmate', 'coda', 'colorspace', 'corpcor', 'cowplot', 'deSolve', 'elliptic', 'estimability', 'fdrtool', 'forcats', 'ggrepel', 'ggridges', 'gridExtra', 'gtools', 'here', 'hms', 'lavaan', 'microbenchmark', 'minqa', 'modelr', 'mvnormtest', 'mvtnorm', 'patchwork', 'pbapply', 'plyr', 'rbibutils', 'relimp', 'ssanv', 'zoo', 'MatrixModels', 'Rdpack', 'StanHeaders', 'doBy', 'emmeans', 'exactci', 'ggstats', 'gnm', 'gplots', 'htmlTable', 'hypergeo', 'igraph', 'kutils', 'lmtest', 'progress', 'psych', 'reshape2', 'rpf', 'sandwich', 'viridis', 'BayesFactor', 'GGally', 'Hmisc', 'OpenMx', 'ROCR', 'exact2x2', 'multcomp', 'quantreg', 'readxl', 'reformulas', 'vcd', 'lme4', 'qgraph', 'vcdExtra', 'arm', 'lmerTest', 'pbkrtest', 'rockchalk', 'car', 'mi', 'afex', 'sem', 'semPlot'); for (pkg in packages) { install.packages( pkg, depends=FALSE, lib='$R_HOME/library', INSTALL_opts='--no-data --no-help --no-demo --no-html --no-docs --no-multiarch --clean'); library(pkg, character.only=TRUE); }" |
| /bin/sh -c apt-get update && apt-get upgrade -y |
| ENV R_VERSION 4.5.0-x64 |
| /bin/sh -c apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends python3-minimal python3-pkg-resources python3-six libnanomsg5 libboost-filesystem1.83.0 libprotobuf32t64 protobuf-compiler libicu74 libgomp1 libgfortran5 libcurl4 libpng16-16 libjpeg9 libcairo2 libharfbuzz0b libfribidi0 libtiff6 libreadline8 |
| COPY dir:f698d7994c5b146cd28858ba082ff56dfb99154203096e3694858718d20effc1 in /usr/lib/jamovi/ |
| COPY dir:a422a58a4d024063d7b7ff48356460276304fdb314f4e5c281af9cbb7ec0f293 in /usr/lib/jamovi/client/ |
| COPY dir:5c780026ed11ec6f2b8bf3f68aa3da93b4eeb2009b7fff43f035a606c9e17dac in /usr/lib/jamovi/i18n/json |
| COPY file:8e109710b91fa37a92c54fdc3c046272b36c74fce68c7504989d16e8703800a9 in /usr/lib/jamovi/bin/jamovi-engine |
| COPY dir:2be46d9499e200f5fbcb27c4e8a924dae50b96d3ed45cd4b54889a8a6c815172 in /usr/local/lib/python3.12/dist-packages |
| COPY file:6ca931dd12391b143854bad9d92b3989699965449a654355c5c89f7b7a77e081 in /usr/lib/x86_64-linux-gnu/libnanomsg.so |
| COPY dir:12203cf30bc613032f6af5634b3a82d60d33131c58353207bbadaf5e635576f3 in /usr/lib/jamovi/ |
| /bin/sh -c chgrp -R 0 /usr/lib/jamovi && chmod -R g=u /usr/lib/jamovi |
| /bin/sh -c mkdir -p /home/jamovi/.jamovi && echo "{}" > /home/jamovi/.jamovi/settings.json && chgrp -R 0 /home/jamovi && chmod -R g=u /home/jamovi |
| ENV HOME /home/jamovi |
| ENV LD_LIBRARY_PATH $R_HOME/lib |
| ENV JAMOVI_HOME /usr/lib/jamovi |
| ENV PYTHONPATH /usr/lib/jamovi/server |
| ENV R_LIBS $R_HOME/library |
| ENV JAMOVI_SESSION_EXPIRES 0 |
| ENV JAMOVI_ALLOW_ARBITRARY_CODE false |
| EXPOSE 41337 |
| EXPOSE 41338 |
| EXPOSE 41339 |
| ENTRYPOINT ["/bin/sh", "-c"] |
| CMD ["/usr/bin/python3 -m jamovi.server 41337 --if=*"] |