freqtrade / frequi

Freqtrade UI - Frontend for Freqtrade
https://github.com/freqtrade/freqtrade
GNU General Public License v3.0
586 stars 261 forks source link

Docker compose build fails #334

Closed gnuton closed 3 years ago

gnuton commented 3 years ago

Describe the bug I am unable to build the docker for frequi

To Reproduce Steps to reproduce the behavior:

  1. git clone git@github.com:freqtrade/frequi.git
  2. cd frequi
  3. docker-compose build
Cloning into 'frequi'...
remote: Enumerating objects: 5639, done.
remote: Counting objects: 100% (275/275), done.
remote: Compressing objects: 100% (208/208), done.
remote: Total 5639 (delta 182), reused 95 (delta 66), pack-reused 5364
Receiving objects: 100% (5639/5639), 2.92 MiB | 5.05 MiB/s, done.
Resolving deltas: 100% (3891/3891), done.
Building frequi
Step 1/14 : FROM node:16.0.0-alpine as ui-builder
16.0.0-alpine: Pulling from library/node
540db60ca938: Pull complete
7e50016d5624: Pull complete
c43b2bfd1b9f: Pull complete
97029819a1de: Pull complete
Digest: sha256:fabc6adac6dba5e150130e10acfc11a81447be93f4bf384076abdb63dbd34033
Status: Downloaded newer image for node:16.0.0-alpine
 ---> cf39b70292b8
Step 2/14 : RUN mkdir /app
 ---> Running in ec5a3c33dd69
Removing intermediate container ec5a3c33dd69
 ---> d2dce3bc2b02
Step 3/14 : WORKDIR /app
 ---> Running in 84f7f9f3d479
Removing intermediate container 84f7f9f3d479
 ---> a06c445b1600
Step 4/14 : COPY package.json /app/package.json
 ---> 31cedebc6896
Step 5/14 : COPY yarn.lock /app/yarn.lock
 ---> e2047a71de77
Step 6/14 : RUN yarn
 ---> Running in 0d6b40f6c8a9
yarn install v1.22.5
[1/4] Resolving packages...
[2/4] Fetching packages...
info fsevents@2.3.2: The platform "linux" is incompatible with this module.
info "fsevents@2.3.2" is an optional dependency and failed compatibility check. Excluding it from installation.
info fsevents@1.2.13: The platform "linux" is incompatible with this module.
info "fsevents@1.2.13" is an optional dependency and failed compatibility check. Excluding it from installation.
[3/4] Linking dependencies...
warning " > bootstrap@4.6.0" has unmet peer dependency "jquery@1.9.1 - 3".
warning "vue-grid-layout > @interactjs/actions@1.10.3" has unmet peer dependency "@interactjs/core@1.10.3".
warning "vue-grid-layout > @interactjs/actions@1.10.3" has unmet peer dependency "@interactjs/utils@1.10.3".
warning "vue-grid-layout > @interactjs/auto-start@1.10.3" has unmet peer dependency "@interactjs/core@1.10.3".
warning "vue-grid-layout > @interactjs/auto-start@1.10.3" has unmet peer dependency "@interactjs/utils@1.10.3".
warning "vue-grid-layout > @interactjs/modifiers@1.10.3" has unmet peer dependency "@interactjs/core@1.10.3".
warning "vue-grid-layout > @interactjs/modifiers@1.10.3" has unmet peer dependency "@interactjs/utils@1.10.3".
warning "vue-grid-layout > @interactjs/modifiers > @interactjs/snappers@1.10.3" has unmet peer dependency "@interactjs/utils@1.10.3".
warning " > @typescript-eslint/eslint-plugin@2.34.0" has incorrect peer dependency "@typescript-eslint/parser@^2.0.0".
warning " > @vue/eslint-config-airbnb@5.3.0" has unmet peer dependency "eslint-plugin-import@^2.18.2".
warning "@vue/eslint-config-airbnb > eslint-import-resolver-webpack@0.13.0" has unmet peer dependency "webpack@>=1.11.0".
warning " > @vue/eslint-config-typescript@5.1.0" has incorrect peer dependency "@typescript-eslint/parser@^2.7.0".
warning " > eslint-config-airbnb@18.2.1" has unmet peer dependency "eslint-plugin-import@^2.22.1".
warning " > eslint-config-airbnb@18.2.1" has unmet peer dependency "eslint-plugin-jsx-a11y@^6.4.1".
warning " > eslint-config-airbnb@18.2.1" has unmet peer dependency "eslint-plugin-react@^7.21.5".
warning " > eslint-config-airbnb@18.2.1" has unmet peer dependency "eslint-plugin-react-hooks@^4 || ^3 || ^2.3.0 || ^1.7.0".
warning " > sass-loader@10.1.1" has unmet peer dependency "webpack@^4.36.0 || ^5.0.0".
[4/4] Building fresh packages...
error /app/node_modules/deasync: Command failed.
Exit code: 1
Command: node ./build.js
Arguments: 
Directory: /app/node_modules/deasync
Output:
gyp info it worked if it ends with ok
gyp info using node-gyp@7.1.2
gyp info using node@16.0.0 | linux | x64
gyp ERR! find Python 
gyp ERR! find Python Python is not set from command line or npm configuration
gyp ERR! find Python Python is not set from environment variable PYTHON
gyp ERR! find Python checking if "python3" can be used
gyp ERR! find Python - "python3" is not in PATH or produced an error
gyp ERR! find Python checking if "python" can be used
gyp ERR! find Python - "python" is not in PATH or produced an error
gyp ERR! find Python checking if "python2" can be used
gyp ERR! find Python - "python2" is not in PATH or produced an error
gyp ERR! find Python 
gyp ERR! find Python **********************************************************
gyp ERR! find Python You need to install the latest version of Python.
gyp ERR! find Python Node-gyp should be able to find and use Python. If not,
gyp ERR! find Python you can try one of the following options:
gyp ERR! find Python - Use the switch --python="/path/to/pythonexecutable"
gyp ERR! find Python   (accepted by both node-gyp and npm)
gyp ERR! find Python - Set the environment variable PYTHON
gyp ERR! find Python - Set the npm configuration variable python:
gyp ERR! find Python   npm config set python "/path/to/pythonexecutable"
gyp ERR! find Python For more information consult the documentation at:
gyp ERR! find Python https://github.com/nodejs/node-gyp#installation
gyp ERR! find Python **********************************************************
gyp ERR! find Python 
gyp ERR! configure error 
gyp ERR! stack Error: Could not find any Python installation to use
gyp ERR! stack     at PythonFinder.fail (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/find-python.js:302:47)
gyp ERR! stack     at PythonFinder.runChecks (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/find-python.js:136:21)
gyp ERR! stack     at PythonFinder.<anonymous> (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/find-python.js:179:16)
gyp ERR! stack     at PythonFinder.execFileCallback (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/find-python.js:266:16)
gyp ERR! stack     at exithandler (node:child_process:333:5)
gyp ERR! stack     at ChildProcess.errorhandler (node:child_process:345:5)
gyp ERR! stack     at ChildProcess.emit (node:events:365:28)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (node:internal/child_process:288:12)
gyp ERR! stack     at onErrorNT (node:internal/child_process:480:16)
gyp ERR! stack     at processTicksAndRejections (node:internal/process/task_queues:83:21)
gyp ERR! System Linux 4.15.0-142-generic
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 /app/node_modules/deasync
gyp ERR! node -v v16.0.0
gyp ERR! node-gyp -v v7.1.2
gyp ERR! not ok 
Build failed

Expected behavior Docker compose build should exit sucesfully

Desktop (please complete the following information):

xmatthias commented 3 years ago

is that an arm (raspberry, mac M1) system?

gnuton commented 3 years ago

Architecture is x86. $ uname -a 4.15.0-142-generic #146-Ubuntu SMP Tue Apr 13 01:11:19 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

The solution seems to be reported here: https://github.com/abbr/deasync/issues/106

THE FIX: Updating deasync from 0.1.15 to 0.1.16 should fix this

gnuton commented 3 years ago

duplicate of https://github.com/freqtrade/frequi/issues/289

gnuton commented 3 years ago

Btw I tried the solution above it actually didn't work for me.. :(

xmatthias commented 3 years ago

Seems like deasync requires python (and C make tools) to build in certain circumestances (depending on the node version, i suspect).

closed in cd91841