Reaction Commerce Forums

Error: starting container process caused "exec: \"/usr/local/src/reaction-app/bin/start\": stat /usr/local/src/reaction-app/bin/start: no such file or directory": [SOLVED]


#1

I am using Windows Subsystem for Linux (because I was unable to get the “make” command to operate in Windows even after installing GNU make) and have navigated past several roadblocks to get to the current error, which results from both the “make” command or the “make init-reaction-next-starterkit” command:

Successfully built c444b2fcaee1
Successfully tagged reaction-next-starterkit_web:latest
Running post-build hook script for reaction-next-starterkit.
reaction-next-starterkit post-build script invoked.
Recreating reaction-next-starterkit_web_1 … error

ERROR: for reaction-next-starterkit_web_1 Cannot start service web: OCI runtime create failed: container_linux.go:344: starting container process caused “exec: “/usr/local/src/reaction-app/bin/start”: stat /usr/local/src/reaction-app/bin/start: no such file or directory”: unknown

ERROR: for web Cannot start service web: OCI runtime create failed: container_linux.go:344: starting container process caused “exec: “/usr/local/src/reaction-app/bin/start”: stat /usr/local/src/reaction-app/bin/start: no such file or directory”: unknown
ERROR: Encountered errors while bringing up the project.
Makefile:218: recipe for target ‘start-reaction-next-starterkit’ failed
make: *** [start-reaction-next-starterkit] Error 1
hammannja@LAPTOP-296V5C11:/c/Users/jerry/Development/reaction-platform$

This part of the script appears to be looking for a start script existing in a directory that does not exist (i.e., either the start script or the directory or both do not exist). I suspect it is the directory that does not exist. I cannot find any directory within the project that even remotely comes close to matching this mapping.

The only thing I can think of is the “/mnt” interface between the Linux file system and the Windows file system. However, if this was the case (as it was for a previous error I was able to correct), other things should likely have failed prior to this step.

I would appreciate any thoughts others might have. Thanks!


#2

And now, another error in the post-build hook script, this time for reaction rather than reaction-next-starterkit . . .
I suspect this error is happening before the error above, but I can’t be sure:

Successfully built fc9012e60926
Successfully tagged reaction_reaction:latest
Running post-build hook script for reaction.
reaction post-build script invoked.
Removing reaction_reaction_1
reaction_mongo_1 is up-to-date
Recreating 607b181c89d0_reaction_reaction_1 … error

ERROR: for 607b181c89d0_reaction_reaction_1 Cannot start service reaction: driver failed programming external connectivity on endpoint reaction_reaction_1 (85cb48bbf02ffa7ac5261b708c61eaa6ed6ebcc6c3146ff1d2d417f83e511838): Error starting userland proxy: mkdir /port/tcp:0.0.0.0:3000:tcp:172.22.0.3:3000: input/output error

ERROR: for reaction Cannot start service reaction: driver failed programming external connectivity on endpoint reaction_reaction_1 (85cb48bbf02ffa7ac5261b708c61eaa6ed6ebcc6c3146ff1d2d417f83e511838): Error starting userland proxy: mkdir /port/tcp:0.0.0.0:3000:tcp:172.22.0.3:3000: input/output error
ERROR: Encountered errors while bringing up the project.
Makefile:218: recipe for target ‘start-reaction’ failed
make: *** [start-reaction] Error 1
hammannja@LAPTOP-296V5C11:/c/Users/jerry/Development/reaction-platform$


#3

I solved the second of these two problems by manually Restarting Docker from the system tray (see https://github.com/docker/for-win/issues/1038), but now am again stopped at the first identified problem.


#4

Actually, I wouldn’t be so sure about running Docker within the Linux subsystem. Can you try and install make from Cygwin as recommended here?


#5

Installing Cygwin was relatively easy, but getting cygwin and github to clear my permissions took several hours. This appears to have been the final step to solving this first problem:

ssh-keyscan -H github.com >> ~/.ssh/known_hosts

Finally, after that effort, I end up with this error:

make Error response from daemon: network with name auth.reaction.localhost already exists Error response from daemon: network with name api.reaction.localhost already exists Error response from daemon: network with name streams.reaction.localhost already exists Running pre-build hook script for reaction-hydra. reaction-hydra/.reaction/project-hooks/pre-build: line 17: ‘\r’: command not found
reaction-hydra/.reaction/project-hooks/pre-build: line 21: '\r': command not found : ambiguous redirecttion/project-hooks/pre-build: line 22: 1 reaction-hydra/.reaction/project-hooks/pre-build: line 23: ‘\r’: command not found
: No such file or directoryoject-hooks/pre-build: line 24: /cygdrive/c/Users/jerry/Dev/reaction-platform/reaction-hydra
make: *** [Makefile:166: prebuild-reaction-hydra] Error 127
jerry@LAPTOP-296V5C11 /cygdrive/c/Users/jerry/Dev/reaction-platform

Interestingly, the make file was able to create and populate the “reaction-hydra” folder before it produced this error, so maybe this issue is with the “/cygdrive/c” portion of the pathname?

Now I am pre-start failure using Cygwin rather than post-start failure using Windows Subsystem for Linux. I need to sleep on it for now.


#6

I have same error. Do you solve it?


#7

Yes, I did. I finally got everything up and running successfully a couple of days ago (I had intervening projects). Here’s what I did:

  1. Start by following this guide to set up Docker within WSL: https://nickjanetakis.com/blog/setting-up-docker-for-windows-and-wsl-to-work-flawlessly

I completely removed all of my previous WSL work and started from scratch (you likely will not need to do this, it may be optional), then performed all of the steps in the guide. Also, don’t assume you are running Windows 10 18.03 or newer . . . check. It turned out I was not and therefore needed to do the steps for the older version of Windows. If you are running the older version of Windows, you will also want to make the mounting solution permanent as described in the guide. Otherwise, you will have to redo the mounting steps every time you reboot your machine.

  1. At this point, the script will “successfully” complete, but some of your containers will be so unstable that they cannot be accessed on localhost:3000 because they crash.

One thing the guide doesn’t discuss, but you can see from the screen shots, is that the guide is running an edge version of Docker rather than the latest stable version. Switch to the edge version. You can do this from the General tab of Docker Settings.

  1. I think the following step may be necessary, but am not completely sure at the moment. Within Docker Settings, go to the Advanced tab and change the Memory setting from 2GB to 6GB.

  2. If you ever get a Userland proxy error, restart your Windows Docker application.

  3. If the previous steps do not work for you, also make sure you are running the most recent release candidate of reaction-platform.

After doing all of these things, I finally got localhost:3000 and localhost:4000 to work.

Good luck!