본문 바로가기
C.W.K.
Stream
Lesson 03 of 05 · published

매일 치는 conda 명령

~13 min · conda, commands, envs, workflow

Level 0입문자
0 XP0/55 lessons0/16 achievements
0/80 XP to next level80 XP to go0% complete

conda 명령은 환경 관리패키지 관리를 나누고, 두 작업 모두 현재 활성 환경을 중심으로 동작해.

환경. conda create --name myenv python=3.12는 Python 3.12를 쓰는 새 환경을 만들어. conda activate myenv로 셸을 전환하면 프롬프트 앞에 (myenv)가 붙고, conda deactivate로 빠져나와. conda env list는 모든 환경을 보여 주며 conda remove --name myenv --all은 지정한 환경을 완전히 지워.

패키지. conda install <pkg>는 현재 활성 환경에 패키지를 설치해. conda install -c conda-forge <pkg>처럼 특정 channel을 지정할 수도 있어. conda update --all은 환경의 모든 패키지를 올리고, conda list는 설치 목록을 보여 주며, conda remove <pkg>는 패키지를 제거해.

재현성. conda env export > environment.yml은 환경을 YAML로 내보내. 다른 컴퓨터에서는 conda env create -f environment.yml로 다시 만들고, 기존 환경에는 conda env update -f environment.yml로 변경을 적용해.

Code

환경 라이프사이클·bash
# 생성
conda create --name dl python=3.12

# 활성화
conda activate dl
# prompt 가 (dl) 됨

# 사용
conda install pytorch torchvision -c pytorch -c conda-forge
conda install jupyterlab pandas matplotlib

# 뭐 깔렸나
conda list

# 떠나기
conda deactivate

# 모든 env 목록
conda env list
#   base                  /Users/you/miniconda3
# * dl                    /Users/you/miniconda3/envs/dl
#   web                   /Users/you/miniconda3/envs/web

# 삭제
conda remove --name dl --all
재현 가능한 환경 파일·bash
# 현재 env export
conda env export > environment.yml

# 또는 명시 install 한 것만 export (공유에 더 깔끔)
conda env export --from-history > environment.yml

# 다른 머신에서 재생성
conda env create -f environment.yml

# 변경된 environment.yml 에서 기존 env 업데이트
conda env update -f environment.yml --prune
--from-history 언제 쓰나·yaml
# --from-history 없이 (전체 export — 모든 transitive dep)
name: dl
channels:
  - conda-forge
  - pytorch
dependencies:
  - python=3.12.4=h99cad12_0    # 정확한 빌드 hash
  - pytorch=2.4.0=py3.12_0
  - numpy=1.26.4=py312h7f4f0e0_0
  # ... 200+ 더, 다 빌드 hash 와 함께

# --from-history 와 함께 (너가 install 한 것만)
name: dl
channels:
  - conda-forge
  - pytorch
dependencies:
  - python=3.12
  - pytorch
  - jupyterlab
  - pandas
  - matplotlib
# 플랫폼 간 공유에 더 깔끔; conda 가 타겟 머신에서 다시 resolve.

External links

Exercise

'conda create --name scratch python=3.12 && conda activate scratch && conda install -c conda-forge numpy pandas jupyterlab'로 새 환경을 만들어. 이어서 'conda env export --from-history > /tmp/env.yml'을 실행하고 내용을 읽어. 저장소의 environment.yml에는 이렇게 --from-history로 만든 결과를 넣는 편이 좋아.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.