| |
| FROM ubuntu:latest |
|
|
| |
| RUN apt -y update && \ |
| apt -y install curl unzip nodejs npm xubuntu-desktop && \ |
| |
| curl -fsSL https://deno.land/x/install/install.sh | sh |
| |
|
|
| |
| ENV DENO_INSTALL="/root/.deno" |
| ENV PATH="$DENO_INSTALL/bin:$PATH" |
|
|
| |
| WORKDIR /app |
|
|
| |
| COPY main.ts ./ |
| COPY index.html ./ |
| |
| RUN ls -al /app |
|
|
| RUN deno --version |
| RUN npm init -y |
|
|
| |
| RUN npm install puppeteer |
|
|
| |
| ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true |
| ENV PUPPETEER_EXECUTABLE_PATH=/app/chrome/chrome-linux64/chrome |
|
|
| |
| RUN apt-get update && apt-get install -y wget unzip jq curl && \ |
| CHROME_VERSION=$(curl -s https://googlechromelabs.github.io/chrome-for-testing/last-known-good-versions.json | jq -r '.channels.Stable.version') && \ |
| wget -q "https://storage.googleapis.com/chrome-for-testing-public/${CHROME_VERSION}/linux64/chrome-linux64.zip" -O /tmp/chrome.zip && \ |
| mkdir -p /app/chrome && \ |
| unzip /tmp/chrome.zip -d /app/chrome && \ |
| rm /tmp/chrome.zip && \ |
| chmod +x /app/chrome/chrome-linux64/chrome |
|
|
| |
| RUN ls -al /app/chrome |
|
|
| |
| EXPOSE 7860 |
|
|
| |
| CMD ["deno", "run", "-A", "main.ts"] |