mamba / micromamba 요약 정리

mamba 와 conda 는 서로 교체 가능한 파이썬 패키지 매니저이다.

mamba는 conda와 같은 사용방법과 동일한 환경을 이어받은 패키지 관리자 이다. conda & mamba 명령을 서로 거의 동일하게 사용할 수 있다. conda 의 패키지 채널을 그대로 사용할 수 있다.

1
2
3
mamba install ...
mamba create -n ... -c ... ...
mamba list

여기서는 micromamba를 사용해보려고 한다.

micromamba 는 mamba의 소규모 버전으로 독립적 실행 파일이다. 다만 mamba 와 micromamba는 환경 구성이 좀 다르다. micromamba는 mamba와 다르게 MAMBA_ROOT_PREFIX 환경 변수를 기준으로 패키지 관리가 시작되고 환경이 생성된다.

  1. 설치
  2. micromamba 사용
  3. 가상환경 사용
  4. Repoquery 명령
  5. Uninstall
  6. 참고

1. micromamba 설치

https://mamba.readthedocs.io/en/latest/installation/micromamba-installation.html

Linux, macOS, or Git Bash on Windows install with:

1
"${SHELL}" <(curl -L micro.mamba.pm/install.sh)

Windows 에서 설치

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
PS> Invoke-Expression ((Invoke-WebRequest -Uri https://micro.mamba.pm/install.ps1).Content)
Downloading micromamba from https://github.com/mamba-org/micromamba-releases/releases/latest/download/micromamba-win-64
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
100 9280k 100 9280k 0 0 3355k 0 0:00:02 0:00:02 --:--:-- 10.8M

Installing micromamba to C:\Users\student\AppData\Local\micromamba

Adding C:\Users\student\AppData\Local\micromamba\micromamba.exe to PATH

Do you want to initialize micromamba for the shell activate command? (Y/n): y
Enter the path to the micromamba prefix (default: C:\Users\student\micromamba):
Initializing micromamba in C:\Users\student\micromamba
C:\Users\student\AppData\Local\micromamba\micromamba.exe
The following argument was not expected: -p
Run with --help for more information.

Update

1
PS> micromamba self-update

특정 버전으로 업데이트도 가능하다.

1
PS> micromamba self-update --version 1.4.6

micromamba 도움말.

1
PS> micromamba --help

2. micromamba 사용

micromamba의 가상환경은 micromamba activate /path/to/env 같이 활성화 시키는데, MAMBA_ROOT_PREFIX 환경변수를 기준으로 micromamba activate env 같이 사용할 수 있다.

현재 사용할 수 있는 환경을 출력.

1
2
3
4
5
PS> micromamba env list
Name Active Path
--------------------------------------------------------------
base C:\Users\student\micromamba
C:\Users\student\miniconda3\envs\myenv

micromamba 명령으로 대부분의 conda 명령을 동일하게 실행할 수 있다.

1
2
3
4
5
6
7
8
9
10
micromamba info                          # 현재 micromamba 환경정보

# 설치한 패키지 목록
micromamba list ananconda # Anaconda 정보
micromamba list python # python 패키지 정보

# upgrade
micromamba update pip # pip upgrade
micromamba update pip=25.0 # pip upgrade to 25.0
micromamba update conda # conda upgrade

3. 가상환경 사용

-n 옵션으로 가상환경을 지정하고 생성/수정/삭제를 할 수 있고, 더불어 패키지를 함께 관리할 수 있다.

가상환경 생성

가상환경과 패키지를 함께 설치한다.

1
PS> mamba create -n myenv <list of packages>

가상환경에 python 버전을 지정할 수 있다.

1
PS> micromamba create -n myenv python=3.12

가상환경에 설치 채널을 지정해 설치할 수 있다. 아래는 conda-forge 채널 이용

1
PS> micromamba create -n myenv jupyterlab -c conda-forge python=3.12
1
2
# 가상환경 목록
PS> micromamba env list

가상환경 활성화

가상환경은 가상환경 이름을 주어 활성화 한다.

1
2
PS> micromamba activate myenv
(myenv) PS C:\Users\student>

혹은 가상환경이 있는 위치의 절대경로를 주어 활성화 할 수 있다.

1
PS> micromamba activate /path/to/myenv

run 명령은 가상환경을 사용해서 특정 스크립트/명령를 직접 실행할 수 있다.

1
PS> micromamba run -n myenv mycommand

가상환경 myenv 의 서버 목록을 출력

1
2
3
4
5
(myenv) PS> micromamba run -n myenv jupyter server list
Currently running servers:
http://localhost:8888/?token=317c9380f9c3ed4ab6f836a7ffbc789497728820e9c60f47 :: D:\Jupyter_Hub
http://localhost:8585/ :: D:\Jupyter_Hub
http://desktop-goyangi:8686/ :: D:\Jupyter_Hub

사용중인 가상환경 비활성화

1
2
(myenv) PS> micromamba deactivate
PS>

모듈/패키지 설치

micromamba 명령을 사용해 모듈과 패키지를 설치 채널을 지정해서 설치할 수 있다.

활성화 myenv 가상환경에서 matplotlib 패키지를 설치한다.

1
2
3
4
5
6
7
(myenv) PS>micromamba install matplotlib -c conda-forge
Pinned packages:
- python=3.12
Transaction
Prefix: C:\Users\student\micromamba\envs\myenv
...

비활성 상태에서 myenv 가상환경에 패키지를 설치한다.

1
2
3
4
5
6
PS> micromamba -n myenv install matplotlib
Pinned packages:
- python=3.12

Transaction
Prefix: C:\Users\student\micromamba\envs\myenv

가상환경 업데이트

특정 가상환경을 모두 업데이트

1
micromamba update -n myenv --all

환경의 모든 패키지를 덥데이트 하려면

1
micromamba update --all

가상환경 제거

설치한 가상환경을 지운다

1
2
3
PS> micromamba env remove -n myenv --all
...
Proceed ([y]/n)? y

4. Repoquery 명령

mamba 는 새로운 패키지 검색 명령으로 repoquery 명령을 선보이고 있다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# 설치 가능한 모든 python 패키지 목록
$ micromamba repoquery search python

# 설치 가능한 python=버전 패키지 목록
$ micromamba repoquery search "python>=3.11"

# 설치 가능한 jupyterlab 버전 패키지 목록
$ micromamba repoquery search "jupyterlab>=4.0"


# 현재 환경의 jupyterlab 에 연관된 의존성 패키지 목록
$ micromamba repoquery depends jupyterlab

# 현재 환경의 jupyterlab 에 연관된 모든 의존성 세부 목록
$ micromamba repoquery depends jupyterlab --recursive

패키지 연관 의존성을 트리형식으로 출력할 수 있다.

1
2
3
4
5
6
7
8
# 현재 환경의 jupyterlab 에 연관된 의존성 패키지의 트리 목록
$ micromamba repoquery depends -t jupyterlab
jupyterlab[4.3.4]
├─ jupyter-lsp[2.2.0]
│ ├─ python already visited
│ └─ jupyter_server[2.15.0]
│ ├─ python already visited

And you can ask for the inverse, which packages depend on some other package (e.g. ipython) using whoneeds.

1
2
3
4
5
6
7
8
$ micromamba repoquery whoneeds ipython

Name Version Build Depends Channel
-------------------------------------------------------------------
jupyter_console 6.4.3 pyhd3eb1b0_0 ipython pkgs/main
ipykernel 6.9.1 py39haa95532_0 ipython >=7.23.1 pkgs/main
ipywidgets 7.6.5 pyhd3eb1b0_1 ipython >=4.0.0 pkgs/main
With the -t,--tree flag, you can get the same information in a tree.

트리 형식 출력

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
$ mamba repoquery whoneeds -t ipython

ipython[8.2.0]
├─ jupyter_console[6.4.3]
│ └─ jupyter[1.0.0]
├─ ipykernel[6.9.1]
│ ├─ notebook[6.4.8]
│ │ ├─ widgetsnbextension[3.5.2]
│ │ │ └─ ipywidgets[7.6.5]
│ │ │ └─ jupyter already visited
│ │ └─ jupyter already visited
│ ├─ jupyter_console already visited
│ ├─ ipywidgets already visited
│ ├─ jupyter already visited
│ └─ qtconsole[5.3.0]
│ └─ jupyter already visited
└─ ipywidgets already visited

5. Uninstall, Windows

Micromamba는 Windows 11에서 다음과 같은 방법으로 삭제할 수 있습니다.

  1. micromamba 설치 디렉토리 삭제:

micromamba가 설치된 디렉토리를 찾습니다. 일반적으로 C:\Users<사용자 이름>.local\bin 또는 C:\micromamba에 설치됩니다.
해당 디렉토리를 삭제합니다.

  1. 환경 변수에서 micromamba 경로 제거:

Windows 검색 창에서 “환경 변수”를 검색하고 “시스템 환경 변수 편집”을 엽니다.
“시스템 속성” 창에서 “환경 변수” 버튼을 클릭합니다.
“시스템 변수” 섹션에서 “Path” 변수를 선택하고 “편집” 버튼을 클릭합니다.
micromamba가 설치된 디렉토리 경로가 있는지 확인하고, 있다면 해당 경로를 삭제합니다.
“확인” 버튼을 클릭하여 변경 사항을 저장합니다.

  1. micromamba 관련 파일 삭제:

C:\Users<사용자 이름>.condarc 파일을 삭제합니다. (존재하는 경우)
C:\Users<사용자 이름>.mambarc 파일을 삭제합니다. (존재하는 경우)

C:\Users<사용자 이름>\AppData\Local\micromamba (존재하는 경우)

  1. (선택 사항) micromamba 설치 시 생성된 바로가기 삭제:

micromamba 설치 시 생성된 바로가기가 있다면 삭제합니다.

  1. (선택 사항) micromamba와 관련된 가상 환경 삭제:

micromamba를 사용하여 생성한 가상 환경이 있다면 해당 디렉토리를 삭제합니다. 가상 환경은 일반적으로 C:\Users<사용자 이름>.micromamba\envs 디렉토리에 저장됩니다.


참고

Author

Gangtai Goh

Posted on

2025-03-11

Updated on

2025-03-12

Licensed under

댓글