Skip to content

No docker inside the image? #1

Description

@zhum

Describe the bug

I try to run miratalk and miratalkadmin in docker containers. It seems like miratalkadmin has no docker command inside the image and cannot manage my miratalk instance:

[6/27/2026, 21:05:05:745] [InstanceController] Status check failed {                                                                                                                                                                   
  error: Error: Command failed: docker inspect mirotalk --format "{{json .State}}"                                                                                                                                                     
  /bin/sh: 1: docker: not found                                                                                                                                                                                                        
                                                                                                                                                                                                                                       
      at genericNodeError (node:internal/errors:983:15)                                                                                                                                                                                
      at wrappedFn (node:internal/errors:537:14)                                                                                                                                                                                       
      at checkExecSyncError (node:child_process:916:11)                                                                                                                                                                                
      at execSync (node:child_process:988:15)                                                                                                                                                                                          
      at runCommand (/app/backend/utils/commandUtils.js:87:28)                                                                                                                                                                         
      at Object.getStatus (/app/backend/services/instanceService.js:22:26)                                                                                                                                                             
      at getStatus (/app/backend/controllers/instanceController.js:27:46)                                                                                                                                                              
      at Layer.handleRequest (/app/node_modules/router/lib/layer.js:152:17)                                                                                                                                                            
      at next (/app/node_modules/router/lib/route.js:157:13)                                                                                                                                                                           
      at Route.dispatch (/app/node_modules/router/lib/route.js:117:3) {                                                                                                                                                                
    status: 127,                                                                                                                                                                                                                       
    signal: null,                                                                                                                                                                                                                      
    output: [                                                                                                                                                                                                                          
      null,                                                                                                        
      <Buffer >,              
      <Buffer 2f 62 69 6e 2f 73 68 3a 20 31 3a 20 64 6f 63 6b 65 72 3a 20 6e 6f 74 20 66 6f 75 6e 64 0a>           
    ],                                                                                                             
    pid: 58,                                                                                                                                                                                                                           
    stdout: <Buffer >,                                                                                                                                                                                                                 
    stderr: <Buffer 2f 62 69 6e 2f 73 68 3a 20 31 3a 20 64 6f 63 6b 65 72 3a 20 6e 6f 74 20 66 6f 75 6e 64 0a>                                                                                                       

I've passed docker socket inside the container, so it should be able to connect to the instance, as docker package is installed inside.

Steps to reproduce

  1. clone miratalkadmin
  2. cp docker-compose.template.yml docker-compose.yml
  3. edit docker-compose.yml, add /var/run/docker.sock:/var/run/docker.sock volume
  4. cp .env.template .env
  5. edit .env, set NODE_ENV=production, ADMIN_USERNAME, ADMIN_PASSWORD, APP_MANAGE_MODE=docker, APP_NAME=mirotalk,mirotalkadmin
  6. docker compose up
  7. open https://localhost:9999/admin
  8. go to status page
  9. see error.

Expected behavior

Correct status page.

Device

  • Android
  • iPhone
  • Linux
  • Mac
  • Windows

Browser

  • Chrome (or Chromium based)
  • Firefox
  • Safari
  • Android browser
  • iOS browser
  • Other desktop browser

Relevant log output

[6/27/2026, 21:05:05:745] [InstanceController] Status check failed {                                                                                                                                                                   
  error: Error: Command failed: docker inspect mirotalk --format "{{json .State}}"                                                                                                                                                     
  /bin/sh: 1: docker: not found                                                                                                                                                                                                        
                                                                                                                                                                                                                                       
      at genericNodeError (node:internal/errors:983:15)                                                                                                                                                                                
      at wrappedFn (node:internal/errors:537:14)                                                                                                                                                                                       
      at checkExecSyncError (node:child_process:916:11)                                                                                                                                                                                
      at execSync (node:child_process:988:15)                                                                                                                                                                                          
      at runCommand (/app/backend/utils/commandUtils.js:87:28)                                                                                                                                                                         
      at Object.getStatus (/app/backend/services/instanceService.js:22:26)                                                                                                                                                             
      at getStatus (/app/backend/controllers/instanceController.js:27:46)                                                                                                                                                              
      at Layer.handleRequest (/app/node_modules/router/lib/layer.js:152:17)                                                                                                                                                            
      at next (/app/node_modules/router/lib/route.js:157:13)                                                                                                                                                                           
      at Route.dispatch (/app/node_modules/router/lib/route.js:117:3) {                                                                                                                                                                
    status: 127,                                                                                                                                                                                                                       
    signal: null,                                                                                                                                                                                                                      
    output: [                                                                                                                                                                                                                          
      null,                                                                                                        
      <Buffer >,              
      <Buffer 2f 62 69 6e 2f 73 68 3a 20 31 3a 20 64 6f 63 6b 65 72 3a 20 6e 6f 74 20 66 6f 75 6e 64 0a>           
    ],                                                                                                             
    pid: 58,                                                                                                                                                                                                                           
    stdout: <Buffer >,                                                                                                                                                                                                                 
    stderr: <Buffer 2f 62 69 6e 2f 73 68 3a 20 31 3a 20 64 6f 63 6b 65 72 3a 20 6e 6f 74 20 66 6f 75 6e 64 0a>

Reproducibility

Yes

Additional context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions