|
| 1 | +FROM nvidia/cuda:10.0-base-ubuntu18.04 |
| 2 | + |
| 3 | +LABEL maintainer= "Vincent Prevosto <[email protected]>" |
| 4 | + |
| 5 | +# USER root |
| 6 | +# Ubuntu package installs |
| 7 | +RUN apt update && \ |
| 8 | + apt install -y --no-install-recommends \ |
| 9 | + libfftw3-dev \ |
| 10 | + git \ |
| 11 | + wget && \ |
| 12 | + apt clean && \ |
| 13 | + rm -rf /var/lib/apt/lists/* |
| 14 | + |
| 15 | +# install miniconda |
| 16 | +ENV MINICONDA_VERSION 4.12.0 |
| 17 | +ENV CONDA_DIR /home/miniconda3 |
| 18 | +ENV LATEST_CONDA_SCRIPT "Miniconda3-py38_$MINICONDA_VERSION-Linux-x86_64.sh" |
| 19 | + |
| 20 | +RUN wget --quiet https://repo.anaconda.com/miniconda/$LATEST_CONDA_SCRIPT -O ~/miniconda.sh && \ |
| 21 | + bash ~/miniconda.sh -b -p $CONDA_DIR && \ |
| 22 | + rm ~/miniconda.sh |
| 23 | +ENV PATH=$CONDA_DIR/bin:$PATH |
| 24 | +RUN conda update conda && \ |
| 25 | + conda install conda-build |
| 26 | + |
| 27 | +# make conda activate command available from /bin/bash --login shells |
| 28 | +RUN echo ". $CONDA_DIR/etc/profile.d/conda.sh" >> /root/.profile |
| 29 | +# make conda activate command available from /bin/bash --interactive shells |
| 30 | +RUN conda init bash |
| 31 | + |
| 32 | +# Install python port of pykilosort |
| 33 | +RUN git clone -b drift_test_stable https://github.com/kushbanga/pykilosort.git /src/pykilosort |
| 34 | +WORKDIR /src/pykilosort |
| 35 | +# Switch to MouseLand/develop branch - may revert to kushbanga/drift_test_stable in the future |
| 36 | +RUN git remote add MouseLand https://github.com/MouseLand/pykilosort.git && \ |
| 37 | + git fetch MouseLand && git checkout MouseLand/develop && git checkout -b develop |
| 38 | + |
| 39 | +# modify env file so that env extends on base |
| 40 | +RUN sed -i "s/pyks2/base/" pyks2.yml |
| 41 | + |
| 42 | +# Create environment |
| 43 | +RUN conda env update --name base --file pyks2.yml --prune |
| 44 | + |
| 45 | +# Install pykilosort |
| 46 | +RUN conda install --quiet --yes ipykernel && \ |
| 47 | + python -m ipykernel install --user --display-name "pyKilosort" && \ |
| 48 | + conda develop . |
| 49 | + |
| 50 | +# install phylib from master because of read-only bug (https://github.com/cortex-lab/phylib/pull/35) |
| 51 | +RUN pip uninstall -y phylib && pip install git+https://github.com/cortex-lab/phylib.git |
| 52 | + |
| 53 | +#--name pyks2 |
| 54 | +WORKDIR / |
0 commit comments