Я пытаюсь получить свой личный клубок и следовать указаниям .
Я запускаю команду
docker-compose -f docker-compose.yml -f docker-compose-tools.yml up
, но все не получается go ,
Starting one-command-tangle_iri_1 ... done
Starting one-command-tangle_tools_api_1 ... done
Starting one-command-tangle_tools_client_1 ... done
Starting one-command-tangle_compass_1 ... done
Attaching to one-command-tangle_iri_1, one-command-tangle_tools_client_1, one-command-tangle_tools_api_1, one-command-tangle_compass_1
iri_1 | Logging - property 'logging-level' set to: [INFO]
tools_api_1 | (node:1) [DEP0091] DeprecationWarning: crypto.DEFAULT_ENCODING is deprecated.
tools_api_1 | (node:1) [DEP0010] DeprecationWarning: crypto.createCredentials is deprecated. Use tls.createSecureContext instead.
tools_api_1 | (node:1) [DEP0011] DeprecationWarning: crypto.Credentials is deprecated. Use tls.SecureContext instead.
tools_api_1 | Failed running startup TypeError: Cannot read property 'length' of undefined
tools_api_1 | at /usr/src/app/api/dist/index.js:67:60
tools_api_1 | at step (/usr/src/app/api/dist/index.js:33:23)
tools_api_1 | at Object.next (/usr/src/app/api/dist/index.js:14:53)
tools_api_1 | at /usr/src/app/api/dist/index.js:8:71
tools_api_1 | at new Promise (<anonymous>)
tools_api_1 | at __awaiter (/usr/src/app/api/dist/index.js:4:12)
tools_api_1 | at /usr/src/app/api/dist/index.js:61:75
tools_api_1 | at Function.AppHelper.build (/usr/src/app/api/dist/utils/appHelper.js:130:17)
tools_api_1 | at Object.<anonymous> (/usr/src/app/api/dist/index.js:61:23)
tools_api_1 | at Module._compile (internal/modules/cjs/loader.js:688:30)
tools_api_1 | at Object.Module._extensions..js (internal/modules/cjs/loader.js:699:10)
tools_api_1 | at Module.load (internal/modules/cjs/loader.js:598:32)
tools_api_1 | at tryModuleLoad (internal/modules/cjs/loader.js:537:12)
tools_api_1 | at Function.Module._load (internal/modules/cjs/loader.js:529:3)
tools_api_1 | at Function.Module.runMain (internal/modules/cjs/loader.js:741:12)
tools_api_1 | at startup (internal/bootstrap/node.js:285:19)
one-command-tangle_tools_api_1 exited with code 0
Это часть сообщения, и другие 3 изображения идут хорошо.
Я прекращаю процесс, чтобы увидеть некоторые подробности о контейнере с ctrl c
и docker ps -a
.
clientguo@VM-16-12-ubuntu:~/iotalearn/one-command-tangle$ docker ps -a
IMAGE COMMAND CREATED STATUS PORTS NAMES
b459bc2e8312 one-command-tangle_tools_api "node ./dist/index" 50 minutes ago Exited (0) 16 minutes ago one-command-tangle_tools_api_1
0b9c2300e881 iotacafe/compass:coordinator-8306ac7 "/usr/bin/java -jar …" 25 hours ago Exited (143) 16 minutes ago one-command-tangle_compass_1
4408f3ba03b4 iotaledger/iri:latest "/entrypoint.sh --te…" 44 hours ago Exited (143) 16 minutes ago one-command-tangle_iri_1
651efbf2d5da one-command-tangle_tools_client "./node_modules/.bin…" 4 days ago Exited (137) 16 minutes ago one-command-tangle_tools_client_1
Предупреждение в верхних 3 строках показывает, что он использует некоторые API, устаревшие до моей версии Node.
устаревший API
, затем я проверяю Dockerfile, чтобы найти какая версия у меня Nodejs.
FROM node:10.13.0-alpine
RUN apk --no-cache add git python make g++
# Working DIR
WORKDIR /usr/src/app
# Set the env variables
#ARG CONFIG_ID
#ARG GITHUB_TOKEN
#RUN echo "CONFIG_ID=$CONFIG_ID"
#RUN echo "GITHUB_TOKEN=$GITHUB_TOKEN"
#ENV REACT_APP_CONFIG_ID=$CONFIG_ID
# We are npm installing from private repos so we need github token with access
# RUN git config --global url."https://${GITHUB_TOKEN}:@github.com/".insteadOf "https://github.com/"
RUN git clone https://github.com/iotaledger/tangle-utils-website.git .
WORKDIR /usr/src/app/api
# Running required steps to prepare the app prod build
RUN npm install
RUN npm run build
# Remove all the node_modules so the docker image doesn't exceeds max size
RUN apk del git python make g++
EXPOSE 4000:4000
CMD ["node", "./dist/index"]
Я думаю, может быть, смена изображений из dockerhub может сработать. Но я не знаю много о разнице node.js изображений, поэтому я понятия не имею о какие изображения мне нужно вытащить.
Я также ищу несколько ответов о Cannot read property 'length' of undefined
, и большинству ответов по этой проблеме необходимо отредактировать файлы *. js. Поэтому я попытался попасть в контейнер bash и найдите файл запуска, чтобы проверить, в чем проблема. Но я обнаружил, что не могу войти при выходе из one-command-tangle_tools_api.
Итак, есть идеи? Спасибо!