삽질도 두드려 보고,

DESIGN YOUR EXPERIENCE

코스 전체목록

닫기
본 토픽은 현재 준비중입니다. 공동공부에 참여하시면 완성 되었을 때 알려드립니다.

원격 개발 환경

개요

 최근 Microsoft에서 Visual Studio Code를 오픈소스로 개발하고 Windows Subsystem for Linux 등 오픈소스 및 Linux 기반 제품을 선보이고 있다. 그러면서 과거 두 운영체제 간 호환성이 없었던 시절이 무색할 정도로 융합되고 있다.

 Linux 시스템은 많은 개발 환경에서 활용되고 있다.

  • 최적 성능으로 서비스 배포를 위해 GUI가 제외된 가벼운 Linux 시스템 기반 웹 서버
  • 무거운 소스코드를 로컬 시스템이 아닌 원격에서 컴파일하여 작업 효율을 늘리고 CPU 연산을 효율적으로 사용하는 빌드 서버
  • 딥러닝과 같이 GPGPU 연산이 요구되는 상황에서 호환성이 좋은 Linux 시스템을 원격 연산 서버로 활용하는 GPU 서버

 등 활용되는 분야가 넓고 그 필요성이 중요하나 UI&UX가 Windows에 비해 빈약하고 터미널 중심적인 운용 방식이라 Windows에 친숙한 사용자가 쉽게 적응하기 어렵다. 그래서 Linux가 필요한 상황에서는 SSH 기반 원격 접속을 통해 CLI로 작업을 처리하고 그 결과를 다시 SSH로 받아오는 절차를 통해 Linux를 사용하면 로컬 시스템의 Windows UI & UX를 그대로 활용하면서 CLI를 통해 명령을 전달하므로 로컬 OS의 시스템 환경이 가볍다.

 본 문서에서는 Windows 환경에서 Linux 시스템이 필요할 때, VSCode를 통해 원격 접속 환경을 구축하고 Linux 시스템에 접속하여 Linux 운영체제를 활용하는 과정에 대해서 설명한다.

시스템 구성 환경

 본 개발환경 구축 과정은 로컬 Windows에서 원격 Linux로의 통신을 ssh로 연결하는 과정을 다룬다.

 먼저 로컬 OS에 VSCode와 Docker client를 설치한다. Windows의 경우, Docker Desktop을 설치하면 Docker daemon과 client가 같이 설치되므로 로컬 OS에서 Docker 컨테이너를 사용할 계획이 아니라면 설치 시 components for WSL2 또는 Windows container 옵션을 선택하지 않아도 된다. 만약, 컨테이너 내부의 GUI 애플리케이션을 네트워크를 경유하여 로컬 OS에서 출력하고 싶다면, X Server를 설치한다. 본 문서에서는 vcXsrv for Windows를 설치하였다.

 Remote OS는 Linux를 설치해야 하며, 본 문서에서는 Ubuntu Server 18.04 LTS를 기준으로 설명한다. Docker를 설치하되, GPGPU 연산을 컨테이너에서 수행하고 싶다면, GPU 드라이버를 추가적으로 설치하도록 한다. 본 문서에서는 NVIDIA Driver를 설치한다.

 

  • 봤어요 (0명)

댓글

댓글 본문
버전 관리
Hyunseok Lim
현재 버전
선택 버전
graphittie 자세히 보기