Dmidecode 내부에 가서 실행되는 프로그램에서 kubernetes pod

0

질문

내가 가는 일상에서 실행되는 도커 컨테이너입니다. 내가 필요한지 명령 출력 dmidecode. 하지만 나오는 비어 있습니다.

이동:

func main(){

    cmd := exec.Command("dmidecode","-t 1")
    x,_ := cmd.Output()
    fmt.Println("output =======", string(x))

}

Docker 실행:

docker 실행--장치/dev/mem/dev/mem--모자-추가 SYS_RAWIO-p8086:8086-it my_img:1.0.1

나는 무엇을 놓치까요?

Updated:

위에서 근무 docker 후에 추가로 아래에능:

에서 알파인:신 실행 apk--no-cache--업데이트--자세한 정보를 추가 grep bash dmidecode&&
rm-rf/var/캐시/apk/*/tmp/*/sbin/정지/sbin/poweroff/sbin/재부팅

아래커를 구성하는 파일:

권한 사실

그러나려고 할 때 사용하여 위에 kubernetes 그것을 가져올 수 없습 demidecode 출력됩니다.

는 데 도움이 될 것입니다 정말 감사합니다.

devops docker go kubernetes
2021-11-23 17:03:05
1

최고의 응답

2

나는 무엇을 놓치까요?

우선,오류를 처리합니다.

    x,_ := cmd.Output()

절대 무시에 오류가 이동합니다. 과는 달리 언어,말처럼,Pyhton,예외가 없금 처리 오류는 반환 값입니다 기회를 파악하는 경우 문제가 발생했습니다.

둘째,당신은 또한 당신의 명령을 무시하고의 표준 출력 스트림입니다. 이것은 가능성을 포함하는 유용한 오류 메시지를 명령할 때마다 실행 작동하지 않는다,그래서 os/execko Output() 제공으로 그것의 일부 오류가 가치 되지 않은 경우에 캡처 Cmd 구성됩니다. 의 일부 오류가 처리해야 하는 형식 주장 에 오류가 가치하지 않을 경우,전무,그 경우 그것은 유효한 *exec.ExitError고,해당 형식이 주장,성공을 확인 그것의 Stderr 분야 에 대한 오류 메시지가 표시됩니다.

셋째,찾고 당신의 명령에,내가 당신을 볼 수 있어 쉽게 실수:

    cmd := exec.Command("dmidecode","-t 1")

포탄,공백을 구분 인수를 사용합니다. 하지만 여기에 포탄을 전달 -t 1 모든 하나로서 인수 dmidecode. 당신이 통과해야로 별도의 인수를 거의 확실:

    cmd := exec.Command("dmidecode","-t", "1")

마지막으로,당신은 이미 발견 실행할 수 없습니다 dmidecode 에 도커 컨테이너 지를 읽을 수 있는지 확인해 이해하고 받아들이 대답. 다음 얻을,당신의 도커 컨테이너할 수 있도록 구성되 실행 dmidecode 지 않고 이동합니다. 그것은 작품에서 명령행,동일한 docker 구성할 수 있도록해야 작동하려면 아래에서 가 호출니다.

2021-11-23 17:22:34

다른 언어로

이 페이지는 다른 언어로되어 있습니다

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................