[DE] DE 환경 설정(가상환경)

박경국·2022년 1월 22일
0

Data Engineering

목록 보기
1/16
post-thumbnail

1. 데이터 엔지니어링 환경 만들기

1) CLI 사용하기

  • Python, Git, Docker 등 엔지니어링을 위한 개발 도구의 환경은 주로 CLI를 기반으로 만들어졌습니다.
  • GUI로 접근할 수도 있지만 사용할 수 있는 기능이 제한적입니다. GUI 개발에 드는 리소스가 많기 때문입니다.
  • CLI에 사용하는 기본 명령어를 먼저 소개합니다.
  • pwd : 현재 경로를 나타내는 명령어입니다.
  • mkdir 폴더명 : 폴더(디렉토리)를 생성하는 명령어입니다.
  • cd 폴더명 : 폴더에 들어가는 명령어입니다.
  • ls : 현재 디렉토리 안에 있는 파일 및 폴더 목록을 출력합니다.
    - ls -l : 상세정보 출력
    • ls -a : 숨긴 파일까지 표시
    • ls -al : 숨긴 파일까지 상세정보 포함해서 출력
  • cat 파일명 : 파일을 터미널에 출력합니다.
  • ./ : 현재 디렉토리를 의미합니다.
  • ../ : 현재 위치한 디렉토리를 기준으로 상위 디렉토리를 의미합니다.
  • touch 파일명 : 파일을 만듭니다.
  • history : 사용한 명령어의 기록을 볼 수 있습니다.

2) 가상환경 만들기

a. 가상환경이 필요한 이유

  • 가상 환경을 이야기하기 전에 가상 환경이 왜 필요한지 이야기해야 합니다. 두 개의 어플리케이션을 개발한다고 했을 때 두 어플리케이션에 필요한 버전의 python 패키지가 다를 수 있습니다. 문제는 한 환경에는 하나의 패키지만 설치할 수 있다는 점입니다.

  • 첫 번째 어플리케이션은 pandas 패키지가 1.1.2 이상이 필요하고, 두 번째 어플리케이션은 1.1.2 미만이 필요할 때 한 환경이 두 조건을 만족할 수 없는 이 상황을 충돌이 일어났다고 합니다. 이럴 때 필요한 것이 가상환경입니다.

가상환경은 개발하는 환경을 개발자의 personal한 환경에서 독립시키고 배포 환경에서도 똑같이 재현시킬 수 있도록 합니다.

  • 가상 환경을 만들면 한 컴퓨터에서 두 가지 패키지를 사용할 수 있습니다. 두 개의 어플리케이션 개발을 독립된 환경에서 개발하면 패키지들 간의 충돌을 미연에 방지할 수 있습니다.

b. 가상환경 만드는 방법

  • 가상환경은 아나콘다를 활용해서 만들 수 있습니다. 아나콘다를 사용하는 이유는 주피터 노트북, 가상환경, VS code 등 DS에 필요한 툴과 패키지가 담겨져 있어서 사용하기 편리하기 때문입니다.
$ conda --version #먼저 아나콘다의 버전을 확인하고
$ conda env list #미리 구축된 가상환경이 있는지 확인합니다. 
$ conda create --name 'name' python=3.8 #python 3.8 버전의 name이라는 이름의 가상환경을 만듭니다.
$ conda activate 'name' name 가상환경을 실행합니다.
  • conda activate를 사용할 때 주의할 점은 conda 가상환경이 중첩되서 실행될 수 있다는 점입니다.
  • 그렇기 떄문에 가상환경을 실행할 때에는 'base' 뿐만 아니라 어떤 가상환경도 실행되어 있지 않은 깨끗한 환경에서 시작할 수 있도록 해야합니다.
$ conda deactivate #실행되고 있는 가상환경을 종료합니다.
$ conda env remove --name 'name' #name 가상환경을 삭제합니다.
  • conda 외에도 pipenv, virtualenv 등의 도구로 가상환경을 만들 수 있습니다.

다음 포스팅에서는 협업에 필요한 환경인 git과 github에 대해 정리하도록 하겠습니다.

0개의 댓글