Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error: spawn docker ENOENT #424

Open
2 tasks done
clabnet opened this issue Feb 11, 2024 · 14 comments
Open
2 tasks done

Error: spawn docker ENOENT #424

clabnet opened this issue Feb 11, 2024 · 14 comments
Labels
bug Something isn't working

Comments

@clabnet
Copy link

clabnet commented Feb 11, 2024

⚠️ Please verify that this bug has NOT been reported before.

  • I checked and didn't find similar issue

🛡️ Security Policy

Description

Starting dockge I have a lot of errors

👟 Reproduction steps

Starting dockge

👀 Expected behavior

No errors log messages

😓 Actual Behavior

ERROR: Error: spawn docker ENOENT

Dockge Version

Version: 1.4.2 Frontend Version: 1.4.2

💻 Operating System and Arch

Windows 11

🌐 Browser

Versione 121.0.6167.161 (Build ufficiale) (a 64 bit)

🐋 Docker Version

Docker version 25.0.2, build 29cf629

🟩 NodeJS Version

v20.7.0

📝 Relevant log output

2024-02-11T11:15:42Z [GETSERVICESTATUSLIST] ERROR: Error: spawn docker ENOENT
2024-02-11 12:15:42     at __node_internal_captureLargerStackTrace (node:internal/errors:496:5)
2024-02-11 12:15:42     at __node_internal_errnoException (node:internal/errors:623:12)
2024-02-11 12:15:42     at ChildProcess._handle.onexit (node:internal/child_process:283:19)
2024-02-11 12:15:42     at onErrorNT (node:internal/child_process:476:16)
2024-02-11 12:15:42     at process.processTicksAndRejections (node:internal/process/task_queues:82:21) {
2024-02-11 12:15:42   errno: -2,
2024-02-11 12:15:42   code: 'ENOENT',
2024-02-11 12:15:42   syscall: 'spawn docker',
2024-02-11 12:15:42   path: 'docker',
2024-02-11 12:15:42   spawnargs: [ 'compose', 'ps', '--format', 'json' ]
@clabnet clabnet added the bug Something isn't working label Feb 11, 2024
@alichaudry
Copy link

It seems like this is the same issue as #361. I'm actually running into the same issue myself; poked around a bunch w/ permissions, etc. but couldn't really get it to work. exec'd into the dockge container and was able to run docker and docker compose commands just fine, so I'm not quite sure why the spawn docker command is throwing an exception here.

@pdone
Copy link

pdone commented Mar 1, 2024

I ran into the same problem. Before using dockge, there were other stacks on my host. Is this error caused by dockge not being able to manage existing stacks?

@Deepseek1
Copy link

Deepseek1 commented Mar 6, 2024

I get the same error if I change to the beta repo. Changing back to :1 doesn't fix it.

2024-03-06T12:00:50+01:00 [GETSERVICESTATUSLIST] ERROR: Error: spawn docker ENOENT
    at __node_internal_captureLargerStackTrace (node:internal/errors:496:5)
    at __node_internal_errnoException (node:internal/errors:623:12)
    at ChildProcess._handle.onexit (node:internal/child_process:283:19)
    at onErrorNT (node:internal/child_process:476:16)
    at process.processTicksAndRejections (node:internal/process/task_queues:82:21) {
  errno: -2,
  code: 'ENOENT',
  syscall: 'spawn docker',
  path: 'docker',
  spawnargs: [ 'compose', 'ps', '--format', 'json' ]

@Betamax21
Copy link

I'm getting the same error as pvalfar as well.

@wreidlinger
Copy link

wreidlinger commented Mar 17, 2024

Same here! In version 1.4.2

03/17/2024 09:34:35 PM 2024-03-17T20:34:35Z [GETSERVICESTATUSLIST] ERROR: Error: spawn docker ENOENT
03/17/2024 09:34:35 PM     at __node_internal_captureLargerStackTrace (node:internal/errors:496:5)
03/17/2024 09:34:35 PM     at __node_internal_errnoException (node:internal/errors:623:12)
03/17/2024 09:34:35 PM     at ChildProcess._handle.onexit (node:internal/child_process:283:19)
03/17/2024 09:34:35 PM     at onErrorNT (node:internal/child_process:476:16)
03/17/2024 09:34:35 PM     at process.processTicksAndRejections (node:internal/process/task_queues:82:21) {
03/17/2024 09:34:35 PM   errno: -2,
03/17/2024 09:34:35 PM   code: 'ENOENT',
03/17/2024 09:34:35 PM   syscall: 'spawn docker',
03/17/2024 09:34:35 PM  path: 'docker',
03/17/2024 09:34:35 PM   spawnargs: [ 'compose', 'ps', '--format', 'json' ]
03/17/2024 09:34:35 PM }

My system:

PRETTY_NAME="Ubuntu 22.04.4 LTS"
NAME="Ubuntu"
VERSION_ID="22.04"
VERSION="22.04.4 LTS (Jammy Jellyfish)"
VERSION_CODENAME=jammy
Linux host 5.15.0-100-generic #110-Ubuntu SMP Wed Feb 7 13:28:04 UTC 2024 aarch64 aarch64 aarch64 GNU/Linux

@explorer369
Copy link

version: "3.8"
services:
dockge:
image: louislam/dockge:1
restart: unless-stopped
user: "root:986"
ports:
# Host Port : Container Port
- 5001:5001
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./data:/app/data

  # If you want to use private registries, you need to share the auth file with Dockge:
  - /root/.docker/:/root/.docker

  # Stacks Directory
  # ⚠️ READ IT CAREFULLY. If you did it wrong, your data could end up writing into a WRONG PATH.
  # ⚠️ 1. FULL path only. No relative path (MUST)
  # ⚠️ 2. Left Stacks Path === Right Stacks Path (MUST)
  - /data/docker-service:/opt/stacks
environment:
  # Tell Dockge where is your stacks directory
  - DOCKGE_STACKS_DIR=/opt/stacks

After adding the above user configuration, I did not report any errors, but I am not sure if this is the cause

@bwirt
Copy link

bwirt commented Jun 26, 2024

For me this was a permissions problem. Made sure my docker compose assigns proper user:group and ensured stacks directory had appropriate write permissions for this user, as well as access to docker socket.

The error wasn't obvious, would be nice to have the app check this on boot.

@Dark-Existed
Copy link

Dark-Existed commented Jul 20, 2024

Hi everyone,
I found that might be caused by a mismatch between the name field in your docker-compose.yml and your folder name. To resolve this, make sure that the folder name and the name field are the same. You can do this by either editing the name field or changing the folder name to match.

@gvkhna
Copy link

gvkhna commented Jan 13, 2025

I'm encountering this error in the logs as well. Although I don't see any issues with functionality. I believe it's because it's not resolving the PATH for the binary. If I exec into the container through bash, the docker compose ps works, I would guess it's ENOENT because it's not finding the binary.

let res = await childProcessAsync.spawn("docker", [ "compose", "ps", "--format", "json" ], {

Interestingly I'm running docker compose ps and nothing comes up inside the container. But docker compose ls does show dockge running. Probably something I'll have to investigate on my end. All I did was install docker, colima and docker-compose with homebrew and set that up on a new mac.

@jedmund
Copy link

jedmund commented Jan 27, 2025

@gvkhna did you ever figure this out? I'm running the same stack as you (docker, colima, docker-compose via homebrew)

For thread context, I'm running into the same problem. Everything was working fine but Dockge hung after restarting a stack so I took the dockge container down, only for it to not come back up again.

The Dockge web server comes online and says my stacks are not managed by Dockge, despite not having changed the stack folder names or location. I also get this familiar error in the logs:

[GETSERVICESTATUSLIST] ERROR: Error: spawn docker ENOENT
    at __node_internal_captureLargerStackTrace (node:internal/errors:496:5)
    at __node_internal_errnoException (node:internal/errors:623:12)
    at ChildProcess._handle.onexit (node:internal/child_process:283:19)
    at onErrorNT (node:internal/child_process:476:16)
    at process.processTicksAndRejections (node:internal/process/task_queues:82:21) {
  errno: -2,
  code: 'ENOENT',
  syscall: 'spawn docker',
  path: 'docker',
  spawnargs: [ 'compose', 'ps', '--format', 'json' ]

@Magneticdud
Copy link

I have the same problem. Yesterday it was working, nothing was changed, today all the 30 stacks "are not managed by dockge" and in the log i have that ENOENT error

I tried to restore the dockge.db from a past backup, but it does not change the result

@bwirt
Copy link

bwirt commented Jan 30, 2025

I have the same problem. Yesterday it was working, nothing was changed, today all the 30 stacks "are not managed by dockge" and in the log i have that ENOENT error

I tried to restore the dockge.db from a past backup, but it does not change the result

Have you tried rebooting the machine? This worked for me in the past.

@gvkhna
Copy link

gvkhna commented Jan 30, 2025

I haven’t checked as it hasn’t caused any issue. But just based on the code I suspect it is not resolving the PATH correctly.

@Magneticdud
Copy link

I think for me it's caused by an unrelated issue with my ugly hack fuse mounted fs that caused the disappearance of all the compose.yml files (probably user error and not software bug)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests