WSL(리눅스용 윈도우 하위 시스템)을 사용하면 윈도우 애플리케이션과 기본적인 리눅스 도구를 함께 실행할 수 있습니다. 애플리케이션을 윈도우와 리눅스에서 동시에 개발하거나 윈도우 환경에 더 다양한 도구를 추가해서 사용하고 싶을 때, WSL을 사용하면 그 한계를 넘어설 수 있다. 이 책에서는 WSL이 무엇인지 친절하게 설명하고, 다양한 리눅스 배포판을 WSL에 설치하고 구성하는 방법을 살펴본다. 그런 후에 윈도우 환경과 리눅스 환경을 동시에 사용해서 개발하는 방법을 살펴본다. 그리고 새로 나온 윈도우 터미널을 설치하는 방법과 이를 사용자에게 맞게 구성하는 방법, 또한 WSL과 비주얼 스튜디오 코드를 연동해 코드를 작성하는 방법도 다룬다. 그 밖에도 도커와 쿠버네티스 기반의 컨테이너를 사용해 일하는 방법과 비주얼 스튜디오 코드를 사용해 개발 환경을 컨테이너 형태로 만드는 방법도 안내한다. 이 책을 다 읽고 나면 여러분은 기본 사용 환경에 맞춰 WSL과 윈도우 터미널을 구성한 후에 비주얼 스튜디오 코드를 사용해 WSL 애플리케이션을 개발할 수 있을 것이다.
Contents
옮긴이 머리말 viii
베타리더 후기 ix
이 책에 대하여 xii
PART I 소개, 설치, 구성
CHAPTER 1 WSL 살펴보기 3
WSL이란 무엇인가? 4
WSL1과 WSL2의 차이점 살펴보기 6
요약 9
CHAPTER 2 WSL 설치 및 구성하기 11
WSL 활성화 11
WSL에 리눅스 배포판을 설치하기 15
WSL 구성 및 제어하기 17
요약 25
CHAPTER 3 윈도우 터미널을 출발점으로 삼기 27
윈도우 터미널 살펴보기 28
윈도우 터미널 설치하기 29
윈도우 터미널 사용하기 30
윈도우 터미널 구성하기 32
요약 45
PART II 윈도우와 리눅스 ? 승리하는 조합
CHAPTER 4 윈도우에서 리눅스를 함께 쓰기 49
윈도우에서 리눅스 파일에 접근하기 50
윈도우에서 리눅스 애플리케이션을 실행하기 53
윈도우에서 리눅스 웹 애플리케이션에 접근하기 58
요약 61
CHAPTER 5 리눅스에서 윈도우를 함께 쓰기 63
리눅스에서 윈도우 파일에 접근하기 64
리눅스에서 윈도우 애플리케이션을 호출하기 65
리눅스에서 윈도우 스크립트를 호출하기 67
상호 운용 요령과 기법을 살펴보기 71
요약 85
CHAPTER 6 윈도우 터미널에서 더 많은 것을 얻기 87
탭 제목을 사용자 맞춤형으로 지정하기 88
동시에 여러 창을 사용해 가며 작업하기 96
사용자 지정 프로필 추가하기 103
요약 105
CHAPTER 7 WSL 안에서 컨테이너를 사용해 일하기 107
컨테이너 살펴보기 108
WSL과 도커를 함께 설치해 사용하기 108
도커를 사용해 컨테이너를 실행하기 111
도커에서 웹 애플리케이션을 빌드하고 실행하기 114
오케스트레이터 살펴보기 121
WSL 안에서 쿠버네티스를 설치하기 122
쿠버네티스 안에서 웹 애플리케이션을 실행하기 124
요약 128
CHAPTER 8 WSL 배포판을 사용해 일하기 131
WSL 배포판을 내보내고 가져오기 132
사용자 지정 배포판 생성과 실행하기 137
요약 148
PART III WSL을 사용해 개발하기
CHAPTER 9 비주얼 스튜디오 코드와 WSL 151
비주얼 스튜디오 코드 살펴보기 152
Visual Studio Code Remote 살펴보기 154
Remote-WSL 시작하기 155
Remote-WSL 작업을 위한 요령 170
요약 176
CHAPTER 10 비주얼 스튜디오 코드와 컨테이너 179
Remote-Containers 살펴보기 180
Remote-Containers 설치하기 182
개발용 컨테이너 생성하기 183
개발용 컨테이너에서 컨테이너화된 앱을 사용해 일하기 188
개발용 컨테이너에서 쿠버네티스를 사용해 일하기 193
개발용 컨테이너를 사용해 일할 때의 요령 199
요약 208
CHAPTER 11 명령줄 도구로 생산성을 높이는 요령 209
깃 작업 210
JSON 작업 220
애저 CLI 작업 232
쿠버네티스 CLI 작업 242
요약 252
Author
스튜어트 리크스,박진수
마이크로소프트의 수석 소프트웨어 개발 엔지니어로, 소규모 ISV에서 대기업에 이르기까지 광범위한 고객과 협력하여 마이크로소프트 기술 스택을 성공적으로 구축할 수 있도록 지원하고 있다. 다양한 기술에 대한 경험이 풍부하지만, 그중에서도 웹과 클라우드 기술을 가장 좋아한다. 아울러 웹 괴짜, 컨테이너 애호가, 클라우드 애호가, 페미니스트, 성능 및 확장성 애호가, 세 아이의 아버지, 남편, 살사 댄서 및 교사이기도 하다. BBC 마이크로 시절부터 코드를 작성했고, 지금도 여전히 즐기는 중이다.
마이크로소프트의 수석 소프트웨어 개발 엔지니어로, 소규모 ISV에서 대기업에 이르기까지 광범위한 고객과 협력하여 마이크로소프트 기술 스택을 성공적으로 구축할 수 있도록 지원하고 있다. 다양한 기술에 대한 경험이 풍부하지만, 그중에서도 웹과 클라우드 기술을 가장 좋아한다. 아울러 웹 괴짜, 컨테이너 애호가, 클라우드 애호가, 페미니스트, 성능 및 확장성 애호가, 세 아이의 아버지, 남편, 살사 댄서 및 교사이기도 하다. BBC 마이크로 시절부터 코드를 작성했고, 지금도 여전히 즐기는 중이다.