[SOLVED] Docker nrp installation


#1

Hello,
My goal is to make a local docker installation. I followed the link: https://neurorobotics.net/local_install.html
I downloaded the file docker installer and execute the command: ./nrp_installer.sh install latest

Unfortunately after the creation of containers, i don’t have access to the frontend. Please find below the command trace

Successfully downloaded nrp image.
Error response from daemon: network with name nrpnet already exists
nrp_models
nrp_experiments
nrp_user_data
Checking ports
Port 8080 is available.
Starting nrp container on port 8080 using image hbpneurorobotics/nrp:latest
3c26717bc488eb3c4b99a90cff5618d9bf780bbdb117e93b48b2e417bece3136
Setting up nrp container
sudo: effective uid is not 0, is /usr/bin/sudo on a file system with the ‘nosuid’ option set or an NFS file system without root privileges?
Cloning Models, this may take a while
fatal: not in a git directory
sudo: effective uid is not 0, is /usr/bin/sudo on a file system with the ‘nosuid’ option set or an NFS file system without root privileges?
sudo: effective uid is not 0, is /usr/bin/sudo on a file system with the ‘nosuid’ option set or an NFS file system without root privileges?
sudo: effective uid is not 0, is /usr/bin/sudo on a file system with the ‘nosuid’ option set or an NFS file system without root privileges?
Cloning Experiments, this may take a while
fatal: not in a git directory
sudo: effective uid is not 0, is /usr/bin/sudo on a file system with the ‘nosuid’ option set or an NFS file system without root privileges?
sudo: effective uid is not 0, is /usr/bin/sudo on a file system with the ‘nosuid’ option set or an NFS file system without root privileges?
sudo: effective uid is not 0, is /usr/bin/sudo on a file system with the ‘nosuid’ option set or an NFS file system without root privileges?
Setting rendering mode to CPU
Enabling CPU-only rendering
Done
Generating low resolution textures
CLEAN Low resolution textures
GENERATE Low resolution textures
GENERATE Low resolution of sky textures
bash: /home/bbpnrsoa/nrp/src/Models/create-symlinks.sh: No such file or directory
ERROR:pyxb.utils.utility:open /home/bbpnrsoa/nrp/src/Experiments/bibi_configuration.xsd
Traceback (most recent call last):
File “/home/bbpnrsoa/.opt/platform_venv/lib/python3.8/site-packages/pyxb/utils/utility.py”, line 760, in DataFromURI
stream = open(uri, ‘rb’)
FileNotFoundError: [Errno 2] No such file or directory: ‘/home/bbpnrsoa/nrp/src/Experiments/bibi_configuration.xsd’
Traceback (most recent call last):
File “/home/bbpnrsoa/.opt/platform_venv/bin/pyxbgen”, line 52, in
generator.resolveExternalSchema()
File “/home/bbpnrsoa/.opt/platform_venv/lib/python3.8/site-packages/pyxb/binding/generate.py”, line 2667, in resolveExternalSchema
schema = xs.schema.CreateFromLocation(absolute_schema_location=self.normalizeSchemaLocation(sl),
File “/home/bbpnrsoa/.opt/platform_venv/lib/python3.8/site-packages/pyxb/xmlschema/structures.py”, line 4873, in CreateFromLocation
return cls.CreateFromDocument(pyxb.utils.utility.DataFromURI(schema_location, archive_directory=uri_content_archive_directory), **kw)
File “/home/bbpnrsoa/.opt/platform_venv/lib/python3.8/site-packages/pyxb/utils/utility.py”, line 767, in DataFromURI
raise exc
File “/home/bbpnrsoa/.opt/platform_venv/lib/python3.8/site-packages/pyxb/utils/utility.py”, line 760, in DataFromURI
stream = open(uri, ‘rb’)
FileNotFoundError: [Errno 2] No such file or directory: ‘/home/bbpnrsoa/nrp/src/Experiments/bibi_configuration.xsd’
sudo: effective uid is not 0, is /usr/bin/sudo on a file system with the ‘nosuid’ option set or an NFS file system without root privileges?
sudo: effective uid is not 0, is /usr/bin/sudo on a file system with the ‘nosuid’ option set or an NFS file system without root privileges?
Finished setting up nrp container.
nrp container is now up and running.
Checking ports
Port 9000 is available.
Starting frontend container on port 9000 using image hbpneurorobotics/nrp_frontend:latest
41fbf79b8a52b3bf0f05e07cb1be3bb4cd37715b60b40373e0c924508c2447c6
Setting up frontend container
sudo: effective uid is not 0, is /usr/bin/sudo on a file system with the ‘nosuid’ option set or an NFS file system without root privileges?
Finished setting up frontend container.
frontend container is now up and running.
Removing old unused images
WARNING! This will remove:

  • all stopped containers
  • all networks not used by at least one container
  • all dangling images
  • all dangling build cache

Are you sure you want to continue? [y/N] n
Copying public template models to your storage
bash: /home/bbpnrsoa/nrp/src/Models/copy-to-storage.sh: No such file or directory

nrp_backend_proxy@3.2.0 update_template_models /home/bbpnrsoa/nrp/src/nrpBackendProxy
NODE_ENV=production node_modules/ts-node/dist/bin.js utils/updateFSTemplateModels.ts

(node:663) UnhandledPromiseRejectionWarning: Error: ENOENT: no such file or directory, scandir ‘/home/bbpnrsoa/.opt/nrpStorage/TEMPLATE_MODELS/brains’
at Object.readdirSync (fs.js:790:3)
at getTemplateModelsFolder (/home/bbpnrsoa/nrp/src/nrpBackendProxy/utils/updateFSTemplateModels.ts:14:13)
at map (/home/bbpnrsoa/nrp/src/nrpBackendProxy/utils/updateFSTemplateModels.ts:82:27)
at Array.map ()
at main (/home/bbpnrsoa/nrp/src/nrpBackendProxy/utils/updateFSTemplateModels.ts:81:40)
at Object. (/home/bbpnrsoa/nrp/src/nrpBackendProxy/utils/updateFSTemplateModels.ts:93:1)
at Module._compile (internal/modules/cjs/loader.js:778:30)
at Module.m._compile (/home/bbpnrsoa/nrp/src/nrpBackendProxy/node_modules/ts-node/src/index.ts:439:23)
at Module._extensions…js (internal/modules/cjs/loader.js:789:10)
at Object.require.extensions.(anonymous function) [as .ts] (/home/bbpnrsoa/nrp/src/nrpBackendProxy/node_modules/ts-node/src/index.ts:442:12)
(node:663) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 4)
(node:663) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
(node:663) UnhandledPromiseRejectionWarning: Error: ENOENT: no such file or directory, scandir ‘/home/bbpnrsoa/.opt/nrpStorage/TEMPLATE_MODELS/environments’
at Object.readdirSync (fs.js:790:3)
at getTemplateModelsFolder (/home/bbpnrsoa/nrp/src/nrpBackendProxy/utils/updateFSTemplateModels.ts:14:13)
at map (/home/bbpnrsoa/nrp/src/nrpBackendProxy/utils/updateFSTemplateModels.ts:82:27)
at Array.map ()
at main (/home/bbpnrsoa/nrp/src/nrpBackendProxy/utils/updateFSTemplateModels.ts:81:40)
at Object. (/home/bbpnrsoa/nrp/src/nrpBackendProxy/utils/updateFSTemplateModels.ts:93:1)
at Module._compile (internal/modules/cjs/loader.js:778:30)
at Module.m._compile (/home/bbpnrsoa/nrp/src/nrpBackendProxy/node_modules/ts-node/src/index.ts:439:23)
at Module._extensions…js (internal/modules/cjs/loader.js:789:10)
at Object.require.extensions.(anonymous function) [as .ts] (/home/bbpnrsoa/nrp/src/nrpBackendProxy/node_modules/ts-node/src/index.ts:442:12)
(node:663) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 5)
(node:663) UnhandledPromiseRejectionWarning: Error: ENOENT: no such file or directory, scandir ‘/home/bbpnrsoa/.opt/nrpStorage/TEMPLATE_MODELS/robots’
at Object.readdirSync (fs.js:790:3)
at getTemplateModelsFolder (/home/bbpnrsoa/nrp/src/nrpBackendProxy/utils/updateFSTemplateModels.ts:14:13)
at map (/home/bbpnrsoa/nrp/src/nrpBackendProxy/utils/updateFSTemplateModels.ts:82:27)
at Array.map ()
at main (/home/bbpnrsoa/nrp/src/nrpBackendProxy/utils/updateFSTemplateModels.ts:81:40)
at Object. (/home/bbpnrsoa/nrp/src/nrpBackendProxy/utils/updateFSTemplateModels.ts:93:1)
at Module._compile (internal/modules/cjs/loader.js:778:30)
at Module.m._compile (/home/bbpnrsoa/nrp/src/nrpBackendProxy/node_modules/ts-node/src/index.ts:439:23)
at Module._extensions…js (internal/modules/cjs/loader.js:789:10)
at Object.require.extensions.(anonymous function) [as .ts] (/home/bbpnrsoa/nrp/src/nrpBackendProxy/node_modules/ts-node/src/index.ts:442:12)
(node:663) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 6)

Congratulations! The NRP platform is now installed on your computer.

You can check everything works by going to http://localhost:9000/#/esv-private or if you used the --ip option: http://172.19.0.2:9000/#/esv-private by using your browser and signing in with the following credentials:

username : nrpuser
password : password

If you need any help please use our forum: https://forum.humanbrainproject.eu/c/neurorobotics

#2

You seem to have a prior docker instalation before (nrpnet was existing). And there’s this sudo not working in your case from the dockerfile.
I’d suggest you start on a clean base by uninstalling everything and start fresh.

    ./nrp_installer.sh uninstall

and answer yes to all questions (rally delete everything).
Then redo the installation.


#3

Thanks! but this didn’t help. I think the problem is docker images mainly the sudo usage. Could anyone share both docker files of nrp and frontend.
Best!


#4

I don’t think we distribute the dockerfiles, as that would lead to a lot of unmanageable forks of the docker images, but I forward your request to the dev team and ask if we could send them to you privately.


#5

It would be nice. Thanks again.


#6

Ok, dev team say no because the dockerfiles contain needed secrets (passwords) and forking the dockerfiles is not good for the software lifecycle.

Did you give it a try running the installer script as root, in case you are running linux? Could it be that you try to install on a volume mounted over the network (NFS, Windows share, …)? In case yes, please try on your local hard drive.

But in case you can’t figure out why all these sudo fail, please post the issue on the ticketing system support https://support.humanbrainproject.eu/, we’ll try and give you more personalized support.

Best


#7

I understand.
Thanks any way !
I succeed to create a docker image from source starting from ubuntu 20.4. For the first shoot it looks working. but there is an error :
Traceback (most recent call last):
File “/root/.opt/platform_venv/lib/python3.8/site-packages/flask/app.py”, line 2088, in call
return self.wsgi_app(environ, start_response)
File “/root/Documents/NRP/ExDBackend/hbp_nrp_backend/./hbp_nrp_backend/rest_server/RestSyncMiddleware.py”, line 60, in call
viewfunction, _ = self.app.url_map.bind(
File “/root/.opt/platform_venv/lib/python3.8/site-packages/werkzeug/routing.py”, line 2047, in match
raise NotFound()
werkzeug.exceptions.NotFound: 404 Not Found: The requested URL was not found on the server. If you entered the URL manually please check your spelling and try again.
Traceback (most recent call last):
File “/root/.opt/platform_venv/lib/python3.8/site-packages/flask/app.py”, line 2088, in call
return self.wsgi_app(environ, start_response)
File “/root/Documents/NRP/ExDBackend/hbp_nrp_backend/./hbp_nrp_backend/rest_server/RestSyncMiddleware.py”, line 62, in call
viewclass = self.app.view_functions[viewfunction].view_class
AttributeError: ‘function’ object has no attribute ‘view_class’


#8

This looks like an internal error in Flask (the backend REST server). Does it have any impact on your NRP? Does it prevent you from using it?

Also, did you try the 2 suggestions I gave in the previous post?


#9

I am not using my local hard drive and the docker image works without any further warning till now. I started the tutorial MyFirstExperiment and it works. I also saved my docker image (all in one frontend/backbend) in any case.
Best,


#10

Good news! Then I’m marking this issue as solved.