Skip to content

Commit

Permalink
Merge pull request #1 from YogiOnBioinformatics/python
Browse files Browse the repository at this point in the history
Python Image
  • Loading branch information
YogiOnBioinformatics committed Jul 26, 2022
2 parents f3b72fe + 070f708 commit 68fc798
Show file tree
Hide file tree
Showing 7 changed files with 193 additions and 2 deletions.
8 changes: 6 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,6 @@
# Comp-Bio-Containers
Containers that I use in my work.
# Comp-Bio-Images

Code to create images that I use for my daily work.

📂 `python`:
- Image for analyses done in `Python 3` using `Jupyter Lab`
18 changes: 18 additions & 0 deletions python/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Python 3.10.5
FROM python:3.10.5

# add user
RUN useradd -ms /bin/bash yraghav
USER yraghav

# change working directory
WORKDIR /home/yraghav/

# Make directory and copy files
RUN mkdir -p /home/yraghav/comp-bio-containers/python/
COPY ./* /home/yraghav/comp-bio-containers/python/

# ugprade pip and install requirements
RUN pip3 install --upgrade pip
RUN pip install -r /home/yraghav/comp-bio-containers/python/requirements.txt

29 changes: 29 additions & 0 deletions python/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# Python Image

Image with tons of useful Python packages that can be used in Jupyter Lab.

[Docker Hub URL](https://hub.docker.com/repository/docker/yraghav97/python-image)
<br>
<br>

📄 `requirements.txt`:

Python packages with versions that are installed in the image.

📄 `Dockerfile`:

Instructions for how to create the image.

📄 `build_and_publish.sh`:

Script to build and publish the image.
Need to replace `{insert tag}` with version.


📂 `rivanna/`📄`cluster_init.sh`:

Script to add to `iPython Kernel` so it can load the container.

📂 `rivanna/`📄`kernel.json`:

File specifying the `Jupyter Lab` kernel settings in `Rivanna`.
6 changes: 6 additions & 0 deletions python/build_and_publish.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# build docker image
docker build -t python-image:{insert tag} .

# tag and push to docker hub
docker tag python-image:{insert tag} yraghav97/python-image:{insert tag}
docker push yraghav97/python-image:{insert tag}
9 changes: 9 additions & 0 deletions python/kernel.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"argv": [
"/home/jve4pt/.local/share/jupyter/kernels/python/rivanna/cluster_init_singularity.sh",
"-f",
"{connection_file}"
],
"display_name": "Yogi's Python Container",
"language": "python"
}
121 changes: 121 additions & 0 deletions python/requirements.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,121 @@
anyio==3.6.1
argon2-cffi==21.3.0
argon2-cffi-bindings==21.2.0
asttokens==2.0.5
async-generator==1.10
attrs==21.4.0
Babel==2.10.3
backcall==0.2.0
beautifulsoup4==4.11.1
bleach==5.0.1
bokeh==2.4.3
certifi==2022.6.15
cffi==1.15.1
charset-normalizer==2.1.0
click==8.1.3
cloudpickle==2.1.0
cryptography==37.0.4
cycler==0.11.0
dask==2022.7.1
debugpy==1.6.2
decorator==5.1.1
defusedxml==0.7.1
entrypoints==0.4
executing==0.9.0
fastjsonschema==2.16.1
Flask==2.1.3
fonttools==4.34.4
fsspec==2022.5.0
h11==0.13.0
idna==3.3
iniconfig==1.1.1
ipykernel==6.15.1
ipython==8.4.0
ipython-genutils==0.2.0
itsdangerous==2.1.2
jedi==0.18.1
Jinja2==3.1.2
joblib==1.1.0
json5==0.9.8
jsonschema==4.7.2
jupyter-client==7.3.4
jupyter-core==4.11.1
jupyter-server==1.18.1
jupyterlab==3.4.4
jupyterlab-pygments==0.2.2
jupyterlab-server==2.15.0
kiwisolver==1.4.4
locket==1.0.0
MarkupSafe==2.1.1
matplotlib==3.5.2
matplotlib-inline==0.1.3
mistune==0.8.4
nbclassic==0.4.3
nbclient==0.6.6
nbconvert==6.5.0
nbformat==5.4.0
nest-asyncio==1.5.5
networkx==2.8.5
notebook==6.4.12
notebook-shim==0.1.0
numpy==1.23.1
outcome==1.2.0
packaging==21.3
pandas==1.4.3
pandocfilters==1.5.0
parso==0.8.3
partd==1.2.0
patsy==0.5.2
pexpect==4.8.0
pickleshare==0.7.5
Pillow==9.2.0
plotly==5.9.0
pluggy==1.0.0
prometheus-client==0.14.1
prompt-toolkit==3.0.30
psutil==5.9.1
ptyprocess==0.7.0
pure-eval==0.2.2
py==1.11.0
pycparser==2.21
Pygments==2.12.0
pyOpenSSL==22.0.0
pyparsing==3.0.9
pyrsistent==0.18.1
PySocks==1.7.1
pytest==7.1.2
python-dateutil==2.8.2
pytz==2022.1
PyYAML==6.0
pyzmq==23.2.0
requests==2.28.1
scikit-learn==1.1.1
scipy==1.8.1
seaborn==0.11.2
selenium==4.3.0
Send2Trash==1.8.0
six==1.16.0
sklearn==0.0
sniffio==1.2.0
sortedcontainers==2.4.0
soupsieve==2.3.2.post1
stack-data==0.3.0
statsmodels==0.13.2
tenacity==8.0.1
terminado==0.15.0
threadpoolctl==3.1.0
tinycss2==1.1.1
tomli==2.0.1
toolz==0.12.0
tornado==6.2
tqdm==4.64.0
traitlets==5.3.0
trio==0.21.0
trio-websocket==0.9.2
typing_extensions==4.3.0
urllib3==1.26.11
wcwidth==0.2.5
webencodings==0.5.1
websocket-client==1.3.3
Werkzeug==2.2.0
wsproto==1.1.0
4 changes: 4 additions & 0 deletions python/rivanna/cluster_init_singularity.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
#!/bin/bash

module load singularity
singularity exec $HOME/.local/share/jupyter/kernels/python/python-image.sif python -m ipykernel $@

0 comments on commit 68fc798

Please sign in to comment.