this project uses gulp library and node, when running npm build on local it is successful, but when creating docker image or deploying with cloud run, I get error saying ** mozjpeg library not found**, below is the error log with docker file and package.json
Error Log:
Step #0 - "Build": > gulp
Step #0 - "Build":
Step #0 - "Build": [09:27:07] Using gulpfile /usr/src/gulpfile.js
Step #0 - "Build": [09:27:07] Starting 'default'...
Step #0 - "Build": [09:27:07] Starting 'cleanAll'...
Step #0 - "Build": [09:27:07] Finished 'cleanAll' after 14 ms
Step #0 - "Build": [09:27:07] Starting 'htmlTask'...
Step #0 - "Build": [09:27:07] Starting 'cssTask'...
Step #0 - "Build": [09:27:07] Starting 'scssTask'...
Step #0 - "Build": [09:27:07] Starting 'jsTask'...
Step #0 - "Build": [09:27:07] Starting 'jsPluginsTask'...
Step #0 - "Build": [09:27:07] Starting 'imgTask'...
Step #0 - "Build": [09:27:07] Starting 'phpTask'...
**Step #0 - "Build": [09:27:08] gulp-imagemin: Couldn't load default plugin "gifsicle"
Step #0 - "Build": [09:27:08] gulp-imagemin: Couldn't load default plugin "optipng"
Step #0 - "Build": [09:27:09] gulp-imagemin: Couldn't load default plugin "gifsicle"
Step #0 - "Build": [09:27:09] gulp-imagemin: Couldn't load default plugin "optipng"
Step #0 - "Build": [09:27:09] gulp-imagemin: Couldn't load default plugin "gifsicle"
Step #0 - "Build": [09:27:09] gulp-imagemin: Couldn't load default plugin "optipng"
Step #0 - "Build": errno: -2
Step #0 - "Build": code: ENOENT
Step #0 - "Build": syscall: spawn /usr/src/node_modules/mozjpeg/vendor/cjpeg
Step #0 - "Build": path: /usr/src/node_modules/mozjpeg/vendor/cjpeg
Step #0 - "Build": spawnargs:
Step #0 - "Build": stdout:
Step #0 - "Build": stderr:
Step #0 - "Build": failed: true
Step #0 - "Build": signal: null
Step #0 - "Build": cmd: /usr/src/node_modules/mozjpeg/vendor/cjpeg
Step #0 - "Build": timedOut: false
Step #0 - "Build": killed: false
Step #0 - "Build": fileName: /usr/src/src/images/bg/1.jpg
Step #0 - "Build": domainEmitter: [object Object]
Step #0 - "Build": domainThrown: false**
Step #0 - "Build":
Step #0 - "Build": [0m[91m[09:27:10] 'default' errored after 2.25 s
Step #0 - "Build": The command '/bin/sh -c npm run build' returned a non-zero code: 1
Step #0 - "Build": [0m
package.jon
{
"main": "gulpfile.js",
"scripts": {
"start": "gulp",
"build": "gulp",
"prod": "gulp prod"
},
"devDependencies": {
"autoprefixer": "^10.4.14",
"browser-sync": "^2.29.1",
"cssnano": "^6.0.0",
"del": "6.1.1",
"gulp": "^4.0.2",
"gulp-concat": "^2.6.1",
"gulp-file-include": "^2.3.0",
"gulp-imagemin": "7.1.0",
"gulp-postcss": "^9.0.1",
"gulp-pretty-html": "^2.0.10",
"gulp-purgecss": "^5.0.0",
"gulp-sass": "^5.1.0",
"gulp-uglify": "^3.0.2",
"postcss": "^8.4.21",
"sass": "^1.60.0"
}
}
Dockerfile
FROM node:18-alpine
# Install Chromium
RUN apk add --no-cache chromium
ENV PUPPETEER_SKIP_DOWNLOAD=true
ENV PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium-browser
WORKDIR /usr/src
# Copy app source
COPY . .
RUN npm install
RUN npm run build
EXPOSE 3000
CMD [ "npm", "start" ]
i tried to create a docker image and also deploy with cloud run, i get the same error, gulp mozjpeg library not found
New contributor
abhishek samuel is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.