Skip to content

Commit cd52a19

Browse files
committed
new Dockerfile
1 parent 6ffc7d9 commit cd52a19

1 file changed

Lines changed: 60 additions & 0 deletions

File tree

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
# docker build --platform amd64 -t wfcommons-dev-snakemake -f Dockerfile.snakemake .
2+
# docker run -it --rm -v `pwd`:/home/wfcommons wfcommons-dev-snakemake /bin/bash
3+
4+
FROM amd64/ubuntu:noble
5+
6+
LABEL org.containers.image.authors="henric@hawaii.edu"
7+
8+
# update repositories
9+
RUN apt-get update
10+
11+
# set timezone
12+
RUN echo "America/Los_Angeles" > /etc/timezone && export DEBIAN_FRONTEND=noninteractive && apt-get install -y tzdata
13+
14+
# install useful stuff
15+
RUN apt-get -y install pkg-config
16+
RUN apt-get -y install git
17+
RUN apt-get -y install wget
18+
RUN apt-get -y install curl
19+
RUN apt-get -y install make
20+
RUN apt-get -y install cmake
21+
RUN apt-get -y install cmake-data
22+
RUN apt-get -y install sudo
23+
RUN apt-get -y install vim --fix-missing
24+
RUN apt-get -y install gcc
25+
RUN apt-get -y install gcc-multilib
26+
RUN apt-get -y install graphviz libgraphviz-dev
27+
28+
29+
# Python stuff
30+
RUN apt-get -y install python3 python3-pip
31+
RUN update-alternatives --install /usr/bin/python python /usr/bin/python3 1
32+
RUN python3 -m pip install --break-system-packages pathos pandas filelock
33+
RUN python3 -m pip install --break-system-packages networkx scipy matplotlib pygraphviz
34+
RUN python3 -m pip install --break-system-packages pyyaml jsonschema requests
35+
RUN python3 -m pip install --break-system-packages --upgrade setuptools
36+
37+
# Stress-ng
38+
RUN apt-get -y install stress-ng
39+
40+
# Add wfcommons user
41+
RUN useradd -ms /bin/bash wfcommons
42+
RUN adduser wfcommons sudo
43+
RUN echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers
44+
ENV PATH="$PATH:/home/wfcommons/.local/bin/"
45+
46+
USER wfcommons
47+
WORKDIR /home/wfcommons
48+
# Making this directory world rwx to facilitate testing
49+
RUN chmod -R 777 /home/wfcommons
50+
51+
52+
# Install Pixi
53+
RUN wget -qO- https://pixi.sh/install.sh | sh
54+
ENV PATH="$PATH:/home/wfcommons/.pixi/bin"
55+
56+
# Install snakemake
57+
RUN pixi global install snakemake conda -c conda-forge -c bioconda
58+
RUN pixi global install snakedeploy -c conda-forge -c bioconda
59+
60+

0 commit comments

Comments
 (0)