The command 'docker' could not be found in this WSL 1 distro.

ansunny1170·2023년 7월 9일
1

단순참조

목록 보기
22/26

시작하는 말

윈도우에 docker desktop도 설치하였고, docker desktop 세팅에서 wsl2 사용 하도록 설정하였지만 wsl2 ubuntu에서는 아직도 docker를 사용할수가 없었습니다.

code@DESKTOP-TQ6HFOP:~$ docker compose

The command 'docker' could not be found in this WSL 1 distro.
We recommend to convert this distro to WSL 2 and activate
the WSL integration in Docker Desktop settings.

For details about using Docker Desktop with WSL 2, visit:

https://docs.docker.com/go/wsl2/

자세히 보니, 저한테는 WSL 2 distro가 없다는 군요! 이부분을 해결하겠습니다.

docker가 안내하는 해결법 따라하기

위 사진의 More info를 누릅니다.
Enabling Docker support in WSL 2 distros이 부분을 보면 배포가 WSL2 모드에서 실행되었는지 확인 하는 방법이 있습니다.

 // wsl.exe -l -v
 code@DESKTOP-TQ6HFOP:~$ wsl.exe -l -v
  NAME                   STATE           VERSION
* Ubuntu-22.04           Running         1
  docker-desktop         Running         2
  docker-desktop-data    Running         2
code@DESKTOP-TQ6HFOP:~$ wsl.exe --set-version Ubuntu-22.04 2
Linux용 Windows 하위 시스템 인스턴스가 종료되었습니다.

[코드 4294967295 (0xffffffff)로 프로세스 종료됨]
이제 Ctrl+D 이 터미널을 닫거나 Enter 키를 눌러 다시 시작할 수 있습니다.

??? 잘 되고 있는 걸까요? 안내 메시지 내용이 좀 부족한 것 같습니다.
예전에 powerShell에서 세팅하던 것이 기억나 변경해줍니다.

// windows PowerShell
PS C:\Users\code> wsl.exe --set-version (distro name) 2^C
PS C:\Users\code> wsl.exe -l -v
  NAME                   STATE           VERSION
* Ubuntu-22.04           Stopped         1
  docker-desktop         Running         2
  docker-desktop-data    Running         2
PS C:\Users\code> wsl.exe --set-version Ubuntu-22.04 2
변환이 진행 중입니다. 몇 분 정도 걸릴 수 있습니다...
WSL 2와의 주요 차이점에 대한 자세한 내용은 https://aka.ms/wsl2를 참조하세요

약 3분뒤, 변환이 완료되었다고 출력이 되었습니다.

PS C:\Users\code> wsl.exe --set-version (distro name) 2^C
PS C:\Users\code> wsl.exe -l -v
  NAME                   STATE           VERSION
* Ubuntu-22.04           Stopped         1
  docker-desktop         Running         2
  docker-desktop-data    Running         2
PS C:\Users\code> wsl.exe --set-version Ubuntu-22.04 2
변환이 진행 중입니다. 몇 분 정도 걸릴 수 있습니다...
WSL 2와의 주요 차이점에 대한 자세한 내용은 https://aka.ms/wsl2를 참조하세요
변환이 완료되었습니다.

확인해 봅니다. 버전을 다시확인하니 2로 세팅되었습니다.
docker desktop settings를 보니, wsl2 distro가 없다는 문구는 사라지고, 세팅 버튼이 생겼습니다.

// Windows PowerShell
PS C:\Users\code> wsl.exe -l -v
  NAME                   STATE           VERSION
* Ubuntu-22.04           Running         2
  docker-desktop         Running         2
  docker-desktop-data    Running         2

마지막으로 version2를 기본값으로 설정해 줍니다.
Ubuntu-22.04 disto가 기본값이도록 설정해 줍니다.

PS C:\Users\code> wsl.exe --set-default-version 2
WSL 2와의 주요 차이점에 대한 자세한 내용은 https://aka.ms/wsl2를 참조하세요
작업을 완료했습니다.
PS C:\Users\code> wsl --set-default Ubuntu-22.04

확인하기, docker가 Ubuntu-22.04에서 제대로 실행되는 것을 확인합니다.

code@DESKTOP-TQ6HFOP:~$ docker -v
Docker version 20.10.14, build a224086
profile
공정 설비 개발/연구원에서 웹 서비스 개발자로 경력 이전하였습니다. Node.js 백엔드 기반 풀스택 개발자를 목표로 하고 있습니다.

0개의 댓글