Skip to content
This repository has been archived by the owner. It is now read-only.

Installation not working on Windows #115

Open
xScorpionx opened this issue Jul 14, 2019 · 13 comments
Open

Installation not working on Windows #115

xScorpionx opened this issue Jul 14, 2019 · 13 comments
Labels

Comments

@xScorpionx
Copy link

@xScorpionx xScorpionx commented Jul 14, 2019

Describe the bug
I'm using the project-template in a separate folder, because I do not create a template when I write botfront.

botfront up

Checking Docker images
Downloading Docker images...
Docker images ready.
Shutting down running project first...
Starting Botfront...
Creating network "botfront_botfront-network" with the default driver
Creating volume "botfront_botfront-db" with default driver
Creating botfront-actions ... done
Creating botfront-duckling ... done
Creating botfront-mongo ... done
Creating botfront-app ... done
Creating botfront-api ... done
Creating botfront-rasa ... done
ERROR: Something went wrong. Check the logs above for more information ☝️, or try inspecting the logs with botfront logs.

To Reproduce
Steps to reproduce the behavior:

  1. Botfront up

Expected behavior
Should be able to enter the botfront interface

Desktop (please complete the following information):

  • OS: Windows 10 pro
  • Firefox
  • Docker

Additional context
The botfront logs:

botfront-rasa | 2019-07-14 16:44:01 INFO botfront.utils - Fetching endpoints from server
botfront-rasa | 2019-07-14 16:44:01 DEBUG botfront.utils - Requesting endpoints from server http://botfront-api:8080/project/bf/endpoints...
botfront-rasa | 2019-07-14 16:44:01 WARNING botfront.utils - Tried to fetch rules from server, but couldn't reach server. We'll retry later... Error: Cannot connect to host botfront-api:8080 ssl:None [Name or service not known].
botfront-rasa | http://botfront-api:8080/project/bf/endpoints
botfront-rasa | Traceback (most recent call last):
botfront-rasa | File "/usr/local/lib/python3.6/site-packages/aiohttp/connector.py", line 955, in _create_direct_connection
botfront-rasa | traces=traces), loop=self._loop)
botfront-rasa | File "/usr/local/lib/python3.6/site-packages/aiohttp/connector.py", line 825, in _resolve_host
botfront-rasa | self._resolver.resolve(host, port, family=self._family)
botfront-rasa | File "/usr/local/lib/python3.6/site-packages/aiohttp/resolver.py", line 30, in resolve
botfront-rasa | host, port, type=socket.SOCK_STREAM, family=family)
botfront-rasa | File "uvloop/loop.pyx", line 1464, in getaddrinfo
botfront-rasa | socket.gaierror: [Errno -2] Name or service not known
botfront-rasa |
botfront-rasa | The above exception was the direct cause of the following exception:
botfront-rasa |
botfront-rasa | Traceback (most recent call last):
botfront-rasa | File "/usr/local/lib/python3.6/site-packages/botfront/utils.py", line 34, in load_from_remote
botfront-rasa | params=params,
botfront-rasa | File "/usr/local/lib/python3.6/site-packages/aiohttp/client.py", line 1005, in aenter
botfront-rasa | self._resp = await self._coro
botfront-rasa | File "/usr/local/lib/python3.6/site-packages/aiohttp/client.py", line 476, in _request
botfront-rasa | timeout=real_timeout
botfront-rasa | File "/usr/local/lib/python3.6/site-packages/aiohttp/connector.py", line 522, in connect
botfront-rasa | proto = await self._create_connection(req, traces, timeout)
botfront-rasa | File "/usr/local/lib/python3.6/site-packages/aiohttp/connector.py", line 854, in _create_connection
botfront-rasa | req, traces, timeout)
botfront-rasa | File "/usr/local/lib/python3.6/site-packages/aiohttp/connector.py", line 959, in _create_direct_connection
botfront-rasa | raise ClientConnectorError(req.connection_key, exc) from exc
botfront-rasa | aiohttp.client_exceptions.ClientConnectorError: Cannot connect to host botfront-api:8080 ssl:None [Name or service not known]
botfront-rasa |
botfront-rasa | During handling of the above exception, another exception occurred:
botfront-rasa |
botfront-rasa | Traceback (most recent call last):
botfront-rasa | File "/usr/local/lib/python3.6/site-packages/botfront/utils.py", line 75, in set_endpoints_credentials_args_from_remote
botfront-rasa | load_from_remote(EndpointConfig(url=url), "endpoints")
botfront-rasa | File "uvloop/loop.pyx", line 1451, in uvloop.loop.Loop.run_until_complete
botfront-rasa | File "/usr/local/lib/python3.6/site-packages/botfront/utils.py", line 61, in load_from_remote
botfront-rasa | raise requests.exceptions.InvalidURL(server.url)
botfront-rasa | requests.exceptions.InvalidURL: http://botfront-api:8080/project/bf/endpoints
botfront-rasa |
botfront-rasa | During handling of the above exception, another exception occurred:
botfront-rasa |
botfront-rasa | Traceback (most recent call last):
botfront-rasa | File "/usr/local/bin/rasa", line 10, in
botfront-rasa | sys.exit(main())
botfront-rasa | File "/usr/local/lib/python3.6/site-packages/rasa/main.py", line 76, in main
botfront-rasa | cmdline_arguments.func(cmdline_arguments)
botfront-rasa | File "/usr/local/lib/python3.6/site-packages/rasa/cli/run.py", line 79, in run
botfront-rasa | set_endpoints_credentials_args_from_remote(args)
botfront-rasa | File "/usr/local/lib/python3.6/site-packages/botfront/utils.py", line 79, in set_endpoints_credentials_args_from_remote
botfront-rasa | raise ValueError('No endpoints found for project {}.'.format(project_id))
botfront-rasa | ValueError: No endpoints found for project bf.
botfront-rasa exited with code 1
botfront-mongo | 2019-07-14T16:44:07.941+0000 E STORAGE [initandlisten] WiredTiger error (17) [1563122647:941053][1:0x7f097b811a80], connection: __posix_open_file, 715: /data/db/WiredTiger.wt: handle-open: open: File exists Raw: [1563122647:941053][1:0x7f097b811a80], connection: __posix_open_file, 715: /data/db/WiredTiger.wt: handle-open: open: File exists
botfront-mongo | 2019-07-14T16:44:07.945+0000 I STORAGE [initandlisten] WiredTiger message unexpected file WiredTiger.wt found, renamed to WiredTiger.wt.108
botfront-mongo | 2019-07-14T16:44:07.947+0000 E STORAGE [initandlisten] WiredTiger error (1) [1563122647:947793][1:0x7f097b811a80], connection: __posix_open_file, 715: /data/db/WiredTiger.wt: handle-open: open: Operation not permitted Raw: [1563122647:947793][1:0x7f097b811a80], connection: __posix_open_file, 715: /data/db/WiredTiger.wt: handle-open: open: Operation not permitted
botfront-mongo | 2019-07-14T16:44:08.005+0000 E STORAGE [initandlisten] WiredTiger error (17) [1563122648:5250][1:0x7f097b811a80], connection: __posix_open_file, 715: /data/db/WiredTiger.wt: handle-open: open: File exists Raw: [1563122648:5250][1:0x7f097b811a80], connection: __posix_open_file, 715: /data/db/WiredTiger.wt: handle-open: open: File exists
botfront-mongo | 2019-07-14T16:44:08.009+0000 I STORAGE [initandlisten] WiredTiger message unexpected file WiredTiger.wt found, renamed to WiredTiger.wt.109
botfront-mongo | 2019-07-14T16:44:08.013+0000 E STORAGE [initandlisten] WiredTiger error (1) [1563122648:13071][1:0x7f097b811a80], connection: __posix_open_file, 715: /data/db/WiredTiger.wt: handle-open: open: Operation not permitted Raw: [1563122648:13071][1:0x7f097b811a80], connection: __posix_open_file, 715: /data/db/WiredTiger.wt: handle-open: open: Operation not permitted
botfront-mongo | 2019-07-14T16:44:08.064+0000 E STORAGE [initandlisten] WiredTiger error (17) [1563122648:64662][1:0x7f097b811a80], connection: __posix_open_file, 715: /data/db/WiredTiger.wt: handle-open: open: File exists Raw: [1563122648:64662][1:0x7f097b811a80], connection: __posix_open_file, 715: /data/db/WiredTiger.wt: handle-open: open: File exists
botfront-mongo | 2019-07-14T16:44:08.068+0000 I STORAGE [initandlisten] WiredTiger message unexpected file WiredTiger.wt found, renamed to WiredTiger.wt.110
botfront-mongo | 2019-07-14T16:44:08.072+0000 E STORAGE [initandlisten] WiredTiger error (1) [1563122648:71991][1:0x7f097b811a80], connection: __posix_open_file, 715: /data/db/WiredTiger.wt: handle-open: open: Operation not permitted Raw: [1563122648:71991][1:0x7f097b811a80], connection: __posix_open_file, 715: /data/db/WiredTiger.wt: handle-open: open: Operation not permitted
botfront-mongo | 2019-07-14T16:44:08.074+0000 W STORAGE [initandlisten] Failed to start up WiredTiger under any compatibility version.
botfront-mongo | 2019-07-14T16:44:08.074+0000 F STORAGE [initandlisten] Reason: 1: Operation not permitted
botfront-mongo | 2019-07-14T16:44:08.074+0000 F - [initandlisten] Fatal Assertion 28595 at src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine.cpp 704
botfront-mongo | 2019-07-14T16:44:08.074+0000 F - [initandlisten]
botfront-mongo |
botfront-mongo | ***aborting after fassert() failure
botfront-mongo |
botfront-mongo |
botfront-mongo exited with code 14
botfront-api |
botfront-api | > botfront-api@0.15.1 start /app
botfront-api | > node app.js
botfront-api |
botfront-api | the server/replset/mongos/db options are deprecated, all their options are supported at the top level of the options object [poolSize,ssl,sslValidate,sslCA,sslCert,sslKey,sslPass,sslCRL,autoReconnect,noDelay,keepAlive,keepAliveInitialDelay,connectTimeoutMS,family,socketTimeoutMS,reconnectTries,reconnectInterval,ha,haInterval,replicaSet,secondaryAcceptableLatencyMS,acceptableLatencyMS,connectWithNoPrimary,authSource,w,wtimeout,j,forceServerObjectId,serializeFunctions,ignoreUndefined,raw,bufferMaxEntries,readPreference,pkFactory,promiseLibrary,readConcern,maxStalenessSeconds,loggerLevel,logger,promoteValues,promoteBuffers,promoteLongs,domainsEnabled,checkServerIdentity,validateOptions,appname,auth,user,password,authMechanism,compression,fsync,readPreferenceTags,numberOfRetries,auto_reconnect,minSize,monitorCommands,retryWrites,useNewUrlParser]
botfront-api | (node:16) DeprecationWarning: current URL string parser is deprecated, and will be removed in a future version. To use the new parser, pass option { useNewUrlParser: true } to MongoClient.connect.
botfront-api | Server running at http://127.0.0.1:8080
botfront-api | /app/app.js:28
botfront-api | throw new Error(unable to connect to database: ${config.mongo.host});
botfront-api | ^
botfront-api |
botfront-api | Error: unable to connect to database: mongodb://mongo:27017/bf
botfront-api | at NativeConnection.mongoose.connection.on (/app/app.js:28:19)
botfront-api | at emitOne (events.js:116:13)
botfront-api | at NativeConnection.emit (events.js:211:7)
botfront-api | at process.nextTick (/app/node_modules/mongoose/lib/connection.js:581:37)
botfront-api | at _combinedTickCallback (internal/process/next_tick.js:132:7)
botfront-api | at process._tickCallback (internal/process/next_tick.js:181:9)
botfront-api | npm ERR! code ELIFECYCLE
botfront-api | npm ERR! errno 1
botfront-api | npm ERR! botfront-api@0.15.1 start: node app.js
botfront-api | npm ERR! Exit status 1
botfront-api | npm ERR!
botfront-api | npm ERR! Failed at the botfront-api@0.15.1 start script.
botfront-api | npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
botfront-api |
botfront-api | npm ERR! A complete log of this run can be found in:
botfront-api | npm ERR! /root/.npm/_logs/2019-07-14T16_44_37_355Z-debug.log
botfront-api exited with code 1

@znat
Copy link
Contributor

@znat znat commented Jul 14, 2019

Loading

@xScorpionx
Copy link
Author

@xScorpionx xScorpionx commented Jul 14, 2019

No, because when I try to create it, this appears to me.

botfront init
? The project will be created in a subdirectory. How do you want to name it? chat_bot
{ [Error: ENOENT: no such file or directory, access 'D:\C:\Users\personone\AppData\Roaming\npm\node_modules\botfront\project-template']
errno: -4058,
code: 'ENOENT',
syscall: 'access',
path:
'D:\C:\Users\personone\AppData\Roaming\npm\node_modules\botfront\project-template' }
{ Error: ENOENT: no such file or directory, open 'D:\Chatbot\chat_bot.botfront\docker-compose.yml'
at Object.openSync (fs.js:443:3)
at Proxy.readFileSync (fs.js:343:35)
at getComposeFile (C:\Users\personone\AppData\Roaming\npm\node_modules\botfront\src\utils.js:154:29)
at getServices (C:\Users\personone\AppData\Roaming\npm\node_modules\botfront\src\utils.js:158:22)
at getMissingImgs (C:\Users\personone\AppData\Roaming\npm\node_modules\botfront\src\utils.js:168:12)
at process._tickCallback (internal/process/next_tick.js:68:7)
errno: -4058,
syscall: 'open',
code: 'ENOENT',
path: 'D:\Chatbot\chat_bot\.botfront\docker-compose.yml' }

Loading

@xScorpionx xScorpionx closed this Jul 14, 2019
@xScorpionx xScorpionx reopened this Jul 14, 2019
@znat znat added the bug label Jul 14, 2019
@znat
Copy link
Contributor

@znat znat commented Jul 14, 2019

Looks like a bug on Windows

Loading

@znat znat changed the title ERROR: Something went wrong. Installation not working on Windows Jul 15, 2019
@znat
Copy link
Contributor

@znat znat commented Jul 15, 2019

For some reason, D:\ seems to be prepended to the path:

D:\C:\Users\personone\AppData\Roaming\npm\node_modules\botfront\project-template'

Any idea why would that happen?

Loading

@akasha1618
Copy link

@akasha1618 akasha1618 commented Jul 16, 2019

@znat how can I solve this?

Loading

@znat
Copy link
Contributor

@znat znat commented Jul 16, 2019

Theres a PR open (#121) , the fix will be released soon

Loading

@xScorpionx
Copy link
Author

@xScorpionx xScorpionx commented Jul 20, 2019

For some reason, D:\ seems to be prepended to the path:

D:\C:\Users\personone\AppData\Roaming\npm\node_modules\botfront\project-template'

Any idea why would that happen?

Because my project is on local disk D:

Loading

@znat
Copy link
Contributor

@znat znat commented Jul 20, 2019

@xScorpionx should be fixed with latest release. Can you please confirm?

Loading

@xScorpionx
Copy link
Author

@xScorpionx xScorpionx commented Jul 20, 2019

The error continues:

Welcome to Botfront! │
│ version: 0.15.1

? What do you want to do? Create a new project
? The project will be created in a subdirectory. How do you want to name it? botfront

{ [Error: ENOENT: no such file or directory, access 'D:\C:\Users\personone\AppData\Roaming\npm\node_modules\botfront\project-template']
errno: -4058,
code: 'ENOENT',
syscall: 'access',
path:
'D:\C:\Users\personone\AppData\Roaming\npm\node_modules\botfront\project-template' }
{ Error: ENOENT: no such file or directory, open 'D:\Chatbot\botfront.botfront\docker-compose.yml'
at Object.openSync (fs.js:443:3)
at Proxy.readFileSync (fs.js:343:35)
at getComposeFile (C:\Users\personone\AppData\Roaming\npm\node_modules\botfront\src\utils.js:154:29)
at getServices (C:\Users\personone\AppData\Roaming\npm\node_modules\botfront\src\utils.js:158:22)
at getMissingImgs (C:\Users\personone\AppData\Roaming\npm\node_modules\botfront

\src\utils.js:168:12)
at process._tickCallback (internal/process/next_tick.js:68:7)
errno: -4058,
syscall: 'open',
code: 'ENOENT',
path: 'D:\Chatbot\botfront\.botfront\docker-compose.yml' }

Loading

@akasha1618
Copy link

@akasha1618 akasha1618 commented Jul 24, 2019

Hello ! The error stil continue...I've uninstall botfront and installed again to get the latest version and the error is still here..I got an warning message "unsupported platform" when I've installed the package:

https://ibb.co/px3030F

Loading

@ChristianStornowski
Copy link

@ChristianStornowski ChristianStornowski commented Aug 23, 2019

@akasha1618 this "unsupported platform" warning is totally fine. Because you can't use fsevents under Windows neither Linux and this has nothing todo with the database connection problem.

I also have this database connection with current Docker for Windows and botfront.
I used npm install -g botfront and created a new project with the assistant.

Loading

@LatteDev
Copy link

@LatteDev LatteDev commented Jul 27, 2020

@znat @xScorpionx

botfront-mongo | 2019-07-14T16:44:07.941+0000 E STORAGE [initandlisten] WiredTiger error (17) [1563122647:941053][1:0x7f097b811a80], connection: __posix_open_file, 715: /data/db/WiredTiger.wt: handle-open: open: File exists Raw: [1563122647:941053][1:0x7f097b811a80], connection: __posix_open_file, 715: /data/db/WiredTiger.wt: handle-open: open: File exists

I have the same problem when I use docker4windows.
And I think the problem is in the mongonDB container.

■causes:
Firstly,look at docker-compose.yml in borfront project folder,
you will find,

volumes:
  - ./botfront-db:/data/db

this means mongodb service expose its folder /data/db from container to host(windows)

Secondly, in docker4windows,when you expose one folder from container to host(Windows),
all the files in this folder will have 755 permission in the container,
And you CAN NOT change the permission,even you use root in the container.
this means same program(like mongodb?) cannot write data into these files.
※SO,You will see the [WiredTiger error] on this comment top

■Solution:
Solution1:
Delete the expose from mongodb service in .botfront/docker-compose-template.yml

volumes:

  • ./botfront-db:/data/db

But when you down botfront, all the data store in mongodb will go away.

Solution2: ※need add code to botfront
1)Delete the expose from mongodb service in .botfront/docker-compose-template.yml
2)Add a expose folder to store db dump.(there is no problem with the write permission on folder)
3)when botfront down,maybe we can make botfront to get the db dump,and copy to the folder in step2.
4)when botfront up,make botfront to READ dump file ,and restore db data
https://stackoverflow.com/questions/42912755/how-to-create-a-db-for-mongodb-container-on-start-up

Loading

@bilginkilic
Copy link

@bilginkilic bilginkilic commented Oct 18, 2020

When i say botfron init it asks me to select which program I say google chrome and then i get this error.

url:file:///XXX/AppData/Roaming/npm/node_modules/botfront/bin/botfront

#!/usr/bin/env node

require = require('esm')(module /*, options*/);
require('../src/cli');

why???

ps:
windows 10
docker is running

Loading

MatthieuJnon added a commit that referenced this issue Feb 9, 2021
nlu editor test fix: use a correct permission, nlu:w is replaced by nlu-data:w
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
6 participants