<html>#2260: provide compiled ET code on tutorial machine
<table style='border-spacing: 1ex 0pt; '>
<tr><td style='text-align:right'> Reporter:</td><td>Roland Haas</td></tr>
<tr><td style='text-align:right'>   Status:</td><td>new</td></tr>
<tr><td style='text-align:right'>Milestone:</td><td></td></tr>
<tr><td style='text-align:right'>  Version:</td><td></td></tr>
<tr><td style='text-align:right'>     Type:</td><td>enhancement</td></tr>
<tr><td style='text-align:right'> Priority:</td><td>minor</td></tr>
<tr><td style='text-align:right'>Component:</td><td>EinsteinToolkit Virtual Machine</td></tr>
</table>

<p>Comment (by Roland Haas):</p>
<p>Well, I am admittedly not a big fan of docker on Desktop machines (servers are a different story with their own benefits and issues) admittedly so please treat with caution. So here’s my rant.</p>
<p>I can speak from my own experience on Linux: each distro will come with its own version of docker (since docker evolves faster than the slower moving Linux distros), with “docker” likely split into multiple packages (not necessarily called “docker”, see eg <a data-is-external-link="true" href="https://packages.debian.org/buster/docker" rel="nofollow">https://packages.debian.org/buster/docker</a> or <a data-is-external-link="true" href="https://packages.ubuntu.com/disco/docker" rel="nofollow">https://packages.ubuntu.com/disco/docker</a>). So you may have to provide docker commands for either multiple versions of docker or the oldest one you care about (likely CentOS or Debian) and accept that the docker docs on the web will be “all wrong” because they refer to a newer version.</p>
<p>You also need to have the proper kernel modules installed to get docker to use overlay file systems (this <em>should</em> happen automatically, but I know of at least one version of CentOS with an XFS file system where the overlay drivers fails on one has to resort the device-manager based storage driver).</p>
<p>On OSX and Windows Docker still  (since it needs a Linux kernel to interact with) relies on a virtual machine (just no longer virtualbox but something less heavyweight) so there is for example the issue of having to provision a large enough disk image (or fill up your laptop disk) and memory (unless the VM can balloon which it might, I have not used Docker on a Mac or Windows). It also means that files are ”hidden” in the docker container and not easily accessible from the outside (one needs docker cp or use the jupyter web-interface to download them from the container).</p>
<p>Docker also seems to be quite bad at actually cleaning up after itself and leaves docker containers / images around that are no longer used (docker ps 
<p>--<br/>
Ticket URL: <a href='https://bitbucket.org/einsteintoolkit/tickets/issues/2260/provide-compiled-et-code-on-tutorial'>https://bitbucket.org/einsteintoolkit/tickets/issues/2260/provide-compiled-et-code-on-tutorial</a></p>
</html>