wsl2에 docker를 설치하는 방법은
https://idea9329.tistory.com/1031
이 블로그를 참고했다.
분명 도커가 잘 설치 되어있고
docker -v하면 버전도 잘 뜨는데 docker ps를 하려 할때마다
The command 'docker-compose' could not be found in this WSL 2 distro
이런 비슷한 오류가 떠서 또 구글링했다.
https://whdgus928.tistory.com/176
이 블로그를 보고 해결할 수 있었다.(구글링 짱)
캡쳐화면을 보여주고 싶은데 docker desktop이 실행이 안되서 아쉽 :(
docker 실습을 위해선 image가 필요하다. 이는 도커 명령어로 내려받을 수 있으므로 별도로 설치할 필요는 없다.
🤔 image가 뭐에요?
가상머신을 생성할 때 사용하는 iso파일과 비슷하다.
컨테이너를 생성하고 실행할 때 읽기 전용으로 사용된다.
난 요리조리 검색하다가 archlinux라는걸 알게되어서 이걸 설치해주었다.
설치는 간단하다!
https://hub.docker.com/_/archlinux/
여기로 가서 copy한 후 wsl2에 붙여넣기 혹은
직접
docker pull archlinux
라고 써줘도 좋다. 후자가 더 편하니 후자를 추천:)

이렇게 docker pull을 한 후
docker images
를 입력하면 추가한 archlinux 이미지가 보인다.
(잠시만 컨테이너 설명을 빼먹었어)
🤔 container가 뭐에요?
프로세스 단위의 격리환경, 위에서 말한 image로 컨테이너를 생성하면 해당 이미지의 목적에 맞는 파일이 들어있는 파일 시스템과 격리된 시스템 자원 및 네트워크를 사용할 수 있는 독립된 공간이 생성됨<-- 컨테이너
이제 컨테이너를 생성하면서 동시에 실행을 시켜주자.
docker run 명령어를 이용하면 쉽다.
docker run -i -t archlinux

실행했을때 무슨 프롬프트가 뜨긴해서 어 된건가..?
했는데 혹시 몰라 다른 창일 수 있잖아 해서
ls /etc 해보니 arch-relaese가 뜨길래 오케이~~ 했다.


지금 시작하세요!도커/쿠버네티스 라는 책을 참고하고 있어서 여기서 나온 docker create, attach라는 개념도 살짝 실습해봤다.

docker create -i -t --name myarchlinux archlinux
이렇게 "myarchlinux"라는 archlinux 이미지를 생성했다.
여기서 바로 docker run을 하려고 했더니 permission관련 오류가 떴다! 엥?
확인해보니
create명령어는 컨테이너를 생성만 할뿐 컨테이너로 들어가지 않는다고 한다.
들어가려면 docker start와 docker attach를 해주어야한다.
docker start myarchlinux
docker attach myarchlinux

역시 실행이 잘된 것을 확인할 수 있었다.
그다음은?
책의 내용을 따라
2.2.4 컨테이너를 외부에 노출
~
2.2.9 컨테이너 자원 할당 제한
까지 실습할 예정이다.
난 지금껏 visual studio code 터미널 안에서만 docker를 썼었는데
(node.js + Dockerfile)
이렇게 wsl2에서 해보니까 약간 다른 느낌..
배워갈수록 더 다를 거같다.