늘 Windows 에서 Docker 를 설치할 때 WSL 배포판 하나 이상을 설치해놓고 시작해야 하는 것으로 알고 있었는데 그렇지 않다는 것을 알게 되어 정리합니다.
과정
wsl명령어로 아무것도 안하고Windows설치하자마자Docker Desktop설치하니까 알아서docker-desktop,docker-desktop-data설치되어있음 이 상태로도 잘 동작함이 상태에서
Ubuntu배포판으로 접속해서docker ps입력하면 없다고 나옴The command 'docker' could not be found in this WSL 2 distro.
We recommend to 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 -d docker-desktop으로 들어가도 없다고 나오고wsl -d docker-desktop-data으로 들어가면 에러가 발생wsl --set-default Ubuntu으로 기본 배포판 지정하니까 잘 나옴그렇다는 건
기본 배포판에서는Docker명령이 가능하다는 것인데wsl --install -d Debian으로 설치한 다른 배포판도 같은 논리로 동작하며 그렇게 되면Debian배포판에서는 잘 조회되고Ubuntu배포판에서는 조회가 되지 않는다.Ubuntu와 같은 배포판이 없더라도Windows에서Docker Desktop은 잘 동작한다.
결론
Docker Desktop for Windows는 기본적으로WSL2사용을 하도록 되어있는데 이는WSL의 특정 배포판을 선택해서 돌아가는 것이 아니라Docker가 알아서배포판을 만들어서 설치한다.공식문서에 보면 어디서
Docker가 실행되는지 잘 나와있습니다.
추가적으로 설치한
WSL배포판에서도docker를 사용하고 싶다면WSL 배포판을 기본 값으로 설정하면 된다.