From 7f933297bc0a3cffb2b65a53fc4fc866855dc875 Mon Sep 17 00:00:00 2001 From: "kai.t" Date: Tue, 27 Feb 2024 02:50:39 +0000 Subject: [PATCH] update docker --- .docker/puppeteer/Dockerfile | 19 ++++++++++++------- .docker/puppeteer/package.json | 5 ----- .docker/puppeteer/puppeteer.js | 21 +++++++++++++++++++-- .docker/puppeteer/puppeteer.sh | 4 ++++ 4 files changed, 35 insertions(+), 14 deletions(-) delete mode 100644 .docker/puppeteer/package.json create mode 100644 .docker/puppeteer/puppeteer.sh diff --git a/.docker/puppeteer/Dockerfile b/.docker/puppeteer/Dockerfile index 848a1b3..dffa38e 100644 --- a/.docker/puppeteer/Dockerfile +++ b/.docker/puppeteer/Dockerfile @@ -1,13 +1,18 @@ -FROM alpine:3.18 +FROM linuxserver/rdesktop:alpine-icewm +# FROM linuxserver/rdesktop:alpine-openbox +# FROM alpine:3.18 RUN apk update --no-cache RUN apk add --no-cache npm chromium -RUN mkdir /app -WORKDIR /app +RUN mkdir /puppeteer +WORKDIR /puppeteer -COPY ./puppeteer.js /app/puppeteer.js -COPY ./server.js /app/server.js -COPY ./package.json /app/package.json +COPY ./puppeteer.js /puppeteer/puppeteer.js +COPY ./server.js /puppeteer/server.js -CMD sh -c 'npm i && node server.js' +USER root +COPY ./puppeteer.sh /puppeteer.sh +RUN chmod +x /puppeteer.sh + +CMD [ "sh", "/puppeteer.sh" ] diff --git a/.docker/puppeteer/package.json b/.docker/puppeteer/package.json deleted file mode 100644 index c41eabf..0000000 --- a/.docker/puppeteer/package.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "dependencies": { - "puppeteer": "^0.11.0" - } -} diff --git a/.docker/puppeteer/puppeteer.js b/.docker/puppeteer/puppeteer.js index 7924d42..169886b 100644 --- a/.docker/puppeteer/puppeteer.js +++ b/.docker/puppeteer/puppeteer.js @@ -1,6 +1,6 @@ const puppeteer = require('puppeteer'); -module.exports = async ( +const launch = async ( config = { url: '', screenshotPath: '', executablePath: '', timeout: 1000 } ) => { @@ -11,9 +11,25 @@ module.exports = async ( timeout: 1000, }, config) + const profile = { + data: [ + // 'wormlazy199210', + 'wormlazy199211', + 'wormlazy199212', + ], + select: function() { + return this.data[Math.floor(Math.random() * this.data.length)] + } + } + const browser = await puppeteer.launch({ executablePath: config.executablePath, - args: ['--no-sandbox', '--headless', '--disable-gpu'] + args: [ + '--no-sandbox', + '--headless', + '--disable-gpu', + `--user-data-dir=/puppeteer/chrome-profiles/${profile.select()}` + ] }); const page = await browser.newPage(); @@ -37,3 +53,4 @@ module.exports = async ( await browser.close(); } }; +module.exports = launch diff --git a/.docker/puppeteer/puppeteer.sh b/.docker/puppeteer/puppeteer.sh new file mode 100644 index 0000000..ab91c7d --- /dev/null +++ b/.docker/puppeteer/puppeteer.sh @@ -0,0 +1,4 @@ +#!/bin/sh +sudo chown abc:abc -R /puppeteer/chrome-profiles +npm i puppeteer +node server.js