sourcecode

도커가 Windows에서 실행 중인지 확인하는 방법은 무엇입니까?

codebag 2023. 9. 10. 12:13
반응형

도커가 Windows에서 실행 중인지 확인하는 방법은 무엇입니까?

명령줄(cmd 또는 powershell)을 통해 도커가 Windows에서 실행되고 있는지 확인하는 방법을 알고 싶습니다.

이에 대한 해결책을 알려주는 게시물을 몇 개 찾았지만 리눅스 환경을 위한 게시물입니다.

도커가 실행되고 있는지 여부를 확인하는 방법

도커 데몬이 실행 중인지 확인하는 방법은?

윈도우 시스템에 대한 답을 얻을 수 없었습니다.

Powershell 또는 cmd에서 다음 명령 중 하나를 실행해 보십시오. 도커가 설치되어 있으면 오류 없는 응답이 나타납니다.

docker --version

오어

docker-compose --version

오어

docker ps

두 가지 방법을 제공합니다.

  1. docker version

    이 방법은 두 가지 모두에 효과가 있습니다.cmd&powershell, 만일의 경우에는cmd, 당신은 사용해야 합니다.echo %errorlevel%결과를 확인하기 위해서 입니다.

    한다면docker daemon실행 중이며 다음과 같습니다.

    PS C:\> docker version
    Client: Docker Engine - Community
    Version:           18.09.2
    API version:       1.39
    Go version:        go1.10.8
    Git commit:        6247962
    Built:             Sun Feb 10 04:12:31 2019
    OS/Arch:           windows/amd64
    Experimental:      false
    
    Server: Docker Engine - Community
     Engine:
      Version:          18.09.2
      API version:      1.39 (minimum version 1.12)
      Go version:       go1.10.6
      Git commit:       6247962
      Built:            Sun Feb 10 04:13:06 2019
      OS/Arch:          linux/amd64
      Experimental:     false
    PS C:\> echo $?
    True
    

    한다면docker daemon실행 중이 아닙니다. 다음이 될 것입니다.

    PS C:\> docker version
    Client: Docker Engine - Community
    Version:           18.09.2
    API version:       1.39
    Go version:        go1.10.8
    Git commit:        6247962
    Built:             Sun Feb 10 04:12:31 2019
    OS/Arch:           windows/amd64
    Experimental:      false
    Error response from daemon: An invalid argument was supplied.
    PS C:\> echo $?
    False
    
  2. Get-Process:

    이 방법은 단지 사용자에게 효과가 있습니다.powershell.

    한다면docker daemon실행 중이며 다음이 될 것입니다.

    PS C:\> Get-Process 'com.docker.proxy'
    Handles  NPM(K)    PM(K)      WS(K)     CPU(s)     Id  SI ProcessName
    -------  ------    -----      -----     ------     --  -- -----------
        205      10    11416      18860       0.13  12620   2 com.docker.proxy
    PS C:\> echo $?
    True
    

    한다면docker daemon실행 중이 아닙니다. 다음이 될 것입니다.

    PS C:\> Get-Process 'com.docker.proxy'
    Get-Process : Cannot find a process with the name "com.docker.proxy". Verify the process name and call the cmdlet
    again.
    At line:1 char:1
    + Get-Process 'com.docker.proxy'
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        + CategoryInfo          : ObjectNotFound: (com.docker.proxy:String) [Get-Process], ProcessCommandException
        + FullyQualifiedErrorId : NoProcessFoundForGivenName,Microsoft.PowerShell.Commands.GetProcessCommand
    
    PS C:\> echo $?
    False
    

도커 정보

  • Docker가 실행 중인지 확인하는 운영 체제에 독립적인 방법은 Docker info 명령을 사용하여 Docker에게 묻는 것입니다.이 옵션은 Windows 및 Linux 배포에 모두 사용할 수 있습니다.
  • 아래와 같은 결과가 나올 때 도커가 실행 중이면 다음과 같은 오류 메시지가 나타납니다.
C:\Users\himanshu.agrawal>docker info
Client:
 Debug Mode: false
 Plugins:
  scan: Docker Scan (Docker Inc., v0.3.4)

Server:
 Containers: 1
  Running: 0
  Paused: 0
  Stopped: 1
 Images: 2
 Server Version: 19.03.13
 Storage Driver: overlay2
  Backing Filesystem: extfs
  Supports d_type: true
  Native Overlay Diff: true
 Logging Driver: json-file
 Cgroup Driver: cgroupfs
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
 Swarm: inactive
 Runtimes: runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: 8fba4e9a7d01810a393d5d25a3621dc101981175
 runc version: dc9208a3303feef5b3839f4323d9beb36df0a9dd
 init version: fec3683
 Security Options:
  seccomp
   Profile: default
 Kernel Version: 5.4.39-linuxkit
 Operating System: Docker Desktop
 OSType: linux
 Architecture: x86_64
 CPUs: 2
 Total Memory: 1.915GiB
 Name: docker-desktop
 ID: HHIB:HQRB:7VBA:LBUY:HKVJ:LFZ3:FSWZ:4ARP:74ZB:TIWO:WTMG:LHZH
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 Registry: https://index.docker.io/v1/
 Labels:
 Experimental: false
 Insecure Registries:
  127.0.0.0/8
 Live Restore Enabled: false
 Product License: Community Engine

Get-Process 'com.docker.proxy'

  • 이 옵션은 Windows Power Shell에서만 사용할 수 있습니다(CMD의 경우도 아니고 Power Shell만 해당). 도커가 실행 중이면 다음과 같은 출력이 표시되고 그렇지 않으면 오류 메시지가 나타납니다.
PS C:\Users\himanshu.agrawal> Get-Process 'com.docker.proxy'

Handles  NPM(K)    PM(K)      WS(K)     CPU(s)     Id  SI ProcessName
-------  ------    -----      -----     ------     --  -- -----------
    178      15    22984      25172       0.77  14224   1 com.docker.proxy

기타 옵션 - Linux 관련

  • 다음과 같은 운영 체제 유틸리티를 사용할 수도 있습니다.sudo systemctl is-active docker아니면sudo status docker아니면sudo service docker status, 또는 Windows 유틸리티를 사용하여 서비스 상태를 확인합니다.
  • 마지막으로, 다음과 같은 명령을 사용하여 "dockerd" 프로세스에 대한 프로세스 목록을 확인할 수 있습니다.ps아니면top.

출처1

Windows에서 wsl2를 사용하는 경우 다음을 사용할 수 있습니다.

wsl -l -v

출력은 다음과 같습니다.

  NAME                   STATE           VERSION
* Ubuntu                 Stopped         1
  docker-desktop         Running         2
  docker-desktop-data    Running         2

윈도우에서 도커 컨테이너로 작동하는 스크립트를 작성하는 동안 동일한 문제가 발생했습니다.

제시된 답변들은 시간이 너무 많이 걸려서 저에게는 해당되지 않았습니다.는 "도커가 윈도우에서 실행되고 있다"는 것 또한defaultVM이 실행 중입니다.그래서 대신에 도커를 위해 다른 대답들을 확인했습니다.default기계 IP192.168.99.100도커가 켜져 있을 때 일반적으로 작동해야 합니다.그리고는 그냥 ping을 했습니다.

ping -n <numberOfPings> -w <waitingTimeInMilliSeconds> 192.168.99.100

#Example:
ping -n 1 -w 1000 192.168.99.100

도커가 실행 중일 때 보통 1ms 이내에 응답을 받는데, 이는 검사가 상당히 빠르다는 것을 의미합니다.는가한일다는도이을우e다을는rstnfeodyo는stt한k가0이일r는sdefault컴퓨터가 실행되고 있지 않습니다.

정확한 문자열만 필요한 경우 고랭 서식을 사용할 수 있습니다.예 사용:하기docker info

 C:> docker info -f "{{.OSType}}"
 windows

 C:> docker info -f "{{.Architecture}}"
 x86_64

사용: docker version

 C:> docker version -f "{{.Server.Os}}"
 windows

 C:> docker version -f "{{.Client.Os}}"
 windows

 C:> docker version -f "{{.Server.Arch}}"
 amd64

 C:> docker version -f "{{.Client.Arch}}"
 amd64

실행중 입니다.docker ps도커가 실행되고 있지 않으면 오류 스트림으로 인쇄됩니다.오류 스트림과 입력 스트림을 모두 캡처한 다음 오류를 테스트할 수 있습니다.

은 됩니다를 합니다.true/false콘솔에 아무것도 쓰지 않고:

$dockerIsRunning = (docker ps 2>&1 | Out-String) -match "^(?!error)"

더보기

언급URL : https://stackoverflow.com/questions/57108228/how-to-check-if-docker-is-running-on-windows

반응형