계기
오늘 포스팅을 작성할려고 했으나, windows 를 다시 깔아버려서 세팅하기가 너무 귀찮더라구요...
이번 기회에 저처럼 자주 이러저리 옮겨다니는 사람들을 위해 이번 내용을 작성하게 되었습니다.
![lazy lazy](/static/c7813195ebe41ca6acf361e336d0179c/9f933/lazy.png)
우선 저는 windows 10 에 wsl2 와 docker 를 설치하여 사용하였습니다.
wsl2 사용하기
wsl2 란?
Microsoft 에서 미리 예고한 대로 WSL2 (Windows Subsystem for Linux 2) 를 포함하고 있습니다.
간략히 이야기 드리자면, 윈도우즈에서 경량 가상화 기술을 사용해 리눅스를 구동할 수 있도록 도와주는 기능입니다.
현재 설치여부는 Windows Key + R 을 눌러서 실행창에 winver 를 넣고 버전을 확인해 보면 됩니다.
![winver winver](/static/7a3c0210cc90ca1a2f8a70fe886db118/2d920/winver.png)
wsl2 활성화 하기
2004 업데이트를 설치했다면 PowerShell 을 관리자로 열고 다음 명령을 실행해서 WSL 을 활성화해줍니다.
bash1dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
설치 완료를 위해서 재부팅을 해줍니다.
wsl2 기본 버젼으로 설정
똑같이 파워쉘을 띄워서 아래 명령어를 입력해줍시다.
bash1wsl --set-default-version 2
linux 배포판 선택하기
(다른 배포판들은 여기에서 확인 가능합니다.)
microsoft store 에서 ubuntu 를 검색해서 설치합니다.
![ubuntu 18 04 lts ubuntu 18 04 lts](/static/1800845a0669e0fb83c3526bbb2dbc0f/00d43/ubuntu_18_04_lts.png)
배포판 실행하기
설치한 배포판을 실행하면 설치하는데 시간이 조금 소요됩니다.
![ubuntu install ubuntu install](/static/4f1f254ea93777688405e8c2fccfe888/41d3c/ubuntu_install.png)
아래 명령어를 이용해서 wsl 버젼을 확인합니다.
1PS C:\Users\ecst> wsl --list --verbose2 NAME STATE VERSION3* Ubuntu-18.04 Running 2
docker 사용하기
General에서 Enable the experimental WSL 2 based engine를 체크하여주고
Resources > WSL Integration에서 설치한 리눅스 버전을 체크해주시면 됩니다.
![docker general docker general](/static/9fa1937eda38de218a7ac9ee1add12f8/00d43/docker_general.png)
![docker wsl docker wsl](/static/b4a2f443ff0e7a9dd505900708adb6b7/00d43/docker_wsl.png)
jekyll docker 설정하기
docker-compose.yaml 파일을 만들어 봅니다.
yaml1version: '3.3'23services:4 blog:5 image: jekyll/jekyll:latest6 command: jekyll serve --force_polling --drafts --livereload --trace7 ports:8 - '4000:4000'9 volumes:10 - '.:/srv/jekyll'
docker-compose는 서비스에 필요한 docker 컨테이너를 한번에 실행해주는 프로그램 입니다.
다음은 작성된 코드의 의미입니다.
- version : docker-compose의 버전을 의미
- services : docker-compose는 여러개의 컨테이너를 띄울 수 있음. 하단 블록에 기입
- blog : 실행할 컨테이너의 이름
- image : docker 이미지
- command : 컨테이너가 run 하면 실행할 명령
- ports : {local_port}:{container_port} , 로컬 4000번 port를 컨테이너의 4000번 포트와 매핑
- volumes : {local_dir}:{container_dir} , 현재 경로를 컨테이너의 /srv/jekyll 경로에 mount 하겠다는 뜻
- blog : 실행할 컨테이너의 이름
이 작성된 코드로 아래 명령어를 내리면 자동으로 container 가 실행됩니다.
bash1docker-compose up
![docker compose docker compose](/static/6d36299ffeb9c5ea218447ddf7e30af7/d26aa/docker-compose.png)
정상적으로 완료가 되면 자동으로 빌드되는 것을 확인할 수 있습니다
![docker result docker result](/static/1ede7c7d6a1149837b32f408e5cfd38d/76cea/docker-result.png)
추가) vscode 연동
![docker dashboard docker dashboard](/static/8fb5649b203d61739bb30a14ae8786b2/00d43/docker-dashboard.png)
위는 docker dashboard 에서 확인된 container 입니다. vscode 로 열기를 선택하시면 해당 container 에 remote wsl 로 접속을 확인할 수 있습니다!
Relate
Stories
![phaser 로 구현해 보는 콘웨이의 생명게임](https://tebs-game-of-life.com/images/gosper-gun.png)
phaser 로 구현해 보는 콘웨이의 생명게임
coding오늘 이 시간은 phaser 게임 프레임워크를 이용해서 ‘라이프 게임(Life of Game)’ 를 구현하는 것을 목표를 하겠습니다.