Puncte:0

NodeJS nu poate găsi python: gyp ERR! găsiți Python

drapel kz

Încerc să rulez un script, dar nodejs nu poate găsi python dintr-un motiv oarecare. Am încercat să reinstalez python, reinstalez nodejs, reinstalez sistemul de operare, rulez (și repornesc după aceea): export PYTHON="$(care python)", export PYTHON="$(care python3)" (care python întoarce calea corectă), set de configurare npm python /usr/bin/python3.9, set de configurare npm python „/usr/bin/python3.9” și export PYTHONPATH="$(care python)" dar nimic nu a funcționat. Am un sistem de operare raspberry pe 64 de biți de pe un raspberry pi 4.Am instalat nodejs și python cu sudo apt install python/npm/nodejs. Context

Eroare

Scenariul:

#!/bin/bash

set -xe

client cd
rm -rf .next
fire
construirea firelor 
cd ..

bash ./bundle-client.sh
docker build --network=host -t clipface:latest .
rm client/docker-bundle.tgz

Am încercat să adaug --python="/usr/bin/python3.9" la rândurile 7 și 8, dar nu are nicio diferență. Nu îl pot adăuga la linia 12 deoarece docker nu are un comutator --python. Linia 12 este momentul în care apare eroarea

Dockerfile:

DIN nodul:alpin

# Configurarea aplicației

ADAUGĂ client/docker-bundle.tgz /

WORKDIR /app

RUN yarn --prod

# Configurare

ENV NODE_CONFIG_DIR=/config
Producție ENV NODE_ENV
PORT ENV 80
EXPUNEREA 80
VOLUM /clipuri
VOLUME /config

Începutul firului CMD -p ${PORT}

Noi erori după adăugare RUN apk add --update --no-cache python3 && ln -sf python3 /usr/bin/python la Dockerfile: https://pastebin.com/eKPZzPSk

dave_thompson_085 avatar
drapel jp
Eroarea dvs. se întâmplă în **docker build**. Acesta (și docker în general) nu folosește niciun envvar pe care l-ați setat în shell; folosește numai valorile setate _în Dockerfile sau imaginea (sursă)_. Iar docker rulează doar software-ul instalat sau montat _în container_, nu în gazdă -- și cel puțin `node:lts-alpine` (pe care îl folosesc) de fapt nu are python, ceea ce pare a fi o greșeală deoarece, după cum ați descoperit `yarn` îl folosește.
drapel kz
Cum o pot repara atunci? Am încercat să adaug „RUN apt-get update -y” și `RUN apt-get install -y python3` în fișierul docker, dar primesc erori (apt-get not found) indiferent unde l-am pus. Am editat postarea pentru a include fișierul docker dacă este necesar
drapel kz
ohh, a trebuit să folosesc `RUN apk add`. Cred că python ar putea funcționa, dar acum primesc erori diferite.Am actualizat întrebarea cu noile erori, dar nu sunt sigur dacă trebuie să o pun ca întrebare nouă.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.