В настоящее время я изучаю Wolkenkit, следуя инструкции , чтобы создать приложение для чата .
После завершения написания кода я запустил sudo yarn wolkenkit start
. Это дало мне следующее сообщение об ошибке:
Waiting for https://localhost:3000/ to reply...
(node:11226) Warning: Setting the NODE_TLS_REJECT_UNAUTHORIZED environment variable to '0' makes TLS connections and HTTPS requests insecure by disabling certificate verification.
Error: Failed to get lowest processed position.
at EventSequencer.getLowestProcessedPosition (/wolkenkit/eventSequencer/EventSequencer.js:71:13)
at /wolkenkit/app.js:63:41
at process._tickCallback (internal/process/next_tick.js:68:7)
Application code caused runtime error.
✗ Failed to start the application.
Немного выше ошибки, о которой предупреждает команда:
▻ Application certificate is self-signed.
Буду признателен за любую помощь, как решить эту проблему и получить демо приложение для запуска на моей локальной машине.
Моя машина разработки работает под управлением Debian GNU / Linux 10 с
- Узел 13.8.0
- Пряжа 1.21.1
- Docker 18.09.1
- Wolkenkit 3.1.2
Из-за предупреждений, я подозреваю, это может быть связано с сертификатом X.509, используемым для TLS. Я создал его с помощью openssl
следующим образом:
$ openssl req -new -sha256 -nodes -out localhost.csr -newkey rsa:2048 -keyout localhost.key -config <(
cat <<-EOF
[req]
default_bits = 2048
prompt = no
default_md = sha256
req_extensions = req_ext
distinguished_name = dn
[ dn ]
C=US
ST=New York
L=Rochester
O=Somthing
OU=Something Else
emailAddress=test@example.com
CN = localhost
[ req_ext ]
subjectAltName = @alt_names
[ alt_names ]
DNS.1 = localhost
EOF
)
$ openssl x509 -req -days 365 -in localhost.csr -signkey localhost.key -sha256 -out localhost.crt
Затем я переместил localhost.crt и localhost.key в следующую структуру:
server/keys/localhost
├── certificate.pem
└── privateKey.pem
И настроил package.json
вот так:
{
"name": "chat",
"version": "0.0.0",
"wolkenkit": {
"application": "chat",
"runtime": {
"version": "3.1.0"
},
"environments": {
"default": {
"api": {
"address": {
"host": "localhost",
"port": 3000
},
"certificate": "/server/keys/localhost",
"allowAccessFrom": "*"
},
"fileStorage": {
"allowAccessFrom": "*"
},
"node": {
"environment": "development"
}
}
}
},
"dependencies": {
"wolkenkit": "^3.1.2"
}
}