How to install awscli using pip in library/node Docker image : <p>I'm trying to install <code>awscli</code> using <code>pip</code> (as per Amazon's recommendations) in a custom Docker image that comes <code>FROM library/node:6.11.2</code>. Here's a repro:</p>

<pre><code>FROM library/node:6.11.2

RUN apt-get update &amp;&amp; \
    apt-get install -y \
        python \
        python-pip \
        python-setuptools \
        groff \
        less \
    &amp;&amp; pip --no-cache-dir install --upgrade awscli \
    &amp;&amp; apt-get clean

CMD ["/bin/bash"]
</code></pre>

<p>However, with the above I'm met with:</p>

<pre class="lang-none prettyprint-override"><code>no such option: --no-cache-dir
</code></pre>

<p>Presumably because I've got incorrect versions of Python and/or Pip?</p>

<p>I'm installing Python, Pip, and awscli in a similar way with <code>FROM maven:3.5.0-jdk-8</code> and there it works just fine. I'm unsure what the <em>relevant</em> differences between the two images are.</p>

<p>Removing said option from my Dockerfile doesn't do me much good either, because then I'm met with a big pile of different errors, an excerpt here:</p>

<pre class="lang-none prettyprint-override"><code>Installing collected packages: awscli, PyYAML, docutils, rsa, colorama, botocore, s3transfer, pyasn1, jmespath, python-dateutil, futures, six
  Running setup.py install for PyYAML
    checking if libyaml is compilable
### ABBREVIATED ###
    ext/_yaml.c:4:20: fatal error: Python.h: No such file or directory
     #include "Python.h"
                        ^
    compilation terminated.
    error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
### ABBREVIATED ###
</code></pre>

<p>Bottom line: how do you properly install <code>awscli</code> in <code>library/node:6.x</code> based images?</p>
