08-10 09:36
Notice
Recent Posts
Recent Comments
반응형
관리 메뉴

BAN2ARU

[Foxy/Nav2] 튜토리얼 2.Development Guides - 2) Dev Containers 본문

Study/Nav2

[Foxy/Nav2] 튜토리얼 2.Development Guides - 2) Dev Containers

밴나루 2024. 1. 27. 21:41

Nav2 튜토리얼은 공식 홈페이지를 참조하여 작성함

 

이전 글 참조

2024.01.27 - [Study/Nav2] - [Foxy/Nav2] 튜토리얼 2.Development Guides - 1) Build and Install

 

[Foxy/Nav2] 튜토리얼 2.Development Guides - 1) Build and Install

Nav2 튜토리얼은 공식 홈페이지를 참조하여 작성함 이전 글 참조 2024.01.27 - [분류 전체보기] - [Foxy/Nav2] 튜토리얼 1. Getting Started [Foxy/Nav2] 튜토리얼 1. Getting Started Nav2 튜토리얼은 공식 홈페이지를

ban2aru.tistory.com

 

dev container를 사용하면 프로젝트를 빌드할 때 유용하다. 팀 전체가 동일한 도구 및 종속성을 사용하면 호스트 머신에 종속성을 설치할 필요없이 개발할 수 있게 해준다. 또한 Dev Containers를 사용하면 GitHub Codespaces와 같은 로컬 또는 원격 개발 환경으로 쉽게 전환할 수 있다.

 

What, Why, How?

1. What is a Dev Container?

Dev Container는 프로젝트를 개발하는 데 필요한 모든 도구와 종속성이 포함된 Docker 컨테이너이다. 이는 self-contained 환경에서 실행되며 다른 컨테이너 및 호스트 머신에서 격리된다. 이를 통해 ROS가 대상인 Linux 배포판을 위해 호스트 머신의 운영 체제에 관계없이 프로젝트를 안정적으로 개발할 수 있다.

2. Why use a Dev Container?

Dev container는 공통적이고 일관된 개발 환경을 제공한다. 각 프로젝트가 다른 컨테이너를 사용할 수 있도록 하여 각 프로젝트 간에 쉽게 전환이 가능하다. 이는 특히 ROS의 다른 버전을 사용하는 여러 프로젝트에서 작업하는 경우 유용하다.

3. How do Dev Containers work?

VS Code에서 프로젝트를 열 때, VS Code는 root 디렉토리 하위에 있는 **.devcontainer** 폴더에 중첩된 dev container 구성을 확인하여 Dev Container로 개발할 수 있는 설정이 있는지 확인한다. Dev Container 구성이 확인되면 VS Code에서 사용자에게 해당 프로젝트를 컨테이너에서 다시 열 것인지 여부를 알리는 알림을 표시하며, “예”를 선택하면 VS Code는 프로젝트를 컨테이너 모드로 다시 열 수 있다. Dev Container 내에서 실행되는 VS Code는 프로젝트 폴더를 컨테이너 내에 마운트한다. 이는 로컬 머신의 프로젝트를 컨테이너 내에서 접근가능하게 만든다. 컨테이너 설정 중에, VS Code는 local 환경의 유용한 설정을 컨테이너에 전달(git 사용자 구성, X11 소켓 등)한다. 이 후 로컬에서 작업하듯이 컨테이너 내에서 코드를 수정하고 개발할 수 있다.

4. Prerequisites

Dev Container를 사용하려면 다음이 필요하다.

  • 호스트 머신에 설치 및 실행된 Docker Engine
  • 원격 머신에 설치된 VS Code
  • VS Code에 설치된 Dev Containers extension

5. Getting started

Dev Containers를 사용하여 프로젝트를 시작하는 것은 다음 중 하나를 통해 VS Code에서 프로젝트를 열기만 하면 된다.

  1. 프로젝트를 컨테이너에서 다시 열 것인지 묻는 알림 프롬프트 따르기
  2. 명령 팔레트(Ctrl+Shift+P)를 열고 Remote-Containers:Reopen in Container를 선택하기

이렇게 하면 새로운 컨테이너가 생성되고 프로젝트의 기본 .devcontainer/devcontainer.json 구성 파일에서 지정된 확장프로그램을 설치하며 프로젝트의 root 디렉토리를 작업 공간 폴더로 마운트한다. 컨테이너가 생성되면 VS Code가 이에 연결되어 개발을 시작할 수 있다.

 

TIP!
VS Code에서 Starting Dev Container (show log) 알림을 클릭하면 생성 과정을 실시간으로 확인할 수 있으며, 명령 팔레트에 Dev Containers: Show Log 를 입력하면 모든 사용 가능한 명령이 나열되어 나중에 해당 로그파일을 검토 및 다시 확인할 수 있음

 

728x90
Comments