browserify / wzrd.in

browserify as a service.
http://wzrd.in
MIT License
637 stars 96 forks source link

docker build fails #202

Closed hexpunk closed 2 years ago

hexpunk commented 4 years ago

I followed the instructions on the site and in the README and doing a docker build fails.

$ git clone https://github.com/browserify/wzrd.in.git
Cloning into 'wzrd.in'...
remote: Enumerating objects: 1724, done.
remote: Total 1724 (delta 0), reused 0 (delta 0), pack-reused 1724
Receiving objects: 100% (1724/1724), 642.57 KiB | 3.51 MiB/s, done.
Resolving deltas: 100% (853/853), done.
$ cd wzrd.in/
$ docker build -t "wzrd.in" .
Sending build context to Docker daemon  1.031MB
Step 1/4 : FROM node:4-onbuild
4-onbuild: Pulling from library/node
3d77ce4481b1: Pull complete 
534514c83d69: Pull complete 
d562b1c3ac3f: Pull complete 
4b85e68dc01d: Pull complete 
f6a66c5de9db: Pull complete 
7a4e7d9a081d: Pull complete 
876b13112871: Pull complete 
95d109ce6b5d: Pull complete 
90049dbc08af: Pull complete 
Digest: sha256:8088f4ab0d3eb7bfe318434e644e65416e9416362a2a70b9622515209d83e515
Status: Downloaded newer image for node:4-onbuild
# Executing 5 build triggers
 ---> Running in 288b131e073c
Removing intermediate container 288b131e073c
 ---> Running in 53805ab00473
Removing intermediate container 53805ab00473
 ---> Running in adac3a0bc36e
npm WARN package.json browserify-cdn@0.4.0 No description
npm WARN package.json browserify-cdn@0.4.0 No README data
npm WARN package.json browserify-cdn@0.4.0 No bin file found at ./bin/browserify-cdn
npm WARN deprecated mkdirp@0.5.1: Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)
npm WARN engine supertest@3.4.2: wanted: {"node":">=6.0.0"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine level@5.0.1: wanted: {"node":">=8.6.0"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine terser@4.6.11: wanted: {"node":">=6.0.0"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine npm@6.14.4: wanted: {"node":"6 >=6.2.0 || 8 || >=9.3.0"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine tap@14.10.7: wanted: {"node":">=8"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine readable-stream@3.6.0: wanted: {"node":">= 6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine back@0.1.5: wanted: {"node":"0.10.x || 0.8.x"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine level-packager@5.1.1: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine leveldown@5.6.0: wanted: {"node":">=8.6.0"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine get-stream@4.1.0: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine socks-proxy-agent@4.0.2: wanted: {"node":">= 6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine abstract-leveldown@6.0.3: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine levelup@4.3.2: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine encoding-down@6.3.0: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine socks@2.3.3: wanted: {"node":">= 6.0.0","npm":">= 3.0.0"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine abstract-leveldown@6.2.3: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine level-errors@2.0.1: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine level-codec@9.0.1: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine level-supports@1.0.1: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine level-errors@2.0.1: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine level-iterator-stream@4.0.2: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine deferred-leveldown@5.3.0: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine readable-stream@3.6.0: wanted: {"node":">= 6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine abstract-leveldown@6.2.3: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine level-concat-iterator@2.0.1: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine smart-buffer@4.1.0: wanted: {"node":">= 6.0.0","npm":">= 3.0.0"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine level-supports@1.0.1: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine level-concat-iterator@2.0.1: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine level-concat-iterator@2.0.1: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine abstract-leveldown@6.2.3: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine level-concat-iterator@2.0.1: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine level-supports@1.0.1: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})

> leveldown@5.6.0 install /usr/src/app/node_modules/level/node_modules/leveldown
> node-gyp-build

make: Entering directory '/usr/src/app/node_modules/level/node_modules/leveldown/build'
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/builder.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/db_impl.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/db_iter.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/filename.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/dbformat.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/log_reader.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/log_writer.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/memtable.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/repair.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/table_cache.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/version_edit.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/version_set.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/write_batch.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/helpers/memenv/memenv.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/port/port_posix_sse.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/table/block.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/table/block_builder.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/table/filter_block.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/table/format.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/table/iterator.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/table/merger.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/table/table.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/table/table_builder.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/table/two_level_iterator.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/arena.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/bloom.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/cache.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/coding.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/comparator.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/crc32c.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/env.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/filter_policy.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/hash.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/logging.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/options.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/status.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/port/port_posix.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/env_posix.o
  AR(target) Release/obj.target/deps/leveldb/leveldb.a
  COPY Release/leveldb.a
  CXX(target) Release/obj.target/snappy/deps/snappy/snappy/snappy-sinksource.o
  CXX(target) Release/obj.target/snappy/deps/snappy/snappy/snappy-stubs-internal.o
  CXX(target) Release/obj.target/snappy/deps/snappy/snappy/snappy.o
  AR(target) Release/obj.target/deps/snappy/snappy.a
  COPY Release/snappy.a
  CXX(target) Release/obj.target/leveldown/binding.o
../binding.cc:4:22: fatal error: node_api.h: No such file or directory
 #include <node_api.h>
                      ^
compilation terminated.
make: *** [Release/obj.target/leveldown/binding.o] Error 1
leveldown.target.mk:107: recipe for target 'Release/obj.target/leveldown/binding.o' failed
make: Leaving directory '/usr/src/app/node_modules/level/node_modules/leveldown/build'
gyp ERR! build error 
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:276:23)
gyp ERR! stack     at emitTwo (events.js:87:13)
gyp ERR! stack     at ChildProcess.emit (events.js:172:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:211:12)
gyp ERR! System Linux 4.19.76-linuxkit
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /usr/src/app/node_modules/level/node_modules/leveldown
gyp ERR! node -v v4.9.1
gyp ERR! node-gyp -v v3.4.0
gyp ERR! not ok 
npm WARN engine readable-stream@3.6.0: wanted: {"node":">= 6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine coveralls@3.0.11: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine chokidar@3.3.1: wanted: {"node":">= 8.10.0"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine esm@3.2.25: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine jackspeak@1.4.0: wanted: {"node":">=8"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine which@2.0.2: wanted: {"node":">= 8"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine tap-mocha-reporter@5.0.1: wanted: {"node":">= 8"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine ts-node@8.8.2: wanted: {"node":">=6.0.0"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine nyc@14.1.1: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine istanbul-lib-coverage@2.0.5: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine is-binary-path@2.1.0: wanted: {"node":">=8"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine anymatch@3.1.1: wanted: {"node":">= 8"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine glob-parent@5.1.1: wanted: {"node":">= 6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine fsevents@2.1.2: wanted: {"node":"^8.16.0 || ^10.6.0 || >=11.0.0"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine readdirp@3.3.0: wanted: {"node":">=8.10.0"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine braces@3.0.2: wanted: {"node":">=8"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN optional dep failed, continuing fsevents@2.1.2
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
npm WARN engine request@2.88.2: wanted: {"node":">= 6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine istanbul-lib-coverage@2.0.5: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine find-cache-dir@2.1.0: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine cp-file@6.2.0: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine make-dir@2.1.0: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine istanbul-lib-report@2.0.8: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine find-up@3.0.0: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine istanbul-lib-hook@2.0.7: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine istanbul-lib-source-maps@3.0.6: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine caching-transform@3.0.2: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine test-exclude@5.2.3: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine istanbul-reports@2.2.7: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine istanbul-lib-instrument@3.3.0: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine binary-extensions@2.0.0: wanted: {"node":">=8"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine picomatch@2.2.2: wanted: {"node":">=8.6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine picomatch@2.2.2: wanted: {"node":">=8.6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine yn@3.1.1: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine fill-range@7.0.1: wanted: {"node":">=8"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine package-hash@3.0.0: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine pkg-dir@3.0.0: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine pify@4.0.1: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine read-pkg-up@4.0.0: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine camelcase@5.3.1: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine pify@4.0.1: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine locate-path@3.0.0: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine escape-string-regexp@2.0.0: wanted: {"node":">=8"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine tap-parser@10.0.1: wanted: {"node":">= 8"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine supports-color@6.1.0: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine har-validator@5.1.3: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine @babel/parser@7.9.4: wanted: {"node":">=6.0.0"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine to-regex-range@5.0.1: wanted: {"node":">=8.0"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine p-locate@3.0.0: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine punycode@2.1.1: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine minipass@3.1.1: wanted: {"node":">=8"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine punycode@2.1.1: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine yaml@1.8.3: wanted: {"node":">= 6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine p-limit@2.3.0: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine string-width@3.1.0: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine get-caller-file@2.0.5: wanted: {"node":"6.* || 8.* || >= 10.*"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine strip-ansi@5.2.0: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine wrap-ansi@5.1.0: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine p-try@2.2.0: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine strip-ansi@5.2.0: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine ansi-regex@4.1.0: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine ansi-regex@4.1.0: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm WARN engine punycode@2.1.1: wanted: {"node":">=6"} (current: {"node":"4.9.1","npm":"2.15.11"})
npm ERR! Linux 4.19.76-linuxkit
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install"
npm ERR! node v4.9.1
npm ERR! npm  v2.15.11
npm ERR! code ELIFECYCLE

npm ERR! leveldown@5.6.0 install: `node-gyp-build`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the leveldown@5.6.0 install script 'node-gyp-build'.
npm ERR! This is most likely a problem with the leveldown package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node-gyp-build
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs leveldown
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! 
npm ERR!     npm owner ls leveldown
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /usr/src/app/npm-debug.log
The command '/bin/sh -c npm install && npm cache clean --force' returned a non-zero code: 1
zumoshi commented 4 years ago

NodeJs 4 is over 5 years old. I managed to get it to work by editing the first line of the Dockerfile from:

FROM node:4-onbuild

to

FROM node:8-onbuild
gijswijs commented 4 years ago

@zumoshi That did it for me as well. I've forked this repo and published the build based on the latest commit on Docker Hub: https://hub.docker.com/r/neumannjs/wzrd.in.

You can find the fork here: https://github.com/neumannjs/wzrd.in