Почему htop не показывает мои docker-процессы с использованием wsl2

#docker-for-windows #wsl-2

#docker для Windows #wsl-2

Вопрос:

Создавая свой контейнер с помощью docker и wsl2, я хотел посмотреть, что произойдет. Запуск htop в wsl показывает только загрузку процессора, но ни один из процессов не выполняется в моих контейнерах.

Единственной информацией, которую я искал htop , docker и wsl2 единственной вещью, которую я смог найти, был этот архивированный и не связанный с reddit-поток: https://www.reddit.com/r/bashonubuntuonwindows/comments/dia2bw/htop_on_wsl2_doesnt_show_any_processes_while_ps/

Ответ №1:

Docker запускается не в вашем WSL-дистрибутиве по умолчанию, а в специальном Docker-Wsl-дистрибутиве. Запуск wsl -l показывает установленные дистрибутивы:

 Ubuntu (Standard)
docker-desktop
docker-desktop-data
  

Docker desktop основан на alpine, и вы можете запускать top его прямо из коробки:

 wsl -d docker-desktop top
  

Если вы хотите htop , вам нужно сначала установить его:

 wsl -d docker-desktop apk update 
wsl -d docker-desktop apk add htop
  

Выполняется

 wsl -d docker-desktop htop
  

теперь я дам вам хороший обзор того, что происходит в ваших docker-контейнерах:

htop показывает процессы docker

Ответ №2:

Я согласен с @Morty.

Следующие команды предоставляют вам список для Windows

 wsl -l
  

Затем вы можете выполнить любую из следующих команд

 wsl -d  docker-desktop ps
wsl -d  docker-desktop top