The Adventure Continues — “standard_init_linux.go:228: exec user process caused: no such file or directory”

Spoiler: I just switched to virtualized Ubuntu instead of using Docker Windows

Evan SooHoo
3 min readMay 30, 2023

First things first: This is me documenting my way through a personal project, not a troubleshooting guide. If you saw a similar error and found yourself here, let me try to say just enough so that you will not have wasted your click:

  • The most common cause is documented on StackOverflow. This is a person attempting to run a docker image on Windows 10. The solution is to open the file in Notepad++, then go to edit -> EOL conversion -> change from CRLF to LF
  • You can also add a “dos2unix” command in the Dockerfile

Someone wrote a Medium article about it. Like the StackOverflow post, his problem was with end-of-line characters. Considering the gitrepo and Dockerfile I am trying to run originated from Smack, who uses Ubuntu, this tracks.

I could be wrong, but I do not think it matters that the line numbers are different. The file itself changes fairly rapidly — on the current version, line 228 is simply a curly brace.

Source: https://github.com/opencontainers/runc/blob/main/libcontainer/standard_init_linux.go

What I Ended Up Doing

I did not get Docker Desktop to work without WSL — if I said that I did, then that was a mistake. This Windows laptop does have WSL.

I am using Git Bash because Git Bash is awesome, but I also tried Powershell. Things I tried include:

  • The Notepad++ idea
  • The dos2unix idea
  • Doing the same thing using Powershell
  • Doing the opposite conversions for end-of-line
  • Re-creating the entire repository by hand on my Windows environment, but this step involved copy-and-paste so maybe I made my own bed with that one

Technically it’s a Makefile that is failing, but the Makefile fails on a “docker run” invocation. That “docker run” command does not work on its own; I verified that this Windows laptop can execute “docker run” normally.

So, in spite of other experiences, and numerous people such as Amy writing that they have had positive experiences using Docker on Windows, I felt stuck.

So I virtualized it.

I don’t feel like adding a screenshot that includes actual IDs, but I believe I followed the official Ubuntu guide.

To anyone who does not already know this, running Linux in VirtualBox is free, and probably will just take a few minutes. I have done this before, but this time the shine kind of wore off. Yes, it’s neat to run a whole operating system in a separate window, but then I had to install Guest Additions and change the percentage to get it to nearly be full screen.

Still faster than everything I was trying with Docker on Windows, though.

I have Smack’s point of reference now. It should help with this GPT3.5 API work we’re trying to do.

Maybe next month, sometime, I will actually write code.

--

--

Evan SooHoo

A software engineer who writes about software engineering. Shocking, I know.