Public | Automated Build

Last pushed: 4 months ago
SourceRef
Dockerfile Location
Docker Tag
Build Created
UTC
v2.7.1
/
v2.7.1
8 months ago
2018-04-11T20:59:17.357Z
Build Code

bn8k6ghr6nehnytfmx3rghb

README

docker-cellorganizer






About CellOrganizer

The CellOrganizer project provides tools for

  • learning generative models of cell organization directly from images
  • storing and retrieving those models
  • synthesizing cell images (or other representations) from one or more models

Model learning captures variation among cells in a collection of images. Images used for model learning and instances synthesized from models can be two- or three-dimensional static images or movies.

CellOrganizer can learn models of

  • cell shape
  • nuclear shape
  • chromatin texture
  • vesicular organelle size, shape and position
  • microtubule distribution.

These models can be conditional upon each other. For example, for a given synthesized cell instance, organelle position is dependent upon the cell and nuclear shape of that instance.

Cell types for which generative models for at least some organelles have been built include human HeLa cells, mouse NIH 3T3 cells, and Arabidopsis protoplasts. Planned projects include mouse T lymphocytes and rat PC12 cells.

CellOrganizer v2.7.1

Enhancements

  • Created method slml2info to replace model2info. The method creates a report with useful information from a model file. Method writes report with Matlab Publisher. When method is deployed, then it generates a report in Markdown.
  • Created method slml2report. The method creates a report comparing two model files. Method writes report with Matlab Publisher. When method is deployed, then it generates a report in Markdown.
  • Created demos demo2D08 and demo2D09 to show how to make a report from a PCA framework model.

Fixes

  • Fixed problem with demo3D46. Unable to synthesize image from CSGO model when combined with a vesicle model.
  • Fixed problem with demo3D35. Unable to produce figure.

CellOrganizer v2.7.0

Features

  • Included new model class/type: constructive_geometry/half-ellipsoid
  • Included new model class/type: framework/pca
  • Included support for OME.TIFF with regions of interest
  • Included bash scripts to run demos from compiled versions of the main functions

Enhancements

  • img2slml now checks the combination of model class and type for every submodel before attempting to extract parameters from image
  • Improved pipeline so that CellOrganizer will stop computation and report to user if no images are found in the path or if software fails to extract parameters.
  • Added demo3D44 to show how to synthesize from a model class/type constructive_geomertry/half-ellipsoid
  • Added a battery of unit test for demos using Matlab testing framework
  • Added demo3D45 to show how to use OME.TIFF files with ROIs.
  • Added demo2D05, demo2D06, demo2D07 to show how to train and synthesize from a classtype framework/pca model

Demo List

The following demo scripts are included in the image.

Demo Name Training Synthesis
demo2D00 :heavy_check_mark:
demo2D01 :heavy_check_mark:
demo2D02 :heavy_check_mark:
demo2D04 :heavy_check_mark:
demo2D05 :heavy_check_mark:
demo3D00 :heavy_check_mark:
demo3D01 :heavy_check_mark:
demo3D03 :heavy_check_mark:
demo3D04 :heavy_check_mark:
demo3D06 :heavy_check_mark:
demo3D07 :heavy_check_mark:
demo3D08 :heavy_check_mark:
demo3D09 :heavy_check_mark:
demo3D11 :heavy_check_mark:
demo3D12 :heavy_check_mark:
demo3D19
demo3D20 :heavy_check_mark:
demo3D47

The demos in the table above are the same demos included in the Matlab distribution.

Docker

Installing Docker

Installing Docker is beyond the scope of this document. To learn about Docker Community Edition (CE), click here.

  • To install Docker-for-Mac, click here.
  • To install Docker-for-Windows, click here.

Installing Kitematic

The easiest way to download an image and run a container is to use [Kitematic(https://kitematic.com/).

  • To install Kitematic, click here.

About the Docker container

Downloading image and running container using Kitematic

Running Kitematic will open a window that looks like this

Use the searchbar to search for cellorganizer

and click Create.

Downloading image and running container

To build an image using the Dockerfile in this repository, run the command

➜ docker build -t "murphylab/cellorganizer" .

The previous step should build an image

➜  docker container ls -a

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                        PORTS               NAMES
48dde52f2bc8        murphylab/cellorganizer     "/bin/bash -c 'pyt..."   45 seconds ago      Exited (0) 39 seconds ago                         frosty_wescoff

To run a container using the image above

➜  docker run -i -t murphylab/cellorganizer

Additional files

The container comes with


Support for CellOrganizer has been provided by grants GM075205, GM090033 and GM103712 from the National Institute of General Medical Sciences, grants MCB1121919 and MCB1121793 from the U.S. National Science Foundation, by a Forschungspreis from the Alexander von Humboldt Foundation, and by the Freiburg Institute for Advanced Studies.

Copyright © 2007-2018 by the Murphy Lab at the Computational Biology Department in Carnegie Mellon University

Dockerfile
FROM icaoberg/matlabmcr2017a ############################################################################################### MAINTAINER Ivan E. Cao-Berg <icaoberg@andrew.cmu.edu> LABEL Description="CellOrganizer" LABEL Vendor="Murphy Lab in the Computational Biology Department at Carnegie Mellon University" LABEL Web="http://murphylab.cbd.cmu.edu" LABEL Version="2.7.1" ############################################################################################### ############################################################################################### # INSTALL CELLORGANIZER BINARIES WORKDIR /home/murphylab USER root RUN echo "Downloading CellOrganizer v2.7.1" && \ cd ~/ && \ wget -nc --quiet http://www.cellorganizer.org/Downloads/v2.7/docker/v2.7.1/cellorganizer-v2.7.1-binaries.tgz && \ tar -xvf cellorganizer-v2.7.1-binaries.tgz && \ rm cellorganizer-v2.7.1-binaries.tgz && \ mv cellorganizer-binaries /opt && \ chmod +x /opt/cellorganizer-binaries/img2slml && \ chmod +x /opt/cellorganizer-binaries/slml2img && \ chmod +x /opt/cellorganizer-binaries/slml2report && \ chmod +x /opt/cellorganizer-binaries/slml2info && \ ln -s /opt/cellorganizer-binaries/img2slml /usr/local/bin/img2slml && \ ln -s /opt/cellorganizer-binaries/slml2img /usr/local/bin/slml2img && \ ln -s /opt/cellorganizer-binaries/slml2report /usr/local/bin/slml2report && \ ln -s /opt/cellorganizer-binaries/slml2info /usr/local/bin/slml2info ############################################################################################### ############################################################################################### USER murphylab RUN echo "Downloading models" && \ wget -nc --quiet http://www.cellorganizer.org/Downloads/v2.7/docker/v2.7.1/cellorganizer-v2.7.1-models.tgz && \ tar -xvf cellorganizer-v2.7.1-models.tgz && \ rm -f cellorganizer-v2.7.1-models.tgz COPY demos cellorganizer/demos USER root RUN find /home/murphylab/cellorganizer/demos -name "*.sh" -exec chmod +x {} \; RUN chown -Rv murphylab:users /home/murphylab/cellorganizer USER murphylab ###############################################################################################
Logs

Building in Docker Cloud's infrastructure... Cloning into '.'... Note: checking out '286201c661bc90cf5e62c4237d856d91574749be'. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by performing another checkout. If you want to create a new branch to retain commits you create, you may do so (now or later) by using -b with the checkout command again. Example: git checkout -b new_branch_name KernelVersion: 4.4.0-93-generic Arch: amd64 BuildTime: 2017-08-17T22:50:04.828747906+00:00 ApiVersion: 1.30 Version: 17.06.1-ce MinAPIVersion: 1.12 GitCommit: 874a737 Os: linux GoVersion: go1.8.3 Starting build of index.docker.io/murphylab/docker-cellorganizer:v2.7.1... Step 1/16 : FROM icaoberg/matlabmcr2017a ---> a68e9b8e1db6 Step 2/16 : MAINTAINER Ivan E. Cao-Berg <icaoberg@andrew.cmu.edu> ---> Running in 9ff270949535 ---> fb8840d87618 Removing intermediate container 9ff270949535 Step 3/16 : LABEL Description "CellOrganizer" ---> Running in 7dad0b4a4bed ---> 8b6cbd29ed11 Removing intermediate container 7dad0b4a4bed Step 4/16 : LABEL Vendor "Murphy Lab in the Computational Biology Department at Carnegie Mellon University" ---> Running in f88ff9e198ba ---> e4840f050ba7 Removing intermediate container f88ff9e198ba Step 5/16 : LABEL Web "http://murphylab.cbd.cmu.edu" ---> Running in 4f9068de2bb8 ---> 1131425a5458 Removing intermediate container 4f9068de2bb8 Step 6/16 : LABEL Version "2.7.1" ---> Running in b6293a672981 ---> b77ababe9587 Removing intermediate container b6293a672981 Step 7/16 : WORKDIR /home/murphylab ---> e090d1aefa57 Removing intermediate container 625459d0f200 Step 8/16 : USER root ---> Running in 7a55002b2744 ---> 0f178ecebea5 Removing intermediate container 7a55002b2744 Step 9/16 : RUN echo "Downloading CellOrganizer v2.7.1" && cd ~/ && wget -nc --quiet http://www.cellorganizer.org/Downloads/v2.7/docker/v2.7.1/cellorganizer-v2.7.1-binaries.tgz && tar -xvf cellorganizer-v2.7.1-binaries.tgz && rm cellorganizer-v2.7.1-binaries.tgz && mv cellorganizer-binaries /opt && chmod +x /opt/cellorganizer-binaries/img2slml && chmod +x /opt/cellorganizer-binaries/slml2img && chmod +x /opt/cellorganizer-binaries/slml2report && chmod +x /opt/cellorganizer-binaries/slml2info && ln -s /opt/cellorganizer-binaries/img2slml /usr/local/bin/img2slml && ln -s /opt/cellorganizer-binaries/slml2img /usr/local/bin/slml2img && ln -s /opt/cellorganizer-binaries/slml2report /usr/local/bin/slml2report && ln -s /opt/cellorganizer-binaries/slml2info /usr/local/bin/slml2info ---> Running in 61ba6830dd98 Downloading CellOrganizer v2.7.1 wget: /opt/mcr/v92/bin/glnxa64/libcrypto.so.1.0.0: no version information available (required by wget) wget: /opt/mcr/v92/bin/glnxa64/libssl.so.1.0.0: no version information available (required by wget) wget: /opt/mcr/v92/bin/glnxa64/libssl.so.1.0.0: no version information available (required by wget)  cellorganizer-binaries/ cellorganizer-binaries/slml2report cellorganizer-binaries/slml2info cellorganizer-binaries/slml2img cellorganizer-binaries/img2slml ---> 38aacf0e86e4 Removing intermediate container 61ba6830dd98 Step 10/16 : USER murphylab ---> Running in b644c62a2d2d ---> aebaa862d8f1 Removing intermediate container b644c62a2d2d Step 11/16 : RUN echo "Downloading models" && wget -nc --quiet http://www.cellorganizer.org/Downloads/v2.7/docker/v2.7.1/cellorganizer-v2.7.1-models.tgz && tar -xvf cellorganizer-v2.7.1-models.tgz && rm -f cellorganizer-v2.7.1-models.tgz ---> Running in 6101c37bca09 wget: /opt/mcr/v92/bin/glnxa64/libcrypto.so.1.0.0: no version information available (required by wget) wget: /opt/mcr/v92/bin/glnxa64/libssl.so.1.0.0: no version information available (required by wget) wget: /opt/mcr/v92/bin/glnxa64/libssl.so.1.0.0: no version information available (required by wget)  Downloading models cellorganizer/ cellorganizer/models/ cellorganizer/models/3D/ cellorganizer/models/3D/mit.mat cellorganizer/models/3D/diffeomorphic/ cellorganizer/models/3D/diffeomorphic/helamodel_9_16_15.mat cellorganizer/models/3D/diffeomorphic/hela_nuc_10_15_15.mat cellorganizer/models/3D/diffeomorphic/hela_cell_10_15_15.mat cellorganizer/models/3D/diffeomorphic/cell_model_nuc_align.mat cellorganizer/models/3D/diffeomorphic/3t3_model.mat cellorganizer/models/3D/tfr.mat cellorganizer/models/3D/lamp2.mat cellorganizer/models/3D/nuc.mat cellorganizer/models/3D/tub.mat cellorganizer/models/3D/ellipsoid_model.mat cellorganizer/models/3D/centro.mat cellorganizer/models/2D/ cellorganizer/models/2D/mitochondrion.mat cellorganizer/models/2D/lysosome.mat cellorganizer/models/2D/endosome.mat cellorganizer/models/2D/nucleolus.mat ---> b69fdb0dcf36 Removing intermediate container 6101c37bca09 Step 12/16 : COPY demos cellorganizer/demos ---> 6e931e342e6a Removing intermediate container b3bda254f573 Step 13/16 : USER root ---> Running in 549ee605cfef ---> 160973882019 Removing intermediate container 549ee605cfef Step 14/16 : RUN find /home/murphylab/cellorganizer/demos -name "*.sh" -exec chmod +x {} \; ---> Running in 4f51855716ea ---> 5c30113829d9 Removing intermediate container 4f51855716ea Step 15/16 : RUN chown -Rv murphylab:users /home/murphylab/cellorganizer ---> Running in 38e1fa069972 changed ownership of '/home/murphylab/cellorganizer/demos/3D/demo3D03/demo3D03.sh' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/3D/demo3D03' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/3D/demo3D07/demo3D07.sh' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/3D/demo3D07' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/3D/demo3D19/demo3D19.sh' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/3D/demo3D19' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/3D/demo3D09/demo3D09.sh' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/3D/demo3D09' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/3D/demo3D00/demo3D00.sh' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/3D/demo3D00' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/3D/demo3D08/demo3D08.sh' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/3D/demo3D08' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/3D/demo3D20/demo3D20.sh' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/3D/demo3D20' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/3D/demo3D01/demo3D01.sh' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/3D/demo3D01' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/3D/demo3D04/demo3D04.sh' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/3D/demo3D04' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/3D/demo3D47/demo3D47.sh' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/3D/demo3D47' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/3D/demo3D12/demo3D12.sh' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/3D/demo3D12' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/3D/demo3D06/demo3D06.sh' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/3D/demo3D06' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/3D/demo3D11/demo3D11.sh' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/3D/demo3D11' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/3D' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/2D/demo2D05/demo2D05.sh' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/2D/demo2D05' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/2D/demo2D01/demo2D01.sh' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/2D/demo2D01' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/2D/demo2D00/demo2D00.sh' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/2D/demo2D00' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/2D/demo2D04/demo2D04.sh' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/2D/demo2D04' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/2D/demo2D02/demo2D02.sh' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos/2D/demo2D02' from root:root to murphylab:users chan ged ownership of '/home/murphylab/cellorganizer/demos/2D' from root:root to murphylab:users changed ownership of '/home/murphylab/cellorganizer/demos' from root:root to murphylab:users ownership of '/home/murphylab/cellorganizer/models/3D/lamp2.mat' retained as murphylab:users ownership of '/home/murphylab/cellorganizer/models/3D/centro.mat' retained as murphylab:users ownership of '/home/murphylab/cellorganizer/models/3D/ellipsoid_model.mat' retained as murphylab:users ownership of '/home/murphylab/cellorganizer/models/3D/nuc.mat' retained as murphylab:users ownership of '/home/murphylab/cellorganizer/models/3D/tub.mat' retained as murphylab:users ownership of '/home/murphylab/cellorganizer/models/3D/diffeomorphic/3t3_model.mat' retained as murphylab:users ownership of '/home/murphylab/cellorganizer/models/3D/diffeomorphic/cell_model_nuc_align.mat' retained as murphylab:users ownership of '/home/murphylab/cellorganizer/models/3D/diffeomorphic/hela_cell_10_15_15.mat' retained as murphylab:users ownership of '/home/murphylab/cellorganizer/models/3D/diffeomorphic/helamodel_9_16_15.mat' retained as murphylab:users ownership of '/home/murphylab/cellorganizer/models/3D/diffeomorphic/hela_nuc_10_15_15.mat' retained as murphylab:users ownership of '/home/murphylab/cellorganizer/models/3D/diffeomorphic' retained as murphylab:users ownership of '/home/murphylab/cellorganizer/models/3D/tfr.mat' retained as murphylab:users ownership of '/home/murphylab/cellorganizer/models/3D/mit.mat' retained as murphylab:users ownership of '/home/murphylab/cellorganizer/models/3D' retained as murphylab:users ownership of '/home/murphylab/cellorganizer/models/2D/nucleolus.mat' retained as murphylab:users ownership of '/home/murphylab/cellorganizer/models/2D/lysosome.mat' retained as murphylab:users ownership of '/home/murphylab/cellorganizer/models/2D/endosome.mat' retained as murphylab:users ownership of '/home/murphylab/cellorganizer/models/2D/mitochondrion.mat' retained as murphylab:users ownership of '/home/murphylab/cellorganizer/models/2D' retained as murphylab:users ownership of '/home/murphylab/cellorganizer/models' retained as murphylab:users ownership of '/home/murphylab/cellorganizer' retained as murphylab:users ---> 221aa67474b8 Removing intermediate container 38e1fa069972 Step 16/16 : USER murphylab ---> Running in 3b4d156d5207 ---> 67cfe5e82fb2 Removing intermediate container 3b4d156d5207 Successfully built 67cfe5e82fb2 Successfully tagged murphylab/docker-cellorganizer:v2.7.1 Pushing index.docker.io/murphylab/docker-cellorganizer:v2.7.1... Done! Build finished