본문으로 건너뛰기
Linux · CLI 기초집LESSON 18

Python 가상환경·Node.js 프로젝트를 Linux에서 실행하기

난이도입문 → 초급
예상 시간30분
선수지식이전 강의

18강. Python 가상환경·Node.js 프로젝트를 Linux에서 실행하기

1. 이번 강의에서 해결할 문제​

Windows에서 설치한 Python·Node 의존성을 WSL에서 그대로 사용하면 실행 파일 형식과 경로가 달라 오류가 납니다. WSL 안에서 런타임과 의존성을 다시 준비합니다.

2. 학습 목표​

3. 핵심 개념​

WSL은 별도 Linux 환경이므로 Windows의 가상환경이나 node_modules를 재사용하지 않습니다. Python은 .venv, Node.js는 package-lock.json과 npm ci로 프로젝트 의존성을 분리합니다. 과정 최종 도구는 표준 라이브러리 Python을 사용하므로 외부 패키지 설치가 필수는 아닙니다.

4. 단계별 명령어와 예시​

1. Ubuntu Bash(WSL)​

실행 위치: 프로젝트 루트

대상: Python .venv 가상환경

Ubuntu Bash(WSL)
cd "$HOME/projects/game-log-analyzer"
python3 --version
python3 -m venv .venv
source .venv/bin/activate
python --version
python -c "import sys; print(sys.executable)"
deactivate

예상 결과: 프로젝트 안 Linux 가상환경이 생성되고 실행 경로가 .venv/bin/python으로 표시됩니다.

2. Ubuntu Bash(WSL)​

실행 위치: Node 프로젝트가 있는 경우에만 해당 루트

대상: lockfile에 기록된 Node.js 의존성

Ubuntu Bash(WSL)
node --version
npm --version
# package-lock.json이 있는 프로젝트에서만 실행합니다.
if test -f package-lock.json; then npm ci; else echo "lockfile이 없어 npm ci를 건너뜁니다."; fi

예상 결과: 런타임 버전이 표시되고 lockfile이 있을 때만 깨끗한 의존성 설치가 진행됩니다.

5. 명령어가 동작하는 이유​

python3 -m venv는 현재 Linux Python을 기준으로 격리된 실행 환경을 만들고 source가 현재 셸의 PATH를 임시 변경합니다. npm ci는 lockfile과 정확히 일치하는 의존성을 설치합니다.

6. 자주 하는 실수와 안전한 해결법​

7. 직접 실습​

8. 이해 점검 질문 3개​

9. 핵심 요약​

MINI QUIZ

Python 가상환경·Node.js 프로젝트를 Linux에서 실행하기 미니 퀴즈

선택 즉시 정답과 해설을 확인할 수 있습니다. 결과는 이 브라우저에만 저장됩니다.

0 / 2
  1. 문제 1“Python 가상환경·Node.js 프로젝트를 Linux에서 실행하기”의 역할과 의존성을 판단하는 올바른 기준은 무엇인가요?
  2. 문제 2“Python 가상환경·Node.js 프로젝트를 Linux에서 실행하기” 실습 중 ‘전역 sudo pip/npm으로 해결’ 상황을 발견했습니다. 본문과 일치하는 설명은 무엇인가요?
LESSON STATUS

학습을 마쳤나요?

직접 실습과 점검 질문까지 확인한 뒤 완료로 표시하세요.

18강. Python 가상환경·Node.js 프로젝트를 Linux에서 실행하기 미완료 상태