-
-
Notifications
You must be signed in to change notification settings - Fork 282
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Using headless Chrome Puppeteer with meteor and mup (Error) #981
Comments
Mup is able to customize the docker container: http://meteor-up.com/docs#customize-docker-image. You could use that to install the apt-get packages. |
Im trying to figure this out as well. I have successfully used buildInstructions to But I cant figure out if these commands are possible with meteor-up especially the last 4. Could you provide any assistance? |
Not sure if this is of any help to you but I ended up using |
Has anybody been able to successfully get Puppeteer working with mup? |
Hi @IDCOLL ,
|
Thank you for the quick reply. Also is the image compatible with Meteor 1.6+ docker: { |
You need to change the image. No addtional build instructions. Meteor 1.6 is compatible with Node 8, so it should work fine. |
Thanks @nabiltntn it worked. I had to make a small adjustment in my puppeteer code:
|
Yes i usally use : const browser = await puppeteer.launch({
args: [
'--no-sandbox',
'--disable-setuid-sandbox',
'--disable-webgl',
'--disable-accelerated-2d-canvas',
'--disable-gpu'
]
}); |
Hi @nabiltntn, thank you very much for your docker images with Chromium! I've used them to automate production of pre-rendered landing pages with in-line critical css. See my post in the Meteor forums: https://forums.meteor.com/t/pre-rendered-landing-pages-with-critical-css/50626 Using Meteor 1.8.1 |
@wildhart thanks for the reference |
Hi @nabiltntn, thank you for your the previous docker images that you've provided. I recently upgraded my Meteor project to 1.9. Can you help or explain/direct to me how I can create a custom docker image based on meteord with 12.14.0 node version. |
Unfortunately, I don't have anymore the docker file I have used to build the image but I tried to recreate it again for node 12 using image layers from Dockerhub Could you try to build the following Dockerfile FROM meteord:node-12.14.0-base
RUN apt-get update \
&& apt-get install -y \
libpangocairo-1.0-0 \
libx11-xcb1 \
libxcomposite1 \
libxcursor1 \
libxdamage1 \
libxi6 \
libxtst6 \
libnss3 \
libcups2 \
libxss1 \
libxrandr2 \
libgconf2-4 \
libasound2 \
libatk1.0-0 \
libgtk-3-0 \
wget \
--no-install-recommends \
&& rm -rf /var/lib/apt/lists/* \
&& rm -rf /src/*.deb
RUN wget -O /usr/local/bin/dumb-init https://github.com/Yelp/dumb-init/releases/download/v1.2.2/dumb-init_1.2.2_amd64
RUN chmod +x /usr/local/bin/dumb-init
ENTRYPOINT ["/bin/bash" "-c" "/usr/local/bin/dumb-init -- $METEORD_DIR/run_app.sh"]
Hope this help ! |
Thanks @nabiltntn for the feedback. I was able to get it working by cloning the https://github.com/abernix/meteord repo and made changes to the 'base' Dockerfile and built it. I can confirm that it works with my Meteor 1.9 project. I modified the Dockerfile to this: FROM debian:stretch
MAINTAINER Jesse Rosenberger
ENV METEORD_DIR /opt/meteord
COPY scripts $METEORD_DIR
ARG NODE_VERSION
ENV NODE_VERSION ${NODE_VERSION:-12.14.0}
ONBUILD ENV NODE_VERSION ${NODE_VERSION:-12.14.0}
RUN bash $METEORD_DIR/lib/install_base.sh
RUN bash $METEORD_DIR/lib/install_node.sh
RUN bash $METEORD_DIR/lib/install_phantomjs.sh
RUN bash $METEORD_DIR/lib/cleanup.sh
EXPOSE 80/tcp
RUN chmod +x $METEORD_DIR/run_app.sh
ENTRYPOINT exec $METEORD_DIR/run_app.sh
ENV NODE_VERSION=12.14.0
RUN apt-get update \
&& apt-get install -y \
libpangocairo-1.0-0 \
libx11-xcb1 \
libxcomposite1 \
libxcursor1 \
libxdamage1 \
libxi6 \
libxtst6 \
libnss3 \
libcups2 \
libxss1 \
libxrandr2 \
libgconf2-4 \
libasound2 \
libatk1.0-0 \
libgtk-3-0 \
wget \
--no-install-recommends \
&& rm -rf /var/lib/apt/lists/* \
&& rm -rf /src/*.deb
RUN wget -O /usr/local/bin/dumb-init https://github.com/Yelp/dumb-init/releases/download/v1.2.2/dumb-init_1.2.2_amd64
RUN chmod +x /usr/local/bin/dumb-init
ENTRYPOINT /usr/local/bin/dumb-init -- $METEORD_DIR/run_app.sh |
Awesome work @johannel00. Can you make this available on DockerHub? |
It's available here. Let me know if it works for you. |
Works perfectly, thanks! |
FYI, After upgrading to Meteor 2.3.2 with node 14 I got this working with just:
|
Mup version (
mup --version
):1.4.5
So I am running into an error with my deployed Meteor app:
I am 90% sure, that this is just due to some missing libs inside the
abernix/meteord:node-8-base
docker container? Any ideas on this?Do I have to make my own docker container with some more libs installed? (see here: puppeteer/puppeteer#404 -
apt-get install libpangocairo-1.0-0 libx11-xcb1 libxcomposite1 libxcursor1 libxdamage1 libxi6 libxtst6 libnss3 libcups2 libxss1 libxrandr2 libgconf2-4 libasound2 libatk1.0-0 libgtk-3-0
).Or is there some way around this?
The text was updated successfully, but these errors were encountered: