Pushing to Diego: Cannot write: No space left on device
<p>Our application is one of the few left running on DEA. On DEA we were able to use a specific custom buildbpack:</p>

<p><a href="https://github.com/ihuston/python-conda-buildpack" rel="nofollow">https://github.com/ihuston/python-conda-buildpack</a></p>

<p>Now that we have to move on Diego runtime, we run out of space while pushing the app. I believe the disk space is only required during staging, because quite a few libraries are coming with the buildpack and have to be built (we need the whole scientific python stack, which is all included in the above buildpack).</p>

<p>The build script outputs everything fine, except that the app cannot start. The logs then show:</p>

<pre><code>2016-10-13T19:10:42.29+0200 [CELL/0]     ERR Copying into the container failed: stream-in: nstar: error streaming in: exit status 2. Output: tar: ./app/.conda/pkgs/cache/db552c1e.json: Wrote only 8704 of 10240 bytes
</code></pre>

<p>and further many files:</p>

<pre><code>2016-10-13T19:10:42.29+0200 [CELL/0]     ERR tar: ./app/.conda/pkgs/cache/9779607c273dc0786bd972b4cb308b58.png: Cannot write: No space left on device
</code></pre>

<p>and then</p>

<pre><code>2016-10-13T20:16:48.30+0200 [API/0]      OUT App instance exited with guid b2f4a1be-aeda-44fa-87bc-9871f432062d payload: {"instance"=&gt;"", "index"=&gt;0, "reason"=&gt;"CRASHED", "exit_description"=&gt;"Copying into the container failed", "crash_count"=&gt;14, "crash_timestamp"=&gt;1476382608296511944, "version"=&gt;"ca10412e-717a-413b-875a-535f8c3f7be4"}
</code></pre>

<p>When trying to add more disk quota (above 1G) there is an error:</p>

<pre><code>Server error, status code: 400, error code: 100001, message: The app is invalid: disk_quota too much disk requested (must be less than 1024)
</code></pre>

<p>Is there a way to give a bit more space? At least for the build process?</p>

<p>The conda installer from <a href="https://github.com/ihuston/python-conda-buildpack" rel="nofollow">https://github.com/ihuston/python-conda-buildpack</a> installs by default with the Intel MKL library. Now this is usually a good thing, but seemingly uses too much space and thus cannot be deployed. </p>

<p>I adapted the buildpack and added to the line</p>

<pre><code>        $CONDA_BIN/conda install --yes --quiet --file "$BUILD_DIR/conda_requirements.txt"
</code></pre>

<p>The flag <code>nomkl</code></p>

<pre><code>        $CONDA_BIN/conda install nomkl --yes --quiet --file "$BUILD_DIR/conda_requirements.txt"
</code></pre>

<p>As described in continuums blog post here:</p>

<p><a href="https://www.continuum.io/blog/developer-blog/anaconda-25-release-now-mkl-optimizations" rel="nofollow">https://www.continuum.io/blog/developer-blog/anaconda-25-release-now-mkl-optimizations</a></p>

<p>This will then use OpenBLAS instead and results in a much smaller droplet (175M instead of 330MB) and the deployment can successfully finish.</p>

python swisscomdev