You need Docker. We support GNU/Linux, macOS, and Windows.
You need Python.
The script can be installed and upgraded by executing the following command
(you may have to use pip3
instead of pip
depending on your configuration):
pip install -U colomoto-docker
The CoLoMoTo notebook can then be started by executing in a terminal (if using Docker Toolbox, in a Docker Terminal):
colomoto-docker
The container can be stopped by pressing Ctrl+C keys.
By default, the script uses the most recently fetched image; the first time, it fetches the most recent colomoto/colomoto-docker tag.
A specific tag can be specified using the -V
option. For example:
colomoto-docker # uses the most recently fetched image
colomoto-docker -V latest # fetches the latest published image
colomoto-docker -V 2018-05-29 # fetches a specific image
Warning: by default, the files within the Docker container are isolated from the running host computer, therefore files are deleted after stopping the container, except the files within the persistent
directory.
To have access to the files of your current directory you can use the --bind
option:
colomoto-docker --bind .
If you want to have the tutorial notebooks alongside your local files, you can do the following:
mkdir notebooks
colomoto-docker -v notebooks:local-notebooks
in the Jupyter browser, you will see a local-notebooks
directory which is
bound to your notebooks
directory.
See
colomoto-docker --help
for other options.
First fetch the image with
docker pull colomoto/colomoto-docker:TAG
where TAG
is the version of the image, among colomoto/colomoto-docker tags.
The image can be ran using
docker run -it --rm -p 8888:8888 colomoto/colomoto-docker:TAG
then, open your browser and go to http://localhost:8888 for the Jupyter notebook web interface
(note: when using Docker Toolbox, replace localhost with the result of
docker-machine ip default
command).
Besides the Jupyter notebook, the docker image provides access to the following softwares:
Software tool | Homepage | Description | Jupyter interface |
---|---|---|---|
ActoNet | https://github.com/algorecell/pyActoNet | Abduction-based control of fixed points of Boolean networks | Python module actonet |
AEON.py | https://github.com/sybila/biodivine-aeon-py | Symbolic analysis (attractors, reachability) of (partially specified) Boolean networks | Python module biodivine_aeon |
BNS | https://people.kth.se/~dubrova/BNS/user_manual.html | Identification of synchronous attractors | Python module bns |
bioLQM | http://colomoto.org/biolqm/ | Logical Qualitative Modelling toolkit | Python module biolqm |
BoNesis | https://github.com/bnediction/bonesis | Synthesis of Boolean Networks from architecture and dynamical properties | Python module bonesis |
BooleanNet | https://github.com/ialbert/booleannet | Simulation of Boolean regulatory networks | Python module boolean2 |
boolSim | https://www.vital-it.ch/research/software/boolSim | Attractors and reachable sets in synchronous and asynchronous Boolean networks | Python module boolsim |
CABEAN | https://satoss.uni.lu/software/CABEAN/ | A Software Tool for the Control of Asynchronous Boolean Networks | Python module cabean |
Caspo | https://bioasp.github.io/caspo/ | Reasoning on the response of logical signaling networks with Answer Set Programming | Python module caspo_control |
CaSQ | https://github.com/soli/casq | Convert static interaction maps into executable models | Python module casq |
CellCollective | https://cellcollective.org | Model repository and knowledge base | Python module cellcollective |
ERODE | https://github.com/colomoto/ERODE-CoLoMoTo | Backward Boolean Equivalence of Boolean networks | Python module erode |
GINsim | http://ginsim.org | Boolean and multi-valued network modelling | Python module ginsim |
MaBoSS | http://maboss.curie.fr | Markovian Boolean Stochastic Simulator | Python module maboss |
mpbn | https://github.com/pauleve/mpbn | Most Permissive Boolean Networks | Python module mpbn |
NORDic | https://github.com/clreda/NORDic | Network Oriented Repurposing of Drugs | Python module NORDic |
NuSMV | http://nusmv.fbk.eu | Symbolic model-checker | Python module nusmv |
Pint | https://loicpauleve.name/pint | Static analyzer for dynamics of Automata Networks | Python module pypint |
PyBoolNet | https://github.com/hklarner/PyBoolNet | Generation, modification and analysis of Boolean networks | Python module PyBoolNet |
pyStableMotifs | https://github.com/jcrozum/pystablemotifs | Target-control of Boolean networks | Python module pystablemotifs |
R-BoolNet | https://cran.r-project.org/package=BoolNet | Analysis and reconstruction of Boolean networks dynamics | RPY2 python interface |
scBoolSeq | https://github.com/bnediction/scBoolSeq | scRNA-Seq data binarisation and synthetic generation from Boolean dynamics | Python module scboolseq |
Docker images are timestamped with tags of the form YYYY-MM-DD after each tool addition or upgrade.
In order to guarantee the re-executability of your notebook, we recommend to use these tagged images instead of the non-persistent next
tag.
See CONTRIBUTING.md.