반응형
ps 명령이 도커 컨테이너에서 작동하지 않습니다.
데비안 공식 도커 허브 저장소에서 파생된 도커 컨테이너에서 ps 명령을 수행하고자 합니다.
$ docker run -ti debian:wheezy /bin/bash
root@51afd6b09af8:/# ps
bash: ps: command not found
ps
기본에 설치되지 않았습니다.wheezy
image. 컨테이너 내에서 이 방법을 사용해 보십시오.
apt-get update && apt-get install procps
또는 다음 행을 에 추가합니다.Dockerfile
:
RUN apt-get update && apt-get install -y procps && rm -rf /var/lib/apt/lists/*
도커톱을 사용합니다.
docker top <container ID>
procps 패키지를 설치할 수 없는 경우(적절한 권한이 없는 경우) /proc 디렉토리를 사용할 수 있습니다.
처음 몇 개의 디렉터리(숫자로 명명됨)는 프로세스의 PID입니다.디렉터리 내에서 각 PID에 연결된 프로세스를 해독하는 데 유용한 추가 정보를 찾을 수 있습니다.예를 들어 cat 명령을 사용하여 "cmdline" 파일을 보고 어떤 프로세스가 PID에 연결되어 있는지 확인할 수 있습니다.
$ ls /proc
1 10 11 ...
$ ls -1 /proc/22
attr
autogroup
auxv
cgroup
clear_refs
cmdline
...
$ cat /proc/22/cmdline
/bin/sh
Edited - cmdline에서 공간이 손실되어 cat 출력을 에 파이프링할 수 있습니다.tr
명령어, 예:
$ cat /proc/1/cmdline | tr '\0' ' '
/sbin/init splash
만약 당신이 센트를 운영하고 있다면,OS container, 다음 명령을 사용하여 ps를 설치할 수:
yum install -y procps
도커 파일에서 다음 명령 실행:
RUN yum install -y procps
먼저 아래 명령을 실행합니다.
apt-get update && apt-get install procps
실행합니다.
ps -ef
kali 사용자가 bash: ps: 명령을 찾을 수 없는 문제를 수정합니다.
apt install procps
RockyLinux 9의 경우 이 명령을 사용해야 합니다.
$> yum install procps-ng
언급URL : https://stackoverflow.com/questions/26982274/ps-command-doesnt-work-in-docker-container
반응형
'programing' 카테고리의 다른 글
PowerShell에 경과 시간 표시 (0) | 2023.10.02 |
---|---|
스위프트에서 문자열에서 분음 부호를 제거하는 방법은? (0) | 2023.10.02 |
SCRIPT5: 워드프레스의 jQuery.min CDN 파일로 인해 IE9에서 액세스 거부 (0) | 2023.10.02 |
도커 파일에서 볼륨의 목적은 무엇입니까? (0) | 2023.10.02 |
Python os.system이 CLI 응용 프로그램에서 실행할 명령을 입력합니다. (0) | 2023.10.02 |