XLNT / gnarly

πŸ€™ A blockchain ETL tool to make your life better. Now that’s fuckin’ gnarly.
https://xlnt.co
Apache License 2.0
119 stars 9 forks source link

yarn run docker-build fails #53

Closed d-xo closed 6 years ago

d-xo commented 6 years ago

Hi πŸ‘‹

Thanks so much for putting this together, it looks super helpful.

I'm trying to build a docker image using the instructions in the README and I'm running into an error on macOS.

I'm using node 8.11.4, yarn 1.9.4, and docker 18.06.0-ce.

Command output is below, let me know if I'm doing something wrong / you need more information.

❯ node --version
v8.11.4

❯ npx lerna bootstrap
lerna info version 3.0.3
lerna info bootstrap root only
yarn install v1.9.4
warning package-lock.json found. Your project contains lock files generated by tools other than Yarn. It is advised not to mix package managers in order to avoid resolution inconsistencies caused by unsynchronized lock files. To clear this warning, remove package-lock.json.
[1/4] πŸ”  Resolving packages...
[2/4] 🚚  Fetching packages...
[3/4] πŸ”—  Linking dependencies...
warning " > tslint@5.11.0" has unmet peer dependency "typescript@>=2.1.0 || >=2.1.0-dev || >=2.2.0-dev || >=2.3.0-dev || >=2.4.0-dev || >=2.5.0-dev || >=2.6.0-dev || >=2.7.0-dev || >=2.8.0-dev || >=2.9.0-dev".
warning "tslint > tsutils@2.29.0" has unmet peer dependency "typescript@>=2.1.0 || >=2.1.0-dev || >=2.2.0-dev || >=2.3.0-dev || >=2.4.0-dev || >=2.5.0-dev || >=2.6.0-dev || >=2.7.0-dev || >=2.8.0-dev || >=2.9.0-dev || >= 3.0.0-dev || >= 3.1.0-dev".
[4/4] πŸ“ƒ  Building fresh packages...
✨  Done in 10.74s.

❯ yarn build-ts
yarn run v1.9.4
$ lerna run build-ts
lerna info version 3.0.3
$ tsc
$ tsc
$ tsc
$ tsc
$ tsc
$ tsc
lerna success run Ran npm script 'build-ts' in 6 packages:
lerna success - @xlnt/gnarly-bin
lerna success - @xlnt/gnarly-core
lerna success - @xlnt/gnarly-reducer-block-meta
lerna success - @xlnt/gnarly-reducer-erc20
lerna success - @xlnt/gnarly-reducer-erc721
lerna success - @xlnt/gnarly-reducer-events
✨  Done in 18.73s.

❯ yarn pkg
yarn run v1.9.4
$ lerna run pkg --scope=@xlnt/gnarly-bin
lerna info version 3.0.3
lerna info filter [ '@xlnt/gnarly-bin' ]
$ pkg --targets node9-linux-x64,node9-macos-x64 --out-path ./pkg .
> pkg@4.3.1
> Warning Cannot include addon %1 into executable.
  The addon must be distributed with executable as %2.
  /Users/david/code/circles/gnarly/node_modules/sha3/build/Release/sha3.node
  path-to-executable/sha3.node
lerna success run Ran npm script 'pkg' in 1 package:
lerna success - @xlnt/gnarly-bin
✨  Done in 9.75s.

❯ yarn docker-build
yarn run v1.9.4
$ docker build -t shrugs/gnarly-test:demo .
Sending build context to Docker daemon  273.8MB
Step 1/9 : FROM ubuntu:18.04
 ---> 735f80812f90
Step 2/9 : WORKDIR /app
 ---> Using cache
 ---> 65ef499923e3
Step 3/9 : COPY ./packages/gnarly-bin/pkg/ .
 ---> 4bb56740195b
Step 4/9 : RUN chmod +x -R .
 ---> Running in acac0b3112f9
Removing intermediate container acac0b3112f9
 ---> 99781fd44aed
Step 5/9 : COPY ./node_modules/sha3/build/Release/sha3.node .
 ---> 14c201529478
Step 6/9 : COPY ./node_modules/scrypt/build/Release/scrypt.node .
COPY failed: stat /var/lib/docker/tmp/docker-builder036702492/node_modules/scrypt/build/Release/scrypt.node: no such file or directory
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
nionis commented 6 years ago

https://github.com/XLNT/gnarly/blob/ee037043bfb0c8c50b92b033ea4bd9e649bef478/Dockerfile#L9

removing line 9 to 11 fixed it for me

d-xo commented 6 years ago

@nionis Thanks!

Submitted https://github.com/XLNT/gnarly/pull/54