Docker WSL2 사용할때 Volume 속도 느려지는 현상

Updated on

이번에 CPU랑 VGA를 바꿨는데…
바꾸면서 포멧도 같이 진행했다.

물론 서버컴퓨터도 먼지청소하고, 패키지 업데이트를 해줬는데, docker 가 업데이트되면서 패키지 에러 뜨더라, 그래서 일일히 도커 다 지우고 다시 모두 설치해줬음.

근데 여기서, docker 가 새로운 버젼으로 업데이트 되면서 예전에 문제되던 network 외부 방화벽 문제가 해결된듯? 싶었다.

공용 network를 생성해주지 않아도, 무조건 컨테이너 당 새로운 네트웤이 생성되고, 생성된 네트웤은 centos8 firewalld 에서 서로 공유가 가능한듯(?) 보였다. (물론 warring 뜨던 걸 해소 시켜줘서 그런지 몰라도)

그래서 신뢰를 허용한 네트웤이 아닌데도, x-real-ip 를 받아올 수 있었다.
물론 다른 문제가 있을 수 있기 때문에, 이건 나중에 테스트해보고 포스팅하기로 하고

오늘 그래서 중요한건, 윈도우를 새로 설치하면서 docker를 설치했는데 띠용 ?
WSL2 라는게 있단다. 하이퍼-V 쓰지말라고하는거 같던데…

https://github.com/microsoft/WSL/issues/4387

https://github.com/microsoft/WSL/issues/4197

하지만, 되게 오래전부터 이 문제로 이야기하고 있었던 것 같다.

응 그렇다 결과적으로 이야기하자면 해결 방법이 없다.

마이크로소프트 WSL의 문제같은데, 컨테이너가 아무리 빨리 실행되면 뭐하는가? 아무리 빨리 생성되면 뭐하는가?
아 물론, 내용을 보아하면, VS-CODE 등에서 지원하게 share 해서 사용하라는 사람들도 있다.
하지만, 굳이 번거롭게 그래야 할 이유를 모르겠다.

개발 환경으로 작업하는 windows 에서 굳이 그렇게까지 할바에는, 컨테이너 속도가 조금 느려지더라도 볼륨 마운트로 편하게 작업하는게 나을 것 같다…

물론, Docker Volume 을 사용하는 환경이라면 WSL2를 사용하는 게 엄청 빠르고 좋을 것 같긴하다, 하지만 난 그냥 Volume 을 통째로 마운트 시켜서 작업하는 스탈이기 때문에… WSL2는 포기하는걸로,,,

어쨌든, 이야기하듯이 다들 wsl3을 기다리거나 wsl1 (하이퍼-v인가?)로 다시 롤백시키는것 같다.

Just want to bump this as it's Dec 8th with no resolution in sight. HTTP Requests against a Rails stack that executes in <1s on my macbook take 30+ seconds in WSL2 w/Windows.

나와 같은… laravel reqeust 가 총 4s가 걸린다…

WSL2 에서 다시 돌아가기

간단하다. 그냥 WSL 2 옵션을 끄고서, 하이퍼-V를 다시 켜주면 된다.