To be clear I'm not affiliated with the Project, I just wanted to dockerize it.
Link to Project Page http://vislab.berkeleyvision.org/
version: '2'
services:
web:
ports:
- 8888:8888
image: akitchin/vislab
depends_on:
- mongo
- redis
redis:
image: redis
mongo:
image: mongo
$ docker-compose up
Starting vislab_redis_1 ...
Starting vislab_mongo_1 ...
Starting vislab_redis_1
Starting vislab_redis_1 ... done
Starting vislab_web_1 ...
Starting vislab_web_1 ... done
Attaching to vislab_mongo_1, vislab_redis_1, vislab_web_1
mongo_1 | 2017-12-03T03:56:04.323+0000 I CONTROL [initandlisten] MongoDB starting : pid=1 port=27017 dbpath=/data/db 64-bit host=881aab112eb6
mongo_1 | 2017-12-03T03:56:04.323+0000 I CONTROL [initandlisten] db version v3.4.7
redis_1 | 1:C 03 Dec 03:56:05.299 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
redis_1 | 1:C 03 Dec 03:56:05.299 # Redis version=4.0.2, bits=64, commit=00000000, modified=0, pid=1, just started
mongo_1 | 2017-12-03T03:56:04.323+0000 I CONTROL [initandlisten] git version: cf38c1b8a0a8dca4a11737581beafef4fe120bcd
redis_1 | 1:C 03 Dec 03:56:05.299 # Warning: no config file specified, using the default config. In order to specify a config file use redis-server /path/to/redis.conf
mongo_1 | 2017-12-03T03:56:04.323+0000 I CONTROL [initandlisten] OpenSSL version: OpenSSL 1.0.1t 3 May 2016
mongo_1 | 2017-12-03T03:56:04.323+0000 I CONTROL [initandlisten] allocator: tcmalloc
mongo_1 | 2017-12-03T03:56:04.323+0000 I CONTROL [initandlisten] modules: none
mongo_1 | 2017-12-03T03:56:04.323+0000 I CONTROL [initandlisten] build environment:
mongo_1 | 2017-12-03T03:56:04.323+0000 I CONTROL [initandlisten] distmod: debian81
mongo_1 | 2017-12-03T03:56:04.323+0000 I CONTROL [initandlisten] distarch: x86_64
redis_1 | 1:M 03 Dec 03:56:05.300 * Running mode=standalone, port=6379.
mongo_1 | 2017-12-03T03:56:04.323+0000 I CONTROL [initandlisten] target_arch: x86_64
mongo_1 | 2017-12-03T03:56:04.323+0000 I CONTROL [initandlisten] options: {}
mongo_1 | 2017-12-03T03:56:04.323+0000 W - [initandlisten] Detected unclean shutdown - /data/db/mongod.lock is not empty.
redis_1 | 1:M 03 Dec 03:56:05.300 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
redis_1 | 1:M 03 Dec 03:56:05.300 # Server initialized
redis_1 | 1:M 03 Dec 03:56:05.300 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled.
mongo_1 | 2017-12-03T03:56:04.330+0000 I - [initandlisten] Detected data files in /data/db created by the 'wiredTiger' storage engine, so setting the active storage engine to 'wiredTiger'.
mongo_1 | 2017-12-03T03:56:04.330+0000 W STORAGE [initandlisten] Recovering data from the last clean checkpoint.
redis_1 | 1:M 03 Dec 03:56:05.300 * Ready to accept connections
mongo_1 | 2017-12-03T03:56:04.330+0000 I STORAGE [initandlisten]
mongo_1 | 2017-12-03T03:56:04.330+0000 I STORAGE [initandlisten] ** WARNING: Using the XFS filesystem is strongly recommended with the WiredTiger storage engine
mongo_1 | 2017-12-03T03:56:04.330+0000 I STORAGE [initandlisten] ** See http://dochub.mongodb.org/core/prodnotes-filesystem
mongo_1 | 2017-12-03T03:56:04.330+0000 I STORAGE [initandlisten] wiredtiger_open config: create,cache_size=487M,session_max=20000,eviction=(threads_min=4,threads_max=4),config_base=false,statistics=(fast),log=(enabled=true,archive=true,path=journal,compressor=snappy),file_manager=(close_idle_time=100000),checkpoint=(wait=60,log_size=2GB),statistics_log=(wait=0),
mongo_1 | 2017-12-03T03:56:04.502+0000 I CONTROL [initandlisten]
mongo_1 | 2017-12-03T03:56:04.502+0000 I CONTROL [initandlisten] ** WARNING: Access control is not enabled for the database.
mongo_1 | 2017-12-03T03:56:04.502+0000 I CONTROL [initandlisten] ** Read and write access to data and configuration is unrestricted.
mongo_1 | 2017-12-03T03:56:04.502+0000 I CONTROL [initandlisten]
mongo_1 | 2017-12-03T03:56:04.504+0000 I FTDC [initandlisten] Initializing full-time diagnostic data capture with directory '/data/db/diagnostic.data'
mongo_1 | 2017-12-03T03:56:04.505+0000 I NETWORK [thread1] waiting for connections on port 27017
mongo_1 | 2017-12-03T03:56:05.006+0000 I FTDC [ftdc] Unclean full-time diagnostic data capture shutdown detected, found interim file, some metrics may have been lost. OK
web_1 | [I 03:56:06.193 NotebookApp] Serving notebooks from local directory: /
web_1 | [I 03:56:06.194 NotebookApp] 0 active kernels
web_1 | [I 03:56:06.194 NotebookApp] The Jupyter Notebook is running at:
web_1 | [I 03:56:06.194 NotebookApp] http://0.0.0.0:8888/?token=9d704b38ea935aa0d60f3600b7aca06a3106792da996cc61
web_1 | [I 03:56:06.194 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
web_1 | [C 03:56:06.194 NotebookApp]
web_1 |
web_1 | Copy/paste this URL into your browser when you connect for the first time,
web_1 | to login with a token:
web_1 | http://0.0.0.0:8888/?token=9d704b38ea935aa0d60f3600b7aca06a3106792da996cc61
Then you should be able to paste the URL you get into the a browser and replace 0.0.0.0 with 127.0.0.1
You'll also need the vislab_shared_data.tgz link found on the Tutorial Page of above website if you want to build the dockerfile yourself.
FROM python:2.7-stretch
RUN mkdir /root/work && cd /root/work && git clone https://github.com/sergeyk/vislab.git vislab.git && cd /
RUN apt-get update && apt-get install -y parallel libfftw3-dev libfftw3-doc autotools-dev g++ build-essential openmpi-bin openmpi-doc libopenmpi-dev fftw3 fftw3-dev python-dev libboost-dev libboost-locale-dev clang-3.8 openjdk-8-jdk libboost-program-options-dev zlib1g-dev automake gcc-6 libboost-all-dev && rm -rf /var/lib/apt/lists/*
RUN pip install Pillow nltk Cython pymongo joblib rq husl numpy mpi4py jupyter boost vowpalwabbit
RUN curl -O https://bitbucket.org/ogrisel/pyleargist/get/2.0.2.tar.gz && tar zxvf 2.0.2.tar.gz && mv ogrisel-pyleargist-96597f8b88f8 pyleargist-2.0.2 && cd /pyleargist-2.0.2 && sed -ri "s/import sys, os/import sys, os, numpy/" setup.py && sed -ri "s/'lear_gist',/'lear_gist', numpy.get_include()/" setup.py && python setup.py build
RUN python -m nltk.downloader punkt
RUN mkdir -p /root/work/vislab.git/data/shared
ADD vislab_shared_data.tgz /root/work/vislab.git/data/shared/
ADD config.json /root/work/vislab.git/vislab/
RUN curl -L https://github.com/krallin/tini/releases/download/v0.6.0/tini > tini && \
echo "d5ed732199c36a1189320e6c4859f0169e950692f451c03e7854243b95f4234b *tini" | sha256sum -c - && \
mv tini /usr/local/bin/tini && \
chmod +x /usr/local/bin/tini
# Install some dependencies.
RUN pip2 --no-cache-dir install ipykernel && \
\
python2 -m ipykernel.kernelspec && \
rm -rf /root/.cache
EXPOSE 8888
ENTRYPOINT ["tini", "--"]
CMD ["jupyter", "notebook", "--ip=0.0.0.0","--no-browser", "--allow-root"]
Content type
Image
Digest
Size
1.5 GB
Last updated
almost 9 years ago
docker pull akitchin/vislab