Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- FROM node:8.7.0-slim
- RUN apt-get update && \
- apt-get install -yq gconf-service libasound2 libatk1.0-0 libc6 libcairo2 libcups2 libdbus-1-3 \
- libexpat1 libfontconfig1 libgcc1 libgconf-2-4 libgdk-pixbuf2.0-0 libglib2.0-0 libgtk-3-0 libnspr4 \
- libpango-1.0-0 libpangocairo-1.0-0 libstdc++6 libx11-6 libx11-xcb1 libxcb1 libxcomposite1 \
- libxcursor1 libxdamage1 libxext6 libxfixes3 libxi6 libxrandr2 libxrender1 libxss1 libxtst6 \
- ca-certificates fonts-liberation libappindicator1 libnss3 lsb-release xdg-utils wget
- RUN npm i puppeteer micro qs
- RUN echo "\
- const { parse } = require('qs')\n\
- const { send } = require('micro')\n\
- const puppeteer = require('puppeteer')\n\
- module.exports = async (req, res) => {\n\
- async function timings (url) {\n\
- const browser = await puppeteer.launch({\n\
- // ommmmm\n\
- args: ['--disable-setuid-sandbox', '--no-sandbox']\n\
- })\n\
- const page = await browser.newPage()\n\
- await page.goto(url)\n\
- const t = await page.evaluate(() => {\n\
- return window.performance.timing\n\
- })\n\
- await browser.close()\n\
- return t\n\
- }\n\
- let url = req.url\n\
- const index = url.indexOf('?')\n\
- if (index !== -1) {\n\
- url = url.substr(index + 1)\n\
- }\n\
- const query = parse(url)\n\
- const t = await timings(query.url)\n\
- return t\n\
- }\n\
- " > index.js
- CMD ["node_modules/.bin/micro", "index.js"]
Add Comment
Please, Sign In to add comment