2016-09-12 2 views
5

Ich versuche, die phantomjs ausführbare Datei in /usr/local/bin in einem Docker Container neben Knoten zu installieren. Ich denke, ich bin fast da, aber ich bin ziemlich neu für Docker und bin nicht versiert darin, Binärdateien zu installieren oder mit Linux zu arbeiten, also versuche ich herauszufinden, wo ich falsch liege.Phantomjs mit Knoten in Docker installieren

Dies ist meine Docker-Datei:

FROM  node:6.4-onbuild 

# Install phantomjs 
WORKDIR  ~ 
RUN   apt-get install libfreetype6 libfreetype6-dev \ 
      && apt-get install libfontconfig1 libfontconfig1-dev 
RUN   export PHANTOM_JS="phantomjs-2.1.1-linux-i686" \ 
      && wget https://bitbucket.org/ariya/phantomjs/downloads/$PHANTOM_JS.tar.bz2 \ 
      && tar xvjf $PHANTOM_JS.tar.bz2 \ 
      && mv $PHANTOM_JS /usr/local/share \ 
      && ln -sf /usr/local/share/$PHANTOM_JS/bin/phantomjs /usr/local/bin 

WORKDIR  /usr/src/app 
RUN   npm run build 
EXPOSE  8080 
CMD   ["node", "./bin/start.js"] 

Ich schlag auf den Behälter, und es ist auf jeden Fall genannt etwas phantomjs in /usr/local/bin aber ich gehe davon aus, dass ich die falsche Sache verbunden ausgeführt haben oder es ist ein ungültige ausführbare Datei. Ich bekomme einen Fehler von meiner Anwendung, der mir sagt, dass es keine phantomjs ausführbare Datei in /usr/local/bin gibt.

Kann mir jemand ein paar Hinweise geben? Gerne weitere Details zu geben, wenn Sie einen Kommentar schreiben.

Antwort

7

Es gibt eine existing image for this already on Docker hub die folgenden Dockerfile mit:

FROM debian:jessie 
MAINTAINER Werner Beroux <[email protected]> 
# 1. Install runtime dependencies 
# 2. Install official PhantomJS release 
# 3. Clean up 

RUN apt-get update \ 
    && apt-get install -y --no-install-recommends \ 
     ca-certificates \ 
     bzip2 \ 
     libfontconfig \ 
    && apt-get clean \ 
    && rm -rf /var/lib/apt/lists/* 

RUN apt-get update \ 
    && apt-get install -y --no-install-recommends \ 
     curl \ 
    && mkdir /tmp/phantomjs \ 
    && curl -L https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-2.1.1-linux-x86_64.tar.bz2 \ 
      | tar -xj --strip-components=1 -C /tmp/phantomjs \ 
    && cd /tmp/phantomjs \ 
    && mv bin/phantomjs /usr/local/bin \ 
    && cd \ 
    && apt-get purge --auto-remove -y \ 
     curl \ 
    && apt-get clean \ 
    && rm -rf /tmp/* /var/lib/apt/lists/* 

# Run as non-root user 
RUN useradd --system --uid 72379 -m --shell /usr/sbin/nologin phantomjs 

USER phantomjs 
EXPOSE 8910 
CMD ["/usr/local/bin/phantomjs"] 
+0

Ich versuchte zunächst, dass Docker Bild, nicht für mich zu arbeiten. Möglicherweise gab es ein Problem bei der Verwendung mit dem Docker-Image node-onbuild. –

+0

Schwierig zu helfen "hat nicht funktioniert" und "mit dem Node-onbuild-Image" ohne viel mehr Details. – BMitch

+0

Einverstanden, ich werde es erneut ausführen und meinen Post mit den Ergebnissen kommentieren/bearbeiten –

Verwandte Themen