Skip to content

Instantly share code, notes, and snippets.

@vovimayhem
Created August 18, 2017 00:02
Show Gist options
  • Star 31 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save vovimayhem/6437c2f03b654e392ccf3e9903eba6af to your computer and use it in GitHub Desktop.
Save vovimayhem/6437c2f03b654e392ccf3e9903eba6af to your computer and use it in GitHub Desktop.
PhantomJS on Alpine (Docker)
# 1: Use node 6 as base:
FROM node:6-alpine
# 2: Download+Install PhantomJS, as the npm package 'phantomjs-prebuilt' won't work on alpine!
# See https://github.com/dustinblackman/phantomized
RUN set -ex \
&& apk add --no-cache --virtual .build-deps ca-certificates openssl \
&& wget -qO- "https://github.com/dustinblackman/phantomized/releases/download/2.1.1/dockerized-phantomjs.tar.gz" | tar xz -C / \
&& npm install -g phantomjs \
&& apk del .build-deps
@fleita9
Copy link

fleita9 commented Nov 29, 2023

i found it on https://archive.org/web/web.php and downloaded it.

@rcarcasson
Copy link

image

@CanadianCommander-Work
Copy link

@CanadianCommander-Work Have you been able to build phantomize or found another solution?

I actually did mange to build the tar. I sort of gave up building phantomized from source. When you look at what that repo actually does, it is actually just a script that runs dockerize... no not the golang version, the python version which is completely different. It basically just copies a bunch of binaries needed by phantomJS in to a tar ball. So I just started an Ubuntu18 container and followed the script steps by hand. This allowed me to generate the tar ball. Needless to say, I've put a Jira ticket in to remove our dependence on PhantomJS.

@Haianh9999
Copy link

Haianh9999 commented Nov 30, 2023

I've found a solution. This is the solution I use in my docker file.

ENV PHANTOMJS_VERSION=2.1.1
RUN apk update && apk add --no-cache fontconfig curl curl-dev &&
cd /tmp && curl -Ls "https://drive.google.com/uc?export=download&id=1Lm-QjJ3WmPv5X3xI_3eVF1CxfQ02wCl0" | tar xz &&
cp -R phantomjs/lib phantomjs/lib64 / &&
cp -R phantomjs/x86_64-linux-gnu /usr/lib &&
cp -R phantomjs/share /usr/share &&
cp -R phantomjs/fonts /etc &&
curl -k -Ls https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-${PHANTOMJS_VERSION}-linux-x86_64.tar.bz2 | tar -jxf - &&
cp phantomjs-2.1.1-linux-x86_64/bin/phantomjs /usr/local/bin/phantomjs

@topseom
Copy link

topseom commented Nov 30, 2023

I fork this repository and publish release again. 


you can use this link instead. 



https://github.com/topseom/phantomized/releases/download/2.1.1a/dockerized-phantomjs.tar.gz

@gercamjr
Copy link

@shashank34
Copy link

shashank34 commented Dec 1, 2023

cd /tmp && curl -Ls https://github.com/topseom/phantomized/releases/download/2.1.1a/dockerized-phantomjs.tar.gz | tar xz &&
cp -R lib lib64 / &&
cp -R usr/lib/x86_64-linux-gnu /usr/lib &&
cp -R usr/share /usr/share &&
cp -R etc/fonts /etc &&

this not working with above url https://github.com/topseom/phantomized/releases/download/2.1.1a/dockerized-phantomjs.tar.gz

error 

cp: can't stat 'usr/share': No such file or directory

also cp: can't stat 'lib': No such file or directory
cp: can't stat 'lib64': No such file or directory

@topseom
Copy link

topseom commented Dec 1, 2023

@shashank34 I see 



I create new tag 2.1.1 for full tar file use this link : 

https://github.com/topseom/phantomized/releases/download/2.1.1/dockerized-phantomjs.tar.gz



use tag 2.1.1a for slim version ( only lib,lib64,usr/lib ) use this link : 
https://github.com/topseom/phantomized/releases/download/2.1.1a/dockerized-phantomjs.tar.gz

@akshitkrnagpal
Copy link

Thank you @topseom.

@georgeben
Copy link

Please is this new link working?

@cassioscofield
Copy link

Its working, just tried it.

@kabaluyot
Copy link

Thanks @topseom .. Created a backup release in case shit happens again: https://github.com/Nuxify/phantomized/releases/tag/2.1.1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment