install:dockerimage

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revisionBoth sides next revision
howto:dockerimage [2018/02/01 09:24] – [Use polymake in a docker image] gawrilowinstall:dockerimage [2019/01/26 11:02] – ↷ Page moved from howto:dockerimage to install:dockerimage oroehrig
Line 23: Line 23:
 reasons it can only be linked in products compiled for the same base image, currently being ubuntu:16.04.  Debugging perl code is possible, just add PERL5OPT=-d to the list of environment variables in the script configuration file.  Debugging C++ code while running in a container is tricky, it requires a second container with installed gdb or lldb and sharing all namespaces with the polymake container.  This seems too burdensome for the daily use. reasons it can only be linked in products compiled for the same base image, currently being ubuntu:16.04.  Debugging perl code is possible, just add PERL5OPT=-d to the list of environment variables in the script configuration file.  Debugging C++ code while running in a container is tricky, it requires a second container with installed gdb or lldb and sharing all namespaces with the polymake container.  This seems too burdensome for the daily use.
  
-The dockerized polymake can be used parallel to a locally installed polymake release or a system package.  It will share all generic settings like custom variables, preferences and interactive shell input history.  However, you should be aware of the data file compatibility issue.  Since the image closely tracks the further development of polymake, at some point it will start producing data files (XML) with a higher version number which the statically installed polymake might not be able to consume any longer.  Also, using brand new features not matured long enough by daily use can be adversary for the stability, despite of all the tests every nightly build has passed through.  You might want to pin down a version which is stable enough for you with a distinctive tag (using ''docker tag'') so that you will be able to resort to it in case of problems with newer images.  To run a specifically tagged version of the image, store the tag in the configuration file ''POLYMAKE_USER_DIR/container.config''.+The dockerized polymake can be used parallel to a locally installed polymake release or a system package.  It will share all generic settings like custom variables, preferences and interactive shell input history.  However, you should be aware of the data file compatibility issue.  Since the image closely tracks the further development of polymake, at some point it will start producing data files (XML) with a higher version number which the statically installed polymake might not be able to consume any longer.  Also, using brand new features not matured long enough by daily use can be adversary for the stability, despite of all the tests every nightly build has passed through.
  
 +Docker on Mac currently does not support shared memory exchange between the host system and containers.  Due to this limitation, Schlegel diagrams and graph visualization in jReality and JavaView are presented as static pictures, without possibility to drag vertices.  On Linux, 
 +however, the full functionality is available.
  
 +===== Using release image =====
 +
 +It is possible to stick to a stable release image instead of regular pulling nightly builds.  To this end, change the following variables in the configuration file ''POLYMAKE_USER_DIR/container.config''
 +  * ''image_name=polymake/release''
 +  * ''image_tag=RELEASE.NUMBER'' (e.g. 3.2)
 +The same way you can switch back to the nightly builds later:
 +  * ''image_name=polymake/nightly''
 +  * ''image_tag=latest''
 +
 +===== Note on JavaView use =====
 +
 +The ''thirdparty'' image contains an up-to-date JavaView release which will be used when you call the ''javaview'' function or set it as your default visualization preference.  However, you should register at www.javaview.de and obtain a valid license file on your own.  Before the first use of JavaView, please set the custom variable ''$JavaView::Viewer::license_file'' to the location of your license file.  Otherwise you will be reminded to do so both by polymake and JavaView.
 ===== Cleanup ===== ===== Cleanup =====
  
 Should you decide to stop using the dockerized polymake, run ''%%polymake-in-container.sh --uninstall%%'' .  It will remove the images and the resource copies from ~/.polymake.  The script won't remove itself, however, for the case you change your mind later. Should you decide to stop using the dockerized polymake, run ''%%polymake-in-container.sh --uninstall%%'' .  It will remove the images and the resource copies from ~/.polymake.  The script won't remove itself, however, for the case you change your mind later.
  • install/dockerimage.txt
  • Last modified: 2019/01/29 21:46
  • by 127.0.0.1