1
1
# syntax=docker/dockerfile:1.3
2
2
# FROM continuumio/miniconda3:4.12.0@sha256:58b1c7df8d69655ffec017ede784a075e3c2e9feff0fc50ef65300fc75aa45ae
3
- FROM continuumio/miniconda3:24.9.2-0@sha256:39b820af05f0f9bb986ca145a0d077bbd3bd866256277dd869fefb93bd03cd21
3
+ # 11/14/24: Use a miniconda image that's a bit older than the rstudio-server package; just in case
4
+ FROM continuumio/miniconda3:24.7.1-0@sha256:f37f8c7db26ae7ec0098df530e96c9cde139026b9faf3914800d1522c47a49b1
4
5
5
6
ENV NB_USER jovyan
6
7
ENV NB_UID 1000
@@ -42,10 +43,6 @@ RUN --mount=type=cache,id=ohw_r_apt,target=/var/cache/apt \
42
43
sudo \
43
44
# 11/14/24: should this lib version be udpated?
44
45
libapparmor1 \
45
- # 11/14/24: Neither libarchive-dev nor libarchive13 solved the error:
46
- # Error while loading conda entry point: conda-libmamba-solver (libarchive.so.20: cannot open shared object file: No such file or directory)
47
- # libarchive-dev \
48
- libarchive13 \
49
46
libfmt-dev \
50
47
# 11/14/24: should this lib version be udpated?
51
48
libpq5 \
@@ -81,9 +78,11 @@ COPY ./conda-linux-64.lock /tmp/
81
78
82
79
RUN --mount=type=cache,id=ohw_r,target=${CONDA_DIR}/pkgs,uid=${NB_UID},gid=${NB_UID} \
83
80
# https://github.com/jupyterhub/jupyterhub-deploy-docker/issues/91#issuecomment-525563836
84
- conda update -n root conda && \
81
+ # To avoid libmamba and libarchive channel conflicts, make sure conda-forge is the only channel
82
+ # https://github.com/conda/conda-libmamba-solver/issues/283#issuecomment-1949560105
83
+ conda config --add channels conda-forge && \
84
+ conda update --all && \
85
85
conda install --name ${CONDA_ENV} --file /tmp/conda-linux-64.lock && \
86
- # micromamba install --name ${CONDA_ENV} --file environment.yml && \
87
86
find -name '*.a' -delete && \
88
87
# rm -rf /opt/conda/conda-meta && \
89
88
rm -rf ${CONDA_DIR}/include && \
@@ -95,9 +94,10 @@ ARG MAMBA_DOCKERFILE_ACTIVATE=1
95
94
# 2024-10-10: Have there been improvements in install_cran and install_github such that
96
95
# dependencies, upgrade_dependencies, upgrade could now be set to TRUE or the default?
97
96
# RUN installGithub.R BigelowLab/rasf BigelowLab/ohwobpg # not working on GH but works locally :-/
98
- RUN Rscript -e "remotes::install_cran('assertthat', dependencies=FALSE, upgrade_dependencies=FALSE, upgrade=FALSE)" && \
99
- Rscript -e "remotes::install_cran('forecast', dependencies=FALSE, upgrade_dependencies=FALSE, upgrade=FALSE)" && \
100
- Rscript -e "remotes::install_cran('ggspatial', dependencies=FALSE, upgrade_dependencies=FALSE, upgrade=FALSE)" && \
97
+ RUN \
98
+ # -- Dependencies to the target packages, not already installed via the conda environment
99
+ Rscript -e "remotes::install_cran('PBSMapping', dependencies=FALSE, upgrade_dependencies=FALSE, upgrade=FALSE)" && \
100
+ # -- Target packages
101
101
Rscript -e "remotes::install_cran('plot.matrix', dependencies=FALSE, upgrade_dependencies=FALSE, upgrade=FALSE)" && \
102
102
Rscript -e "remotes::install_cran('isdparser', dependencies=FALSE, upgrade_dependencies=FALSE, upgrade=FALSE)" && \
103
103
Rscript -e "remotes::install_cran('geonames', dependencies=FALSE, upgrade_dependencies=FALSE, upgrade=FALSE)" && \
@@ -117,7 +117,6 @@ RUN Rscript -e "remotes::install_cran('assertthat', dependencies=FALSE, upgrade_
117
117
Rscript -e "remotes::install_github('hvillalo/echogram', dependencies=FALSE, upgrade_dependencies=FALSE, upgrade=FALSE)" && \
118
118
Rscript -e "remotes::install_github('hvillalo/periods', dependencies=FALSE, upgrade_dependencies=FALSE, upgrade=FALSE)" && \
119
119
Rscript -e "remotes::install_github('hvillalo/satin', dependencies=FALSE, upgrade_dependencies=FALSE, upgrade=FALSE)" && \
120
- Rscript -e "remotes::install_github('kwstat/pals', dependencies=FALSE, upgrade_dependencies=FALSE, upgrade=FALSE)" && \
121
120
Rscript -e "remotes::install_github('JorGarMol/VoCC', dependencies=FALSE, upgrade_dependencies=FALSE, upgrade=FALSE)"
122
121
123
122
COPY CONDARC ./.condarc
0 commit comments