abi / screenshot-to-code

Drop in a screenshot and convert it to clean code (HTML/Tailwind/React/Vue)
https://screenshottocode.com
MIT License
63.83k stars 7.8k forks source link

Fix Puppeteer error with Docker #338

Open LUT-hgy opened 6 months ago

LUT-hgy commented 6 months ago

"I encountered an error while deploying a Docker container, and the error log is as follows. Does this app require Puppeteer?"

[root@localhost app]# docker-compose up -d --build WARN[0000] /root/app/docker-compose.yml: version is obsolete [+] Building 58.7s (13/20) docker:default => [frontend internal] load build definition from Dockerfile 0.0s => => transferring dockerfile: 524B 0.0s => [frontend internal] load .dockerignore 0.0s => => transferring context: 2B 0.0s => [backend internal] load build definition from Dockerfile 0.0s => => transferring dockerfile: 593B 0.0s => [backend internal] load .dockerignore 0.0s => => transferring context: 2B 0.0s => [frontend internal] load metadata for docker.io/library/node:20.9-bullseye-slim 16.0s => [backend internal] load metadata for docker.io/library/python:3.12-slim-bullseye 16.0s => [backend internal] load build context 0.0s => => transferring context: 281.05kB 0.0s => CANCELED [backend 1/7] FROM docker.io/library/python:3.12-slim-bullseye@sha256:6fa552fb879325884b0c1b6792d14ae9500d246c8b19cc27876d84c7c41117ff 42.7s => => resolve docker.io/library/python:3.12-slim-bullseye@sha256:6fa552fb879325884b0c1b6792d14ae9500d246c8b19cc27876d84c7c41117ff 0.0s => => sha256:2cc675879443a6a443c2dd27873f2562780f7a7bee6cae8d27db63313b6bb22c 6.69kB / 6.69kB 0.0s => => sha256:728328ac3bde9b85225b1f0d60f5c149f5635a191f5d8eaeeb00e095d36ef9fd 17.83MB / 31.43MB 42.7s => => sha256:1b1ca9b4dc3e3a61667ce56aa8973a0f79300a0d2bc1c677608fca5a20a6e71c 1.08MB / 1.08MB 8.7s => => sha256:ff314948cd748157816b418ffb8d5a834c58552d2f147552adeda9ffbaacf9c6 10.49MB / 11.22MB 42.7s => => sha256:6fa552fb879325884b0c1b6792d14ae9500d246c8b19cc27876d84c7c41117ff 1.65kB / 1.65kB 0.0s => => sha256:11ee4eb9e164c0ff4aeb4eef37163aedc358f57045f394f719b8c130190a440d 1.37kB / 1.37kB 0.0s => => sha256:775eb0fca1f366c27e2eda6e40d178cd366d34d92171c3ca2fd10ec0b06c010e 244B / 244B 9.6s => => sha256:f7cb43d7355fa62d470ac0cb430951fb68529f463c217aa6911419c20286b436 3.06MB / 3.06MB 22.8s => [frontend 1/5] FROM docker.io/library/node:20.9-bullseye-slim@sha256:330fa0342b6ad2cbdab30ac44195660af5a1f298cc499d8cbdf7496b02ea17d8 0.0s => [frontend internal] load build context 0.0s => => transferring context: 820.63kB 0.0s => CACHED [frontend 2/5] WORKDIR /app 0.0s => CACHED [frontend 3/5] COPY package.json yarn.lock /app/ 0.0s => ERROR [frontend 4/5] RUN yarn install 41.8s


[frontend 4/5] RUN yarn install:
0.313 yarn install v1.22.19
0.362 [1/5] Validating package.json...
0.364 [2/5] Resolving packages...
0.557 [3/5] Fetching packages...
36.11 warning vscode-languageclient@7.0.0: The engine "vscode" appears to be invalid. 36.12 [4/5] Linking dependencies... 36.13 warning "react-hot-toast > goober@2.1.13" has unmet peer dependency "csstype@^3.0.10". 36.13 warning " > thememirror@2.0.1" has unmet peer dependency "@codemirror/language@^6.0.0". 36.13 warning " > thememirror@2.0.1" has unmet peer dependency "@codemirror/state@^6.0.0". 36.13 warning " > thememirror@2.0.1" has unmet peer dependency "@codemirror/view@^6.0.0". 40.37 [5/5] Building fresh packages... 41.26 error /app/node_modules/puppeteer: Command failed. 41.26 Exit code: 1 41.26 Command: node install.mjs 41.26 Arguments: 41.26 Directory: /app/node_modules/puppeteer 41.26 Output: 41.26 Error: ERROR: Failed to set up Chrome v123.0.6312.122! Set "PUPPETEER_SKIP_DOWNLOAD" env variable to skip download. 41.26 at file:///app/node_modules/puppeteer/lib/esm/puppeteer/node/install.js:58:23 41.26 at process.processTicksAndRejections (node:internal/process/task_queues:95:5) 41.26 at async Promise.all (index 0) 41.26 at async downloadBrowser (file:///app/node_modules/puppeteer/lib/esm/puppeteer/node/install.js:90:9) { 41.26 [cause]: Error: read ECONNRESET 41.26 at TLSWrap.onStreamRead (node:internal/stream_base_commons:217:20) { 41.26 errno: -104, 41.26 code: 'ECONNRESET', 41.26 syscall: 'read' 41.26 } 41.26 } 41.26 info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.

failed to solve: process "/bin/sh -c yarn install" did not complete successfully: exit code: 1

abi commented 6 months ago

I recently added Puppeteer for doing end to end testing. It's not necessary for the app to just work. Can you remove Puppeteer from package.json and try again?

I need to fix the issue.

LUT-hgy commented 6 months ago

Thank you for your response. I removed the dependency on Puppeteer in the package.json file and added "ENV PUPPETEER_SKIP_DOWNLOAD=true" in the Dockerfile, which allowed the deployment to succeed.

abi commented 6 months ago

Awesome, I'll try to include "ENV PUPPETEER_SKIP_DOWNLOAD=true" in the Dockerfile to see if this fixes it for everyone.