https://www.anaconda.com/ https://www.anaconda.com/download anaconda常用命令
创建一个新的虚拟环境
conda create --name jupyter_venv python=3.12
激活虚拟环境
conda activate jupyter_venv
退出当前虚拟环境
conda deactivate
删除某个虚拟环境
conda remove -n your_env_name --all
其中,-n与--name等价,表示虚拟环境名
conda env list
conda list
conda install 依赖包名称
|
|
python
下载
https://www.python.org/
https://www.python.org/downloads/windows/
环境变量 - windows ``` D:\app\py312\Scripts\ D:\app\py312\ ``` sqlite3 - python3.10自身以及之前的版本,需要在setup.py中添加sqlite3的include 路径 - python3.11以及之后的版本,可以设置环境变量,在Python编辑时会读取环境变量指定的位置 ``` export LD_LIBRARY_PATH=/wks/python/ubuntu_sqlite3/lib:$LD_LIBRARY_PATH export LD_LIBRARY_PATH=/wks/python/ubuntu_ssl3/lib64:$LD_LIBRARY_PATH export PYTHON_SSL_DEFAULT=/wks/python/ubuntu_ssl3 # 其中PYTHON_SSL_DEFAULT不加有时也可以 #下面两行命令相对底层,直接在编译配置层面加入指定的源码文件目录及库文件目录 export CFLAGS="-I/wks/python/ubuntu_sqlite3/include $CFLAGS" export LDFLAGS="-L/wks/python/ubuntu_sqlite3/lib $LDFLAGS" ```
|
|
系统依赖包 apt list |grep libffi-dev apt list |grep liblzma-dev apt list |grep libsqlite3-dev sudo apt-get update sudo apt-get install libffi-dev sudo apt-get install liblzma-dev sudo apt-get install libsqlite3-dev sudo apt-get install libssl-dev sudo apt-get install libreadline-dev sudo apt-get install libbz2-dev sqlite3
https://www.sqlite.org
mkdir /opt/python/ubuntu_sqlite3/
unzip sqlite-src-3480000.zip
cd sqlite-src-3480000/
ls
./configure --prefix=/opt/python/ubuntu_sqlite3/
make
make install
xt@ai:/opt/python$ cd ubuntu_sqlite3/
xt@ai:/opt/python/ubuntu_sqlite3$ cd bin/
xt@ai:/opt/python/ubuntu_sqlite3/bin$ ./sqlite3
SQLite version 3.48.0 2025-01-14 11:05:00
Enter ".help" for usage hints.
Connected to a transient in-memory database.
Use ".open FILENAME" to reopen on a persistent database.
openssl wget https://www.openssl.org/source/openssl-3.3.2.tar.gz --no-check-certificate mkdir /opt/python/ubuntu_ssl3 tar -xvf openssl-3.3.2.tar.gz cd openssl-3.3.2/ ./config shared --prefix=/opt/python/ubuntu_ssl3 sudo make sudo make install
export LD_LIBRARY_PATH=/opt/python/ubuntu_sqlite3/lib:$LD_LIBRARY_PATH export LD_LIBRARY_PATH=/opt/python/ubuntu_ssl3/lib64:$LD_LIBRARY_PATH export PYTHON_SSL_DEFAULT=/opt/python/ubuntu_ssl3 # 其中PYTHON_SSL_DEFAULT不加有时也可以 #下面两行命令相对底层,直接在编译配置层面加入指定的源码文件目录及库文件目录 export CFLAGS="-I/opt/python/ubuntu_sqlite3/include $CFLAGS" export LDFLAGS="-L/opt/python/ubuntu_sqlite3/lib $LDFLAGS" tar -xvf Python-3.12.9.tar.xz mkdir /opt/python/ubuntu_py3129_gpu cd Python-3.12.9 ./configure --prefix=/opt/python/ubuntu_py3129_gpu --enable-optimizations 下面这种情况是不行的,如果出现这种情况,重新源码编译sqlite3 checking for sqlite3 >= 3.7.15... yes checking for sqlite3.h... yes checking for sqlite3_bind_double in -lsqlite3... no checking for sqlite3_column_decltype in -lsqlite3... no checking for sqlite3_column_double in -lsqlite3... no checking for sqlite3_complete in -lsqlite3... no checking for sqlite3_progress_handler in -lsqlite3... no checking for sqlite3_result_double in -lsqlite3... no checking for sqlite3_set_authorizer in -lsqlite3... no checking for sqlite3_trace_v2 in -lsqlite3... no checking for sqlite3_trace in -lsqlite3... no checking for sqlite3_value_double in -lsqlite3... no checking for sqlite3_load_extension in -lsqlite3... no checking for sqlite3_serialize in -lsqlite3... no checking for stdlib extension module _sqlite3... missing 下面的情况是可以的,重在最后的checking _sqlite3 为yes checking for sqlite3 >= 3.7.15... no checking for sqlite3.h... no checking for sqlite3 >= 3.7.15... no checking for sqlite3.h... yes checking for sqlite3_bind_double in -lsqlite3... yes 几个yes checking for stdlib extension module _sqlite3... yes checking for stdlib extension module zlib... yes checking for stdlib extension module _bz2... yes checking for stdlib extension module _lzma... yes checking for stdlib extension module _ssl... yes checking for stdlib extension module _hashlib... yes checking for stdlib extension module _ctypes_test... yes make / make clean 注意下面不会出现_ssl,前面也不会提示_sqlite3禁用或找不到 The necessary bits to build these optional modules were not found: _curses _curses_panel _dbm _gdbm _lzma _tkinter nis readline make install chown -R xt:xt /opt/python/ 环境变量
#export PYTHONPATH=自己的工作目录
export PATH=/opt/python/ubuntu_py3129/bin:$PATH
cd /opt/python/ubuntu_py3129_gpu/bin
ln -s python3 python
ln -s pip3 pip
which python
/opt/python/ubuntu_py3129/bin/python
which pip
/opt/python/ubuntu_py3129/bin/pip
|
sudo apt-get update
sudo apt-get install --reinstall openssl
xt@xuetu:~$ openssl version
OpenSSL 3.0.2 15 Mar 2022 (Library: OpenSSL 3.0.2 15 Mar 2022)
xt@xuetu:~$ ssh -V
OpenSSH_8.9p1 Ubuntu-3ubuntu0.11, OpenSSL 3.0.2 15 Mar 2022
尽量安装3.0.2版本,这个与ubuntu(22.04.05)自带的版本一致
如果安装的3.3版本导致ssh无法使用,则注释环境变量的Lib库路径即可
|
目前ubuntu最高版本的libffi为8,低一点的ubuntu为7, 这涉及将一个ubuntu上编译好的python直接COPY到另外一个ubuntu上是否依然能用 $ find /usr/ -name libffi* /usr/share/doc/libffi8 /usr/lib/x86_64-linux-gnu/libffi.so.8 /usr/lib/x86_64-linux-gnu/libffi.so.8.1.4 mkdir /wks/python/ubuntu_sqlite3/ unzip sqlite-src-3480000.zip cd sqlite-src-3480000/ ls ./configure --prefix=/wks/python/ubuntu_sqlite3/ make make install openssl 尽量选择与系统默认版本贴近的openssl版本,避免影响系统运行 $ openssl version OpenSSL 3.0.13 30 Jan 2024 (Library: OpenSSL 3.0.13 30 Jan 2024) wget https://github.com/openssl/openssl/releases/download/openssl-3.0.16/openssl-3.0.16.tar.gz tar -xvf openssl-3.0.16.tar.gz cd openssl-3.0.16/ mkdir /wks/python/ubuntu_ssl3 ./config shared --prefix=/wks/python/ubuntu_ssl3 make make install #添加到环境变量 export LD_LIBRARY_PATH=/wks/python/ubuntu_sqlite3/lib:$LD_LIBRARY_PATH export LD_LIBRARY_PATH=/wks/python/ubuntu_ssl3/lib64:$LD_LIBRARY_PATH export PYTHON_SSL_DEFAULT=/wks/python/ubuntu_ssl3 # 其中PYTHON_SSL_DEFAULT不加有时也可以 #下面两行在命令行执行即可,即编译时用一下,其他情况不用 #下面两行命令相对底层,直接在编译配置层面加入指定的源码文件目录及库文件目录 export CFLAGS="-I/wks/python/ubuntu_sqlite3/include $CFLAGS" export LDFLAGS="-L/wks/python/ubuntu_sqlite3/lib $LDFLAGS" tar -xvf Python-3.11.11.tar.xz cd Python-3.11.11/ mkdir /wks/python/ubuntu_py311_gpu ./configure --prefix=/wks/python/ubuntu_py311_gpu --enable-optimizations 几个重要配置检查 checking for stdlib extension module _sqlite3... yes checking for stdlib extension module _tkinter... missing checking for stdlib extension module _uuid... yes checking for stdlib extension module zlib... yes checking for stdlib extension module _bz2... yes checking for stdlib extension module _lzma... missing checking for stdlib extension module _ssl... yes 主要是sqlite3,ssl,zlib,bz安装就可以,下面的两个可安也可不安,其他的就不用安装了,用不上 sudo apt-get install liblzma-dev sudo apt-get install tk-dev 如果ssl这项仍然没有yes,则可以参考sqlite的方式,直接将其添加到编译时环境变量中,如此必能找到 export CFLAGS="-I/wks/python/ubuntu_ssl3/include $CFLAGS" export LDFLAGS="-L/wks/python/ubuntu_ssl3/lib64 $LDFLAGS" make / make clean make install #export PYTHONPATH=自己的工作目录 export PATH=/wks/python/ubuntu_py311_gpu/bin:$PATH cd /wks/python/ubuntu_py311_gpu/bin ln -s python3 python ln -s pip3 pip which python /wks/python/ubuntu_py311_gpu/bin/python which pip /wks/python/ubuntu_py311_gpu/bin/pip |
- 系统依赖
```
sudo apt install -y liblzma-dev
```
```
xt@qisan:/wks/python/soft$ tar -xvf Python-3.10.9.tgz
cd Python-3.10.9/
vim setup.py
sqlite_inc_paths = [ '/usr/include',
'/usr/include/sqlite',
'/usr/include/sqlite3',
'/usr/local/include',
'/usr/local/include/sqlite',
'/usr/local/include/sqlite3',
'/data/jupyter/sqlite3/include',
'/wks/python/ubuntu_sqlite3/include'
]
./configure --prefix=/wks/python/py310 --with-openssl=/wks/python/ubuntu_ssl3 --enable-optimizations --enable-loadable-sqlite-extensions >/tmp/a.log
make
make install
```
ln -s python3 python
ln -s pip3 pip
$ which python
/wks/python/py310/bin/python
$ which pip
/wks/python/py310/bin/pip
``` rm -rf /wks/python/py310 mkdir /wks/python/py310 cd /wks/python/soft/Python-3.10.9/ ./configure --prefix=/wks/python/py310 --with-openssl=/wks/python/ubuntu_ssl3 --enable-optimizations --enable-loadable-sqlite-extensions >/tmp/a.log make make install cd /wks/python/py310/bin/ ln -s python3 python ln -s pip3 pip ``` |
|
|
|
|
|
|
|
-i https://pypi.tuna.tsinghua.edu.cn/simple
pip install --upgrade pip -i https://pypi.tuna.tsinghua.edu.cn/simple #pip要求系统具有SSL
pip install lightgbm xgboost statsmodels -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install pandas sklearn-pandas scikit-learn hmmlearn sklearn_crfsuite chinese_calendar matplotlib pydotplus openpyxl pdfminer.six -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install jupyter jupyter_contrib_nbextensions -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install featuretools feature-engine tsfresh mlxtend shap seaborn pyod copulas cx_Oracle pymysql==1.0.2 sqlalchemy -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install catboost -i https://pypi.tuna.tsinghua.edu.cn/simple
windows 安装遇到异常时,可尝试以下操作
下载windows SDK相关组件
https://visualstudio.microsoft.com/zh-hans/visual-cpp-build-tools/
安装C++相关,安装windows SDK
vs_BuildTools
D:\app\py313\python.exe -m pip install --upgrade pip -i https://pypi.tuna.tsinghua.edu.cn/simple
conda install catboost
export RUSTUP_DIST_SERVER=https://mirrors.ustc.edu.cn/rust-static
export RUSTUP_UPDATE_ROOT=https://mirrors.ustc.edu.cn/rust-static/rustup
wget https://sh.rustup.rs -O rustup-init.sh && chmod +x rustup-init.sh && ./rustup-init.sh
|
|
安装最新版
```
pip install torch torchvision torchaudio onnx onnxruntime -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install onnx onnxruntime skl2onnx -i https://pypi.tuna.tsinghua.edu.cn/simple
```
- 2.10
```
pip install torch-scatter -f https://data.pyg.org/whl/torch-2.10.0+cpu.html
pip install torch-sparse -f https://data.pyg.org/whl/torch-2.10.0+cpu.html
pip install torch-geometric
pip install torch-cluster -f https://data.pyg.org/whl/torch-2.10.0+cpu.html
pip install torch-spline-conv -f https://data.pyg.org/whl/torch-2.10.0+cpu.html
```
- torch2.5 无大模型
```
>>> import torch
>>> torch.__version__
'2.5.1+cu124'
pip install torch==2.5.1 torchvision==0.20.1 torchaudio==2.5.1 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install torch-scatter -f https://data.pyg.org/whl/torch-2.5.1+cu124.html
pip install torch-sparse -f https://data.pyg.org/whl/torch-2.5.1+cu124.html
pip install torch-geometric
pip install torch-cluster -f https://data.pyg.org/whl/torch-2.5.1+cu124.html
pip install torch-spline-conv -f https://data.pyg.org/whl/torch-2.5.1+cu124.html
```
- torch2.4+大模型版
```
pip install torch==2.4.0 torchaudio==2.4.0 torchvision==0.19.0 transformers==4.44.0 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install tokenizers==0.19.1 triton==3.0.0 vllm==0.5.5 vllm-flash-attn==2.6.1 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install torch-scatter -f https://data.pyg.org/whl/torch-2.4.0+cu124.html
pip install torch-sparse -f https://data.pyg.org/whl/torch-2.4.0+cu124.html
pip install torch-geometric
pip install torch-cluster -f https://data.pyg.org/whl/torch-2.4.0+cu124.html
pip install torch-spline-conv -f https://data.pyg.org/whl/torch-2.4.0+cu124.html
pip install pyg-lib -f https://data.pyg.org/whl/torch-2.4.0+cu124.html
```
- 常用
```
升级gcc
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install gcc-6 g++-6
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-6 60 --slave /usr/bin/g++ g++ /usr/bin/g++-6
```
## 卸载
```
pip uninstall torch-scatter torch-sparse torch-geometric torch-cluster torch-spline-conv
pip uninstall torch torchvision torchaudio
```
## 其他
```
目前torch-scatter在torch2.6.0版本上,不支持,因此回到2.5.1版,这就需要卸载现在的torch2.6.0
i-aml@ml python]$ pip list|grep torch
torch 2.5.1
torch_cluster 1.6.3+pt25cu124
torch-geometric 2.6.1
torch_scatter 2.1.2+pt25cpu
torch_sparse 0.6.18+pt25cu124
torch_spline_conv 1.2.2+pt25cu124
torchaudio 2.5.1
torchvision 0.20.1
pip install torch==2.5.1 torchvision==0.20.1 torchaudio==2.5.1 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install torch-scatter -f https://data.pyg.org/whl/torch-2.5.1+cu124.html
pip install torch-sparse -f https://data.pyg.org/whl/torch-2.5.1+cu124.html
pip install torch-geometric
pip install torch-cluster -f https://data.pyg.org/whl/torch-2.5.1+cu124.html
pip install torch-spline-conv -f https://data.pyg.org/whl/torch-2.5.1+cu124.html
https://pytorch.org/get-started/locally/
conda install pytorch torchvision torchaudio cpuonly -c pytorch
或
pip install torch torchvision torchaudio
>>> import torch
>>> torch.__version__
'1.13.1+cpu'
pip install torch-scatter -f https://data.pyg.org/whl/torch-2.0.0+cpu.html
pip install torch-sparse -f https://data.pyg.org/whl/torch-1.13.1+cpu.html
pip install torch-geometric
pip install torch-cluster -f https://data.pyg.org/whl/torch-1.13.1+cpu.html
pip install torch-spline-conv -f https://data.pyg.org/whl/torch-1.13.1+cpu.html
>>> import torch
>>> torch.__version__
'1.13.1+cu117'
2.2.2+cu121
pip install torch-scatter -f https://data.pyg.org/whl/torch-1.13.1+cu117.html
pip install torch-sparse -f https://data.pyg.org/whl/torch-1.13.1+cu117.html
pip install torch-geometric
pip install torch-cluster -f https://data.pyg.org/whl/torch-1.13.1+cu117.html
pip install torch-spline-conv -f https://data.pyg.org/whl/torch-1.13.1+cu117.html
>>> import torch
>>> torch.__version__
'2.0.0'
pip install torch-scatter -f https://data.pyg.org/whl/torch-2.0.0+cpu.html
pip install torch-sparse -f https://data.pyg.org/whl/torch-2.0.0+cpu.html
pip install torch-geometric
pip install torch-cluster -f https://data.pyg.org/whl/torch-2.0.0+cpu.html
pip install torch-spline-conv -f https://data.pyg.org/whl/torch-2.0.0+cpu.html
2.2.2+cu121
pip install torch-scatter -f https://data.pyg.org/whl/torch-2.2.2+cu121.html
pip install torch-sparse -f https://data.pyg.org/whl/torch-2.2.2+cu121.html
pip install torch-geometric
pip install torch-cluster -f https://data.pyg.org/whl/torch-2.2.2+cu121.html
pip install torch-spline-conv -f https://data.pyg.org/whl/torch-2.2.2+cu121.html
>>> import torch
>>> torch.__version__
'2.5.1+cu124'
pip install torch-scatter -f https://data.pyg.org/whl/torch-2.5.1+cu124.html
pip install torch-sparse -f https://data.pyg.org/whl/torch-2.5.1+cu124.html
pip install torch-geometric
pip install torch-cluster -f https://data.pyg.org/whl/torch-2.5.1+cu124.html
pip install torch-spline-conv -f https://data.pyg.org/whl/torch-2.5.1+cu124.html
>>> import torch
>>> torch.__version__
'2.6.0+cu124'
针对2.6.0版本,下面的安装不成功,但采用2.5.1版本的torch,就可以成功
pip install torch-scatter -f https://data.pyg.org/whl/torch-2.6.0+cu124.html
pip install torch-sparse -f https://data.pyg.org/whl/torch-2.6.0+cu124.html
pip install torch-geometric
pip install torch-cluster -f https://data.pyg.org/whl/torch-2.6.0+cu124.html
pip install torch-spline-conv -f https://data.pyg.org/whl/torch-2.6.0+cu124.html
```
|
清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/ 中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/ 豆瓣(douban) http://pypi.douban.com/simple/ 阿里云 http://mirrors.aliyun.com/pypi/simple/ 华为云镜像源 https://developer.huaweicloud.com/mirror/#/pypi_simple
|
pip install jieba -i https://pypi.tuna.tsinghua.edu.cn/simple pip install nltk -i https://pypi.tuna.tsinghua.edu.cn/simple pip install jpype1 -i https://pypi.tuna.tsinghua.edu.cn/simple pip install gensim -i https://pypi.tuna.tsinghua.edu.cn/simple pip install rank_bm25 -i https://pypi.tuna.tsinghua.edu.cn/simple |
pip install dtreeviz conda install python-graphviz graphviz的系统依赖 在 Python 中使用 pip 安装 Graphviz 库时,需执行以下命令: pip install graphviz 需要注意的是, pip install graphviz仅安装用于生成 DOT 文件及调用 Graphviz 工具的 Python 接口模块, 而实际渲染图形的功能依赖系统级 Graphviz 软件。 因此,需额外完成以下步骤: ubuntu系统 sudo apt install graphviz https://graphviz.org/download/ windows系统使用conda安装可自动下载相关的依赖包 conda install python-graphviz D3 pip install d3blocks D3生成的html,使用下面的方法可以转图片 pip install pyppeteer
|
python -m venv .venv source .venv/bin/activate deactivate python -m venv /path/to/venv rm -rf .venv 虚拟环境的独立性: 虚拟环境中安装的包不会影响系统 Python 环境,也不会被系统 Python 环境的包影响。 虚拟环境的存储位置: 虚拟环境通常存储在项目目录下,但也可以指定其他位置。例如: python -m venv /path/to/venv |
https://pytorch-geometric.readthedocs.io/en/latest/notes/installation.html
pip install torch-scatter -f https://data.pyg.org/whl/torch-2.4.0+cu124.html
pip install torch-sparse -f https://data.pyg.org/whl/torch-2.4.0+cu124.html
pip install torch-geometric
pip install torch-cluster -f https://data.pyg.org/whl/torch-2.4.0+cu124.html
pip install torch-spline-conv -f https://data.pyg.org/whl/torch-2.4.0+cu124.html
pip install pyg-lib -f https://data.pyg.org/whl/torch-2.4.0+cu124.html
torch2.5 无大模型
pip install torch==2.5.1 torchvision==0.20.1 torchaudio==2.5.1 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install torch-scatter -f https://data.pyg.org/whl/torch-2.5.1+cu124.html
pip install torch-sparse -f https://data.pyg.org/whl/torch-2.5.1+cu124.html
pip install torch-geometric
pip install torch-cluster -f https://data.pyg.org/whl/torch-2.5.1+cu124.html
pip install torch-spline-conv -f https://data.pyg.org/whl/torch-2.5.1+cu124.html
|
|
|
下载micromamba # Linux Intel (x86_64): curl -Ls https://micro.mamba.pm/api/micromamba/linux-64/latest | tar -xvj bin/micromamba #配置环境变量 mkdir /ai/app/micromamba export MAMBA_ROOT_PREFIX=/ai/app/micromamba
## 国内源
有国内源可以解决下载慢的问题。推荐使用**清华大学开源软件镜像站**(TUNA),同步频率高且稳定。
这里有**三种配置方法**,前两种方法用于临时加速,第三种方法是设置好之后永久生效的,最推荐。
### ⚡️ 方法一:临时加速(单次命令)
最简单的方法,就是在安装命令中临时加上 `-c` 参数,直接指定清华源。只对当前这一次安装生效。
```bash
micromamba install build wheel -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
```
### 💡 方法二:环境变量(当前终端会话)
在当前终端窗口设置环境变量,这个窗口里的所有 `micromamba` 命令都会走国内源。关掉窗口就失效了。
```bash
export MAMBA_CHANNELS="https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/,https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r/,https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/"
```
### ✅ 方法三:永久配置(强烈推荐)
这是最彻底的解决办法。通过修改配置文件,让国内源永久生效。
1. **创建配置文件**:在终端执行以下命令,创建 `~/.mambarc` 文件并写入清华源的配置。
```bash
mkdir -p ~/.mamba
cat > ~/.mambarc << "EOF"
channels:
- conda-forge
- defaults
show_channel_urls: true
default_channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
pytorch-lts: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
EOF
```
2. **重新运行安装命令**:配置完成后,直接运行之前的安装命令,速度应该会快很多。
```bash
micromamba install build wheel
```
如果速度还是不理想,或者遇到连接问题,也可以尝试把配置里的 `https` 改成 `http`。希望能帮你尽快解决这个问题~
https://github.com/mamba-org/mamba/releases
micromamba is a fully statically-linked, self-contained, executable. This means that the base environment is completely empty. The configuration for micromamba is slightly different, namely all environments and cache will be created by default under the MAMBA_ROOT_PREFIX environment variable. There is also no pre-configured .condarc/.mambarc shipped with micromamba (they are however still read if present).
micromamba 是一个完全静态链接、自包含的可执行文件。这意味着基础环境完全为空。micromamba 的配置略有不同,所有环境和缓存将默认在 MAMBA_ROOT_PREFIX 环境变量下创建。micromamba 本身没有预配置的 .condarc/.mambarc 文件(但如果存在,仍会读取)。
安装
https://mamba.readthedocs.io/en/latest/installation/micromamba-installation.html
# Linux Intel (x86_64):
curl -Ls https://micro.mamba.pm/api/micromamba/linux-64/latest | tar -xvj bin/micromamba
xt@ii:~$ ll bin/micromamba
-rwxrwxr-x 1 xt xt 17017808 Jul 28 23:39 bin/micromamba*
If you want to quickly use micromamba in an ad-hoc usecase, you can run
mkdir /ai/app/micromamba
export MAMBA_ROOT_PREFIX=/ai/app/micromamba # optional, defaults to ~/micromamba
eval "$(./bin/micromamba shell hook -s posix)
# Linux/bash:
./bin/micromamba shell init -s bash -r /ai/app/micromamba # this writes to your .bashrc file
# sourcing the bashrc file incorporates the changes into the running session.
# better yet, restart your terminal!
source ~/.bashrc
其中下面这句话少了一个逗号,手工加上即可
eval "$(./bin/micromamba shell hook -s posix)"
|
vim .bash_profile ``` export MAMBA_EXE='/python/bin/micromamba'; export MAMBA_ROOT_PREFIX='/python/app/micromamba'; export PATH=/python/bin:$PATH ``` [python@localhost ~]$ which micromamba /python/bin/micromamba ``` micromamba shell init --shell bash --root-prefix=$MAMBA_ROOT_PREFIX . ./.bash_profile micromamba activate py310 ``` micromamba create -n py369 python=3.6.9 micromamba activate py369 micromamba run -n pyai mycommand 进入base环境安装某个包 micromamba activate # this activates the base environment micromamba install python=3.6 jupyter -c conda-forge micromamba env list micromamba remove -n py310 --all 这里存在一个问题,remove环境后,env list依然能查到,可以进入envs目录手工删除相关目录 cd /ai/app/micromamba/envs/ rm -rf py3* 创建新的环境 micromamba create --name env_name -c conda-forge micromamba activate env_name (env_name) xt@ii:/ai/app/micromamba/envs$ cd /ai/app/micromamba/ (env_name) xt@ii:/ai/app/micromamba$ ls conda-meta envs etc pkgs 基础环境base就是原环境,新创建的环境env_name会在micromamba下的envs下开辟一个新目录做为虚拟环境使用 (env_name) xt@ii:/ai/app/micromamba$ cd envs/ (env_name) xt@ii:/ai/app/micromamba/envs$ ls env_name (env_name) xt@ii:/ai/app/micromamba/envs$ cd env_name (env_name) xt@ii:/ai/app/micromamba/envs/env_name$ ls conda-meta include lib share 查询软件依赖 $ mamba repoquery depends -t salmon
mamba
mamba 是使用C++ 对conda包管理器的重实现。
使用多线程来并行下载仓库数据和包文件
采用libsolv来更快的解决包依赖关联,这是Red Hat,Fedora和OpenSuse的RPM 包管理器中使用的先进的库
mamba核心部分使用C++来获取最大效率
最重要的是mamba有着和conda一样的命令, 没啥学习成本就可以迁移到mamba。
The mamba-org 组织有多个Mamba 支持:
mamba 基于Pyhton命令行实现,替换conda, 提供高速,更可靠的环境管理
micromamba 纯C++实现,单个可执行文件
libmamba 一个C++库,为mamba和micromamba提供低层级和高层级的API接口。
https://www.cnblogs.com/huanping/p/16861271.html
https://www.jb51.net/python/34445249f.htm
micromamba create --name py311 python=3.11 -c conda-forge
micromamba activate py311
micromamba install jupyter -c conda-forge
micromamba run -n py311 mycommand
(py311) xt@ii:~$ which jupyter /ai/app/micromamba/envs/py311/bin/jupyter (py311) xt@ii:~$ jupyter在py311环境下,但py311环境没有安装torch,于是它去默认的命令行环境找了torch (py311) xt@ii:~$ python Python 3.11.13 | packaged by conda-forge | (main, Jun 4 2025, 14:48:23) [GCC 13.3.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>> import torch >>> >>> >>> torch.__version__ '2.5.1+cu124' >>> torch.__file__ '/wks/python/py1/lib/python3.11/site-packages/torch/__init__.py' (py311) xt@ii:~$ which python /ai/app/micromamba/envs/py311/bin/python (py311) xt@ii:~$ micromamba deactivate (base) xt@ii:~$ which python /wks/python/py1/bin/python |
|
纯机器学习环境 micromamba create -n pyml python=3.11 micromamba activate pyml micromamba run -n pyml mycommand 深度学习环境·简易版:只有torch及图算法相关,无大模型 micromamba create -n pydl python=3.11 micromamba activate pydl micromamba run -n pydl mycommand
micromamba install -c pytorch -c conda-forge pytorch==2.4.0 torchaudio==2.4.0 torchvision==0.19.0
micromamba install -c pytorch -c pyg -c conda-forge pyg-lib torch-scatter torch-geometric
|
这两条命令的唯一区别就在于 软件包的下载来源(channel): micromamba install jupyter 使用默认配置的 channel(通常是 defaults,即 Anaconda 官方源)来安装 Jupyter。 micromamba install jupyter -c conda-forge 明确指定使用 conda-forge 这个社区维护的 channel 来安装 Jupyter。 为什么会有区别? defaults:由 Anaconda 官方维护,更新较慢,某些包可能不是最新版本,或者缺少某些构建。 conda-forge:由社区维护,更新更频繁,包版本更全,很多用户(包括官方文档)推荐使用它来安装 Jupyter 等科学计算工具。 举个例子: 如果你运行第一条命令,可能会得到一个稍旧版本的 Jupyter。 如果你运行第二条命令,通常会得到更新、更完整、兼容性更好的版本。 |
pip install 'polars[all]' micromamba install -c conda-forge polars Pandas交互 micromamba install -c conda-forge polars-pandas 与Pandas DataFrame互转 Excel支持 micromamba install -c conda-forge polars-excel 读写Excel文件 数据库连接 micromamba install -c conda-forge polars-database 连接数据库 PyArrow micromamba install -c conda-forge polars-pyarrow 使用PyArrow后端 完整功能 micromamba install -c conda-forge polars-all 所有功能(体积较大) micromamba install -c conda-forge request=2.83.1 micromamba install lightgbm xgboost statsmodels pip install -i sklearn_crfsuite chinese_calendar -i https://pypi.tuna.tsinghua.edu.cn/simple micromamba install pandas sklearn-pandas scikit-learn hmmlearn matplotlib pydotplus openpyxl pdfminer.six micromamba install jupyter jupyter_contrib_nbextensions pip install feature-engine -i https://pypi.tuna.tsinghua.edu.cn/simple micromamba install featuretools tsfresh mlxtend shap seaborn pyod copulas cx_Oracle pymysql==1.0.2 sqlalchemy micromamba install catboost 报错时清除缓存 micromamba clean --packages --tarballs micromamba clean --packages micromamba install request=2.83.1 -c conda-forge --force-reinstall 再不行,就删除这个损坏的目录 warning libmamba Invalid package cache, file 'C:\micromamba\pkgs\request-2.83.1-0\lib\node_modules\request\CHANGELOG.mg error libmamba Cannot find a valid extracted directory cache for 'request-2.83.1-0.tar.bz2' 再不行,使用pip安装 pip install request==2.83.1 最后发现是包名写错了 pip install requests==2.83.1 pip install requests |
micromamba create -n pyai python=3.11 micromamba activate pyai micromamba activate pyai micromamba run -n pyai mycommand 指定版本 micromamba install -c pytorch -c conda-forge pytorch==2.4.0 torchaudio==2.4.0 torchvision==0.19.0 micromamba install -c pytorch -c pyg -c conda-forge pyg-lib torch-scatter torch-geometric micromamba install -c pytorch -c conda-forge transformers=4.44 micromamba install tokenizers triton
#查看版本
micromamba search -c pytorch -c conda-forge pytorch
#GPU
micromamba install -c pytorch -c conda-forge pytorch torchvision torchaudio transformers=4.44
micromamba install -c pytorch -c pyg -c conda-forge pyg-lib torch-scatter torch-geometric
micromamba install tokenizers triton
指定版本
micromamba install -c pytorch -c conda-forge pytorch==2.4.0 torchaudio==2.4.0 torchvision==0.19.0
#CPU
micromamba install -c pytorch -c conda-forge pytorch-cpu torchvision-cpu torchaudio-cpu transformers=4.44
对于py3.11版本,需要使用pip安装下面的三个包
pip install torch-sparse -f https://data.pyg.org/whl/torch-2.7.1.html
pip install torch-cluster -f https://data.pyg.org/whl/torch-2.7.1.html
pip install torch-spline-conv -f https://data.pyg.org/whl/torch-2.7.1.html
pip uninstall torch-sparse
pip uninstall torch-cluster
pip uninstall torch-spline-conv
失败的案例 以下方案为失败的方案 micromamba create -n py39 python=3.9 micromamba activate py39 micromamba install -c conda-forge pytorch torchvision torchaudio micromamba install -c pytorch -c conda-forge pytorch torchvision torchaudio 仅下面这一行安装失败 micromamba install -c pyg torch-cluster torch-sparse torch-spline-conv torch-scatter torch-geometric llm@ii:~$ pip list|grep torch torch 2.4.0 torch_cluster 1.6.3+pt24cu124 torch-geometric 2.6.1 torch_scatter 2.1.2+pt24cu124 torch_sparse 0.6.18+pt24cu124 torch_spline_conv 1.2.2+pt24cu124 torchaudio 2.4.0 torchvision 0.19.0 micromamba create -n py310 python=3.10 micromamba activate py310 micromamba install -c pytorch -c conda-forge pytorch==2.4.0 torchaudio==2.4.0 torchvision==0.19.0 micromamba install -c pytorch -c pyg -c conda-forge torch_scatter==2.1.2 torch_cluster==1.6.3 torch_spline_conv==1.2.2 torch-geometric==2.6.1 torch_sparse==0.6.18 micromamba deactivate micromamba env list micromamba remove -n py39 --all micromamba search -c pytorch -c conda-forg pytorch_scatter micromamba search -c pyg torch_scatter micromamba create -n py313 python=3.13 micromamba activate py313 micromamba activate py313 micromamba run -n py313 mycommand micromamba install -c pytorch -c conda-forge pytorch torchaudio torchvision micromamba install -c pyg -c conda-forge torch_scatter torch_cluster torch_spline_conv torch-geometric torch_sparse micromamba install -c pyg -c conda-forge torch-scatter micromamba install -c pyg -c conda-forge torch-cluster micromamba search -c pyg -c conda-forge torch-cluster
|
前提:文件在其他环境安装好的 授权并添加环境变量 chown -R xt:xt /ai/app export PATH=/ai/app/bin:$PATH 本地用户设置 export MAMBA_ROOT_PREFIX=/ai/app/micromamba xt@kk:~$ which micromamba /ai/app/bin/micromamba eval "$(/ai/app/bin/micromamba shell hook -s bash)" #将mamba信息初始化到环境变量中 micromamba shell init -s bash -r /ai/app/micromamba source ~/.bashrc #激活并进入环境 micromamba activate pyai 下面的别名方式可行 alias pyai="micromamba activate pyai" 下面全路径方式的别名不可行 alias pyai="/ai/app/bin/micromamba activate pyai" export MAMBA_ROOT_PREFIX=/ai/app/micromamba export PATH=/ai/app/bin:$PATH alias py311="micromamba activate py311" |
- 使用 micromamba 按文件安装依赖的命令: - micromamba env create -f environment.yml - 如果你已经有一个环境,想更新它: - micromamba env update -f environment.yml environment.yml 示例格式:
```
name: myenv
channels:
- conda-forge
dependencies:
- python=3.10
- numpy
- pandas
- pip
- pip:
- -r requirements.txt
```
-注意:
- 你可以在 environment.yml 中通过 pip: 子段落引用 requirements.txt,从而同时安装 Conda 和 Pip 包。
只有 requirements.txt
```
name: myenv
channels:
- conda-forge
dependencies:
- python=3.10
- pip
- pip:
- -r requirements.txt
```
- micromamba env create -f environment.yml
|
``` micromamba env export > environment.yml micromamba env create -f environment.yml ``` ``` channels: - conda-forge - pytorch ``` 是一个安装通道,但pytorch也是, 不过pytorch是pytorch的通道,未完全摆脱系统依赖,因为torch依赖的太多了 使用场景 命令 说明 导出当前环境 micromamba env export > environment.yml 这是最基础的导出命令。 仅导出显式指定的包 micromamba env export --explicit 这会列出环境中所有通过 micromamba install 等命令直接安装的包,但不包括它们的依赖项。 指定环境名称 micromamba env export -n your_env_name > environment.yml |
centos7的证书旧时,需要先处理证书的问题 sudo yum install -y ca-certificates openssl sudo update-ca-trust force-enable sudo update-ca-trust extract # 临时生效 export SSL_CERT_FILE=/etc/ssl/certs/ca-bundle.crt micromamba env create -f env_centos7.yml echo 'export SSL_CERT_FILE=/etc/ssl/certs/ca-bundle.crt' >> ~/.bashrc |
|
**安装说明** - 找一个与线上机器同版本且环境一致的机器进行联网安装,安装完成后迁移到线上 - 若线上服务器可连网,则可直接在线上进行安装 - 安装过程会缓存下载的软件,因此安装的环境越多,对外部依赖就会越少 - micromamba是需要时下载,比如,gcc,cmake等软件若OS上没有就下载,有就优先使用已有 本地联网安装 生成micromamba软链接,自动判断Linux是x86_64还是ARM64 ``` cd /python/bin/ ./micromamba_setup.sh export PATH=/python/bin:$PATH $ which micromamba /python/bin/micromamba ``` 将mamba信息初始化到环境变量中 ``` mkdir -p /python/app/micromamba micromamba shell init -s bash -r /python/app/micromamba ``` 依赖包下载 将wks移动到工作目录,比如/python 若已经存在安装过的环境,则先删除 ``` cd /python/app/micromamba/envs/ rm -rf py310 ``` 进入项目目录,先下载软件 ``` cd /python/wks/tousu/ micromamba create -n py310 -f environment.yml --download-only cd /python/wks/tousu/ micromamba create -n py310 -f environment.yml --offline ``` 使用pip补充安装部分Python包 ``` micromamba activate py310 cd /python/app/wheelhouse pip install --no-index --find-links=./ -r requirements.txt ``` 如果缺少依赖包,则将缺失的依赖包补充到environment.yml文件,再次安装一次,已安装过的会自动跳过 添加python环境变量到PATH ``` export PATH=/python/app/micromamba/envs/py310/bin:$PATH $ which python /python/app/micromamba/envs/py310/bin/python ``` |
安装windows SDK 设置shell可以执行脚本 下载 Invoke-Webrequest -URI https://micro.mamba.pm/api/micromamba/win-64/latest -OutFile micromamba.tar.bz2 tar xf micromamba.tar.bz2 配置环境变量后初始化环境 1. 注意cmd与powershell的初始化命令不同 2. 注意初始化后要关闭执行窗口,打开新窗口执行micromamaba activate name 进行验证 https://mamba.readthedocs.io/en/latest/installation/micromamba-installation.html - Below are the commands to get micromamba installed in PowerShell. ``` Invoke-Webrequest -URI https://micro.mamba.pm/api/micromamba/win-64/latest -OutFile micromamba.tar.bz2 tar xf micromamba.tar.bz2 MOVE -Force Library\bin\micromamba.exe micromamba.exe .\micromamba.exe --help # You can use e.g. $HOME\micromambaenv as your base prefix $Env:MAMBA_ROOT_PREFIX="C:\Your\Root\Prefix" # Invoke the hook .\micromamba.exe shell hook -s powershell | Out-String | Invoke-Expression # ... or initialize the shell .\micromamba.exe shell init -s powershell -r C:\Your\Root\Prefix # and use micromamba directly micromamba create -f ./test/env_win.yaml -y micromamba activate yourenv ``` 操作记录
打开PowerShell
```
cd c:/
md micromamba
```
rsync -avP bin /mnt/c/micromamba/
```
PS C:\> cd .\micromamba\
PS C:\micromamba> ls
目录: C:\micromamba
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 2025/12/23 10:53 bin
```
WIN+S env 用户与系统都添加 MAMBA_ROOT_PREFIX=C:\micromamba %MAMBA_ROOT_PREFIX%\bin ``` PS C:\Users\itora> micromamba.exe shell init -s powershell -r C:\micromamba Init powershell profile at 'C:\Users\itora\Documents\WindowsPowerShell\profile.ps1' The following has been added in your "C:\\Users\\itora\\Documents\\WindowsPowerShell\\profile.ps1" file #region mamba initialize # !! Contents within this block are managed by 'mamba shell init' !! $Env:MAMBA_ROOT_PREFIX = "C:\micromamba" $Env:MAMBA_EXE = "C:\micromamba\bin\micromamba.exe" (& $Env:MAMBA_EXE 'shell' 'hook' -s 'powershell' -r $Env:MAMBA_ROOT_PREFIX) | Out-String | Invoke-Expression #endregion Windows long-path support already enabled. (Windows version = 10.0.26100) PS C:\Users\itora> ``` xt@qisan:/python/wks/tousu$ rsync -avP environment* /mnt/c/micromamba/ cd C:\micromamba\ micromamba create -f environment_windows.yml -y micromamba activate py310 (py310) PS C:\Users\itora> where.exe python C:\micromamba\envs\py310\python.exe C:\Users\itora\AppData\Local\Microsoft\WindowsApps\python.exe 将以下路径添加到path %MAMBA_ROOT_PREFIX%\envs\py310\envs\py310 |
mkdir -p /wks/python/micromamba/bin cd /wks/python/micromamba curl -Ls https://micro.mamba.pm/api/micromamba/linux-64/latest | tar -xvj bin/micromamba export PATH=/wks/python/micromamba/bin:$PATH micromamba shell init -s bash -r /wks/python/micromamba 使用 micromamba 按文件安装依赖的命令: micromamba env create -f environment.yml 如果你已经有一个环境,想更新它: micromamba env update -f environment.yml micromamba activate py312 (py312) xt@fine-bump-3:/ai/wks/aisql/chat2sql-develop$ which python /wks/python/micromamba/envs/py312/bin/python export PATH=/wks/python/micromamba/envs/py312/bin:$PATH |
|
sudo mkdir -p /wks/python/micromamba/bin
sudo chown -R xt:xt /wks/
cd /wks/python/micromamba
curl -Ls https://micro.mamba.pm/api/micromamba/linux-64/latest | tar -xvj bin/micromamba
rsync -e 'ssh -p26225' -avP xt@144.34.185.72:/wks/python/micromamba/bin/* /wks/python/micromamba/bin/
export PATH=/wks/python/micromamba/bin:$PATH
micromamba shell init -s bash -r /wks/python/micromamba
# 单纯地创建一个python3.12环境
micromamba create -n py12 python=3.12
micromamba run -n py12 mycommand
```
export PATH=/wks/python/micromamba/envs/py12/bin:$PATH
micromamba activate py12
uv pip install build wheel
micromamba env update -f environment.yml
```
|
|
## micromamba 安装
```
sudo mkdir -p /wks/python/micromamba/bin
sudo chown -R xt:xt /wks/
cd /wks/python/micromamba
curl -Ls https://micro.mamba.pm/api/micromamba/linux-64/latest | tar -xvj bin/micromamba
rsync -e 'ssh -p26225' -avP xt@144.34.185.72:/wks/python/micromamba/bin/* /wks/python/micromamba/bin/
export PATH=/wks/python/micromamba/bin:$PATH
micromamba shell init -s bash -r /wks/python/micromamba
```
## python环境安装
```
xt@fine-bump-3:~$ cd /wks/python/micromamba/envs/
xt@fine-bump-3:/wks/python/micromamba/envs$ ls
py312
xt@fine-bump-3:/wks/python/micromamba/envs$ du -sh py312/
9.0G py312/
```
- py312占用过多空间
- 重新安装前,先清理部分空间
```
rm -rf /ai/wks/alg/
```
- 在已有micromama的基础上先新加环境,再删除旧环境
```
# 单纯地创建一个python3.12环境
micromamba create -n py12 python=3.12
micromamba run -n py12 mycommand
export PATH=/wks/python/micromamba/envs/py12/bin:$PATH
micromamba activate py12
micromamba install uv uvicorn
micromamba install -c conda-forge uvicorn
which uv
uv pip install build wheel
```
## 项目环境
micromamba env update -f environment.yml
上一步准备了uv,也可以使用uv安装
```
uv sync
```
### 离线下载
```
micromamba update -n py12 -f environment_ins.yml --download-only
micromamba env export -n py12 > py12-lock.yml
micromamba lock -n py12
micromamba lock -n py12 -f environment_ins.yml
# 导出 explicit 格式的包列表(URL 列表)
micromamba env export -n py12 --explicit > py12-explicit.txt
(py12) xt@fine-bump-3:/wks/python/micromamba$ tar -zcvf mic_offline.tar.gz bin conf pkgs
```
```
# 1. 下载所有包到缓存
micromamba update -n py12 -f environment_ins.yml --download-only
# 2. 导出 explicit 格式
micromamba env export -n py12 --explicit > py12-explicit.txt
# 3. 打包缓存目录和 explicit 文件
tar -czf offline_cache.tar.gz -C ~/micromamba pkgs/
```
```
# 激活环境后导出
micromamba activate py12
micromamba list --explicit > py12-explicit.txt
```
- 无网机器
```
# 1. 解压缓存到根目录
tar -xzf offline_cache.tar.gz -C ~/micromamba/
# 2. 从 explicit 文件创建环境
micromamba create -n py12 --file py12-explicit.txt --offline --yes
```
## 迁移安装
```
mkdir mipy
mv mic_offline.tar.gz mipy/
cd mipy/
tar -xvf mic_offline.tar.gz
export PATH=/home/test/mipy/bin:$PATH
which micromamba
export MAMBA_ROOT_PREFIX=/home/test/mipy
micromamba shell init --shell bash --root-prefix=$MAMBA_ROOT_PREFIX
cd
. ./.bash_profile
```
```
micromamba create -n py12 --file py12-explicit.txt --offline --yes
```
--offline:告诉 micromamba 只使用本地缓存,不联网
--yes:自动确认,避免交互式提示
```
To activate this environment, use:
micromamba activate py12
Or to execute a single command in this environment, use:
micromamba run -n py12 mycommand
```
export PATH=/home/test/mipy/envs/py12/bin:$PATH
|
|
|
|
|
|
## micromamba 安装 - linux
- 下载micromamba
```
sudo mkdir -p /wks/python/micromamba/bin
sudo chown -R xt:xt /wks/
cd /wks/python/micromamba
curl -Ls https://micro.mamba.pm/api/micromamba/linux-64/latest | tar -xvj bin/micromamba
rsync -e 'ssh -p26225' -avP xt@144.34.185.72:/wks/python/micromamba/bin/* /wks/python/micromamba/bin/
export PATH=/wks/python/micromamba/bin:$PATH
```
- 设置基目录
```
micromamba shell init -s bash -r /wks/python/micromamba
或
export MAMBA_ROOT_PREFIX=/home/test/mipy
micromamba shell init --shell bash --root-prefix=$MAMBA_ROOT_PREFIX
cd
. ./.bash_profile
```
## 迁移安装 - linux
### 全部打包
- 联网服务器上压缩
```
(py12) xt@fine-bump-3:/wks/python$ du -sh micromamba/
1.8G micromamba/
(py12) xt@fine-bump-3:/wks/python$ tar -zcvf mipy.tar.gz micromamba/
```
- 无网服务器上解压
- 相当于没有使用micromamba,只是使用了之前编辑的python环境
```
[tan@localhost ~]$ tar -xvf mipy.tar.gz
export PATH=/home/tan/micromamba/envs/py12/bin:$PATH
$ which uvicorn
~/micromamba/envs/py12/bin/uvicorn
$ which python
~/micromamba/envs/py12/bin/python
```
### 重编辑
```
tar -xvf mipy.tar.gz
export MAMBA_ROOT_PREFIX=/home/test/micromamba
cd $MAMBA_ROOT_PREFIX
./bin/micromamba shell init --shell bash --root-prefix=$MAMBA_ROOT_PREFIX
cd
. ./.bash_profile
```
- init 后,需要重新激活环境;
```
micromamba activate py12
```
- 如果没有init,直接COPY过来无法使用虚拟环境
|
|
### 在线安装
- 使用 micromamba 按文件安装依赖的命令:
- micromamba env create -f environment.yml
- 如果你已经有一个环境,想更新它:
- micromamba env update -f environment.yml
### 离线下载
- environment.yml
- micromamba update -n py12 -f environment_ins.yml --download-only
- 导出 explicit 格式的包列表(URL 列表)
- micromamba env export -n py12 --explicit > py12-explicit.txt
- 或者先进环境再导出
```
micromamba activate py12
micromamba list --explicit > py12-explicit.txt
```
- 打包: tar -zcvf mipy.tar.gz bin conf pkgs
- 重点是pkgs,pkgs下放的是包
- conf 下放的是environment.yml,py12-explicit.txt
- bin下放的是micromamba
- envs:可选,如果OS相同,可以直接打包解压使用,但要求目录必须一致
- 强调:使用envs必须目录一致,因为从pkgs到envs是编辑的固定目录
### 离线安装
- 环境初始化,设置基目录,之后可以安装,可以激活使用环境
```
export PATH=/wks/python/micromamba/bin:$PATH
micromamba shell init -s bash -r /wks/python/micromamba
或
export MAMBA_ROOT_PREFIX=/wks/python/micromamba
micromamba shell init --shell bash --root-prefix=$MAMBA_ROOT_PREFIX
cd
. ./.bash_profile
```
- 按文件,从 explicit 文件创建环境
micromamba create -n py12 --file py12-explicit.txt --offline --yes
- 安装单个包
```
micromamba install -n 环境名称 包名 --offline --yes
micromamba install -n py12 pandas --offline --yes
micromamba install -n py12 pandas=1.5.3 --offline --yes
```
### 注意事项
如果中间有增加包,则需要重新导出文件,打包
micromamba activate py12
micromamba env export -n py12 > environment.yml
micromamba update -n py12 -f environment_ins.yml --download-only
micromamba list --explicit > py12-explicit.txt
- 打包,但排除envs
tar -zcvf mipy.tar.gz --exclude='./micromamba/envs' ./micromamba/
|
|
**可以。** 你可以通过在包名后面添加 `=版本号` 来精确指定需要安装的版本。
### 基础命令
```bash
micromamba install -n <环境名称> <包名>=<版本号> --offline --yes
```
### 实战示例
假设你的本地 `pkgs/` 缓存中同时存在 `pandas-1.5.3` 和 `pandas-2.0.3` 两个版本,想要安装特定的 `1.5.3` 版本:
```bash
micromamba install -n py12 pandas=1.5.3 --offline --yes
```
### 更精确的指定方式
| 粒度 | 命令示例 | 说明 |
| :--- | :--- | :--- |
| **主版本** | `pandas=1` | 安装 `1.x.x` 系列中的最新版本。 |
| **次要版本** | `pandas=1.5` | 安装 `1.5.x` 系列中的最新版本。 |
| **精确版本** | `pandas=1.5.3` | 精确安装 `1.5.3` 这个版本。 |
| **精确构建版本** | `pandas=1.5.3=h0e12345_0` | 极度精确,包含构建哈希值,可区分同一版本但不同构建配置的包。 |
### 如何查看本地有哪些可用版本?
在离线环境下,你需要事先知道缓存里有哪些版本。有两种方法:
1. **在有网时查询**:在能联网的机器上使用 `micromamba search pandas -c conda-forge` 可以查看所有历史版本,但这需要网络。
2. **直接查看缓存目录**:这是最可靠的离线方法。你可以直接浏览本地 `pkgs/` 目录下的文件。
```bash
# 查看缓存中 pandas 的所有版本
ls -d ~/micromamba/pkgs/pandas-*
```
输出可能类似于:
```
/home/user/micromamba/pkgs/pandas-1.5.3-h123456_0/
/home/user/micromamba/pkgs/pandas-2.0.3-h789012_1/
/home/user/micromamba/pkgs/pandas-2.1.0-h345678_0/
```
从目录名中就能清晰地看到所有可用的精确版本号。
### 依赖版本处理
需要特别注意的是,**指定单个包的版本可能会影响依赖包的解析**。
- **场景**:你强制安装一个旧版本的 `pandas=1.5.3`,但它需要的 `numpy` 版本是 `>=1.20`。
- **结果**:`micromamba` 会尝试从本地缓存中找一个符合 `numpy>=1.20` 要求的版本进行安装。如果缓存中只有 `numpy-1.19.x`,那么即使 `pandas=1.5.3` 本身存在,整个安装过程也会因为依赖无法满足而**失败**。
### 总结
指定版本的核心语法就是 `包名=版本号`。这个版本号可以在离线前通过有网环境查询,或直接查看 `pkgs/` 目录名来获取。离线安装时,`micromamba` 会严格遵循你指定的版本,并从本地缓存中找到对应的包文件进行安装。
|
|
### pkgs路径处理
- 有时通过micromamba clean --all -y会发现micromamba会在home目录下建pkgs
- 为了防止pkgs被分离到多个目录,进行以下设置
```
# 创建配置文件
cat > ~/.mambarc << EOF
pkgs_dirs:
- /opt/micromamba/pkgs
envs_dirs:
- /opt/micromamba/envs
EOF
# 1. 设置环境变量
export CONDA_PKGS_DIRS=/opt/micromamba/pkgs
export MAMBA_ROOT_PREFIX=/opt/micromamba
# 2. 验证设置
echo $CONDA_PKGS_DIRS
echo $MAMBA_ROOT_PREFIX
```
### 环境验证
- 先安装,然后验证当前环境可以满足项目需求
```
micromamba env update -f environment_ins.yml
micromamba env update -f environment_ins.yml --download-only
```
(py12) test@fine-bump-3:/opt/micromamba$ tar -zcvf mipy.tar.gz ./*
### 环境导出
- 导出 explicit 格式的文件,
- 虽然打开文件查看URL是联网的,但安装时是先走本地的
```
export MAMBA_ROOT_PREFIX=/opt/micromamba
./bin/micromamba shell init --shell bash --root-prefix=$MAMBA_ROOT_PREFIX
micromamba activate py12
micromamba env export --explicit > py12-offline.txt
```
### 离线安装
- 复用环境
```
# adduser tan3
# mv /home/test/mipy.tar.gz ./
# chown -R tan3:tan3 /opt/micromamba/
export PATH=/opt/micromamba/envs/py12/bin:$PATH
```
- 安装环境
```
export CONDA_PKGS_DIRS=/opt/micromamba/pkgs
export MAMBA_ROOT_PREFIX=/opt/micromamba
micromamba shell init --shell bash --root-prefix=$MAMBA_ROOT_PREFIX
micromamba create -n py12 --file py12-offline.txt --offline --yes #可能 不全
micromamba create -n py12 -f environment.yml --offline --yes
micromamba activate py12
```
- update只对online环境生效
micromamba update -n py12 -f environment.yml --offline --yes
|
|
|
|
|
|
|
|
|
|
脚本安装 - 想要在哪安装,就将bin目录copy到哪里,双击install.bat即可完成安装,安装完成后需要重启命令行窗口才能生效 - bin目录下有 - install.bat:安装脚本 - micromamba.exe:micromamba可执行文件 - VC_redist.x64.exe:windows SDK相关组件安装文件 - 该bin目录已经打包为micromamba_windows_bin.zip,上传到soft目录
```
任务:我要写一个自动配置init micromamba的初始化bat,名为install.bat
1. install.bat的目录为D:\app\micromamba\bin;同目录有micromamba.exe命令,VC_redist.x64.exe软件
2. micromamba.exe所在目录D:\app\micromamba\bin不是固定是,而是任意的;但它所在目录的上一级会作为MAMBA_ROOT_PREFIX使用,这里micromamba.exe的当前目录为bin,上一级目录为D:\app\micromamba
3. install.bat的首先会检查当前windows是否安装windows SDK相关组件,即是否安装了当前目录下的VC_redist.x64.exe;如果没有安装则进行安装
4. 修改策略允许执行命令行(必须):Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
5. 设置MAMBA_ROOT_PREFIX为当前目录的上一级目录,这里是D:\app\micromamba,然后执行micromamba.exe shell init -s cmd.exe -r D:\app\micromamba初始化micromamba环境变量
6. 执行micromamba.exe shell init前发现已经执行过了的时候,则覆盖上次的初始化环境变量,因为可能会更换目录
```
|
如果需要,则可以安装windows SDK相关组件,安装C++相关,安装windows SDK winget install Microsoft.VCRedist.2015+.x64 --accept-source-agreements --accept-package-agreements 或直接下载 VC_redist.x64.exe安装 再次强调:不管是pytorch,uv,还是micromamba,如果安装过程中遇到异常,首先要考虑是否缺少windows SDK相关组件,安装后重试即可 d: cd app md micromamba Invoke-Webrequest -URI https://micro.mamba.pm/api/micromamba/win-64/latest -OutFile micromamba.tar.bz2 解压,添加path环境变量, D:\app\micromamba\Library\bin 修改策略允许执行命令行(必须) Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser 或者以管理员身份运行PowerShell,执行下面的命令,允许执行命令行 Set-ExecutionPolicy -ExecutionPolicy RemoteSigned # 创建配置文件目录(如果不存在) New-Item -ItemType Directory -Force -Path (Split-Path $PROFILE) # 创建空配置文件 New-Item -ItemType File -Path $PROFILE -Force PS C:\Users\itoracle_17068343192> Set-ExecutionPolicy -ExecutionPolicy RemoteSigned PS C:\Users\itoracle_17068343192> Test-Path $PROFILE True 重启窗口 下面的二选一, micromamba.exe shell init -s powershell -r D:\app\micromamba micromamba.exe shell init -s cmd.exe -r D:\app\micromamba micromamba --version ``` > micromamba.exe shell init -s powershell -r D:\app\micromamba Init powershell profile at 'C:\Users\itoracle_17068343192\Documents\WindowsPowerShell\profile.ps1' Windows long-path support enabled. 关闭当前窗口,打开新窗口或者重启电脑 PS D:\wks> micromamba --version 2.5.0 ``` micromamba.exe create -n py312 python=3.12 -c conda-forge micromamba.exe activate py312 micromamba install -c pytorch -c conda-forge pytorch==2.4.0 torchaudio==2.4.0 torchvision==0.19.0 micromamba install -c pytorch -c pyg -c conda-forge pyg-lib torch-scatter torch-geometric |
创建python3.12版本的虚拟环境;如果不指定python版本,则默认使用全局的python版本 Remove-Item -Recurse -Force .venv; uv venv --python 3.12 .venv uv add torch torchaudio torchvision transformers -i https://pypi.tuna.tsinghua.edu.cn/simple 指定版本安装 uv add torch==2.4.0 torchaudio==2.4.0 torchvision==0.19.0 transformers==4.44.0 -i https://pypi.tuna.tsinghua.edu.cn/simple 卸载已有的torch等相关包,重新安装 & .\.venv\Scripts\Activate.ps1; pip uninstall -y torch torchaudio torchvision; pip install torch torchaudio torchvision --index-url https://pypi.org/simple/
如果需要,则可以安装windows SDK相关组件,安装C++相关,安装windows SDK
winget install Microsoft.VCRedist.2015+.x64 --accept-source-agreements --accept-package-agreements
或直接下载 VC_redist.x64.exe安装
再次强调:不管是pytorch,uv,还是micromamba,如果安装过程中遇到异常,首先要考虑是否缺少windows SDK相关组件,安装后重试即可
|
|
|
|
|
|
|
|
|
|
|
|
|
|
https://blog.jetbrains.com/zh-hans/pycharm/ PyCharm Community Edition https://www.jetbrains.com/pycharm/download/?section=windows https://download-cdn.jetbrains.com/python/pycharm-community-2024.3.2.exe pycharm-community-2024.3.1.1.tar.gz pycharm-community-2024.3.2.tar.gz pycharm拉取git仓库 新版的Pycharm拉取git仓库让输入 口令,没有了用户名与密码界面 此时若没有口令,可随意输入一串字符,点击登录 因为这口令是假的,所以会得到一个错误提示... 关键是这错误提示面板上,有一个指向git用户名与密码登录的链接 点击该链接输入用户名与密码,就可以使用之前的方式登录了 Pycharm新建一个git项目或者自己初始化一个git项目 mkdir repo cd repo git init git remote add origin http://192.168.11.2:8888/repo.git git pull origin dev #拉取指定分支,默认为main 此时用IDE打开目录,修改一文件推送,IDE就会提示输入口令... 正常情况下,文件变化后,文件在IDE中变色,如果没有变色,可以重启一下IDE
先更新后提交
提交时,若远程有多个分支,可以选提交到哪个分支
|
git服务器端 sudo apt update sudo apt install git openssh-server openssh-client git --version sudo systemctl status ssh sudo systemctl enable ssh 初始化仓库,--bare代表仓库是裸的,方便之后上传文件 cd mkdir myrepo.git cd myrepo.git git init --bare ssh git@192.168.1.133 客户端 git config --global user.name "xuetu" git config --global user.email "itoracle@163.com" cd /tmp/ git clone git@192.168.1.133:~/myrepo.git cd myrepo touch README.md echo "hello git!" > README.md git status git add fil1 fil2 #指定文件 git add . #所有修改过的文件 git add . git commit -m "init" 查看提交历史记录 $ git log commit 60a201dbbef8a2b3001b2787e36d0802d1967f91 (HEAD -> master) Author: xuetu
|
|
|
|
|
|
|
|
网络不好时,最好配置一个国内的ubantu源,此次安装Ubantu20.04.4 sudo add-apt-repository ppa:graphics-drivers/ppa sudo apt update sudo apt upgrade 使用ubuntu-drivers工具检测可用的NVIDIA驱动,并安装推荐的驱动: ubuntu-drivers devices sudo ubuntu-drivers autoinstall
nvidia-smi
|
sudo apt-get update
sudo apt install docker.io
systemctl unmask docker.service
systemctl unmask docker.socket
systemctl start docker.service
sudo systemctl start docker
sudo systemctl enable docker
docker -v
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \
&& curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \
sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
sed -i -e '/experimental/ s/^#//g' /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo apt-get update
sudo apt-get install -y nvidia-container-toolkit
sudo apt-get install -y nvidia-docker2
sudo systemctl restart docker
|
docker run -itd --privileged --name qs01 -h qs01 --gpus all --net=host -v /wks:/wks -v /data:/data -v /opt:/opt -v /tmp:/tmp -v /media:/media -v /mnt:/mnt -e NVIDIA_DRIVER_CAPABILITIES=compute,utility -e NVIDIA_VISIBLE_DEVICES=all ubuntu:24.04 bash docker exec -it qs01 bash alias qs011="sudo docker start qs01" alias qs012="sudo docker stop qs01" alias qs01="sudo docker exec -it qs01 su - xt" |
|
|
|
|
|
共享主机IP WSL 24.04 , docker 24.04 ,内外环境一致 独立网段 docker network rm mydk docker network create --subnet=192.168.73.0/24 mydk docker run -itd --privileged --name uu -h uu --gpus all --net mydk --ip 192.168.73.11 -p 22001:22 -p 8009:8009 -p 8008:8008 -p 8007:8007 -p 8006:8006 -p 8005:8005 -p 8004:8004 -p 8003:8003 -p 8002:8002 -p 8001:8001 -p 8000:8000 -p 9000:9000 -p 9001:9001 -p 9002:9002 -p 9003:9003 -p 3306:3306 -p 8889:8889 -p 8888:8888 -p 8887:8887 -p 8886:8886 -p 8885:8885 -p 8884:8884 -p 8883:8883 -p 11434:11434 -v /wks:/wks -v /data:/data -v /opt:/opt -v /media:/media -v /mnt:/mnt -e NVIDIA_DRIVER_CAPABILITIES=compute,utility -e NVIDIA_VISIBLE_DEVICES=all xt:1.1 bash alias uu1="sudo docker start uu" alias uu2="sudo docker stop uu" alias uu="sudo docker exec -it uu bash" 增加端口映射 docker run -itd --privileged --name uu -h uu --gpus all --net mydk --ip 192.168.73.11 -p 22001:22 -p 8009:8009 -p 8008:8008 -p 8007:8007 -p 8006:8006 -p 8005:8005 -p 8004:8004 -p 8003:8003 -p 8002:8002 -p 8001:8001 -p 8000:8000 -p 9000:9000 -p 9001:9001 -p 9002:9002 -p 9003:9003 -p 3306:3306 -p 8889:8889 -p 8888:8888 -p 8887:8887 -p 8886:8886 -p 8885:8885 -p 8884:8884 -p 8883:8883 -p 11434:11434 -v /wks:/wks -v /data:/data -v /opt:/opt -v /media:/media -v /mnt:/mnt -e NVIDIA_DRIVER_CAPABILITIES=compute,utility -e NVIDIA_VISIBLE_DEVICES=all xt:1 bash alias uu1="sudo docker start uu" alias uu2="sudo docker stop uu" alias uu="sudo docker exec -it uu bash" alias jpy="nohup jupyter-lab --ip=0.0.0.0 --no-browser --allow-root & "
|
su - py1
sudo mkdir /wks/python/py1
sudo chown -R py1:py1 /wks/python/py1
sudo chown -R py1:root /wks/python/soft/Python-3.11.11
cd /wks/python/soft/Python-3.11.11
./configure --prefix=/wks/python/py1 --enable-optimizations
checking for stdlib extension module _sqlite3... yes checking for stdlib extension module _tkinter... yes checking for stdlib extension module _uuid... yes checking for stdlib extension module zlib... yes checking for stdlib extension module _bz2... yes checking for stdlib extension module _lzma... yes checking for stdlib extension module _ssl... yes checking for stdlib extension module _ctypes_test... yes make make install cd /wks/python/py1/bin ln -s python3 python ln -s pip3 pip #export PYTHONPATH=自己的工作目录 export PYTHONHOME=/wks/python/py1 export PATH=$PYTHONHOME/bin:$PATH py1@qs01:~$ which python /wks/python/py1/bin/python py1@qs01:~$ which pip /wks/python/py1/bin/pip 机器学习见前面安装部分 深度学习这里指定版本安装 pip install torch==2.5.1 torchvision==0.20.1 torchaudio==2.5.1 -i https://pypi.tuna.tsinghua.edu.cn/simple pip install torch-scatter -f https://data.pyg.org/whl/torch-2.5.1+cu124.html pip install torch-sparse -f https://data.pyg.org/whl/torch-2.5.1+cu124.html pip install torch-geometric pip install torch-cluster -f https://data.pyg.org/whl/torch-2.5.1+cu124.html pip install torch-spline-conv -f https://data.pyg.org/whl/torch-2.5.1+cu124.html pip install onnx onnxruntime skl2onnx onnxmltools pip install imblearn |
sudo apt update sudo apt install nginx sudo systemctl start nginx sudo systemctl enable nginx sudo systemctl status nginx /usr/local/nginx/sbin/nginx -v jupyter启动
jupyter-lab --ip=0.0.0.0 --port=8888 --no-browser --allow-root --NotebookApp.token='mytoken' --NotebookApp.base_url='/py1'
nginx配置
xt@xuetu:/etc/nginx/conf.d$ sudo vim jupyter.conf
server {
listen 18888;
server_name 172.24.40.18; # 替换为你的服务器域名或IP地址,或者留空使用默认配置
# 设置日志路径(可选)
access_log /var/log/nginx/jupyter_access.log;
error_log /var/log/nginx/jupyter_error.log;
location /py1/ {
proxy_pass http://192.168.73.11:8888/py1/; # Docker 容器内 Jupyter Notebook 的 IP 和端口
proxy_set_header Host $host;
proxy_set_header Origin "";
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# 如果 Jupyter Notebook 使用了 WebSocket,需要添加以下配置
proxy_http_version 1.1;
proxy_read_timeout 86400;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}
$ sudo nginx -t nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful sudo systemctl restart nginx jupyter后台启动 nohup jupyter-lab --ip=0.0.0.0 --port=8888 --no-browser --allow-root --NotebookApp.token='mytoken' --NotebookApp.base_url='/py1' & alias jpy="nohup jupyter-lab --ip=0.0.0.0 --port=8888 --no-browser --allow-root --NotebookApp.token='mytoken' --NotebookApp.base_url='/py1' & " 页面访问 http://172.24.40.18:18888/py1 |
添加端口映射后,查看运行的容器显示有些乱 自定义排版显示 vim dps.sh #!/bin/bash echo -e "CONTAINER ID\tIMAGE\t\tNAMES\t\tCOMMAND\t\tSTATUS" docker ps -a --format "\t\t\t\t\t\t\t" chmod +x dps.sh $ ./dps.sh CONTAINER ID IMAGE NAMES COMMAND STATUS 83132bf2ab3c xt:1 p0 "bash" Up 21 minutes 811150dba458 aml:1.3 ml "bash" Exited (255) 26 hours ago 1374a22aa837 ml:0.1 kl "bash" Exited (255) 28 hours ago |
echo '%langchain ALL=(ALL) NOPASSWD:ALL' > /etc/sudoers.d/langchain su - langchain sudo mkdir /wks/python/langchain sudo chown -R langchain:langchain /wks/python/langchain sudo chown -R langchain:root /wks/python/soft/Python-3.11.11 cd /wks/python/soft/Python-3.11.11 ./configure --prefix=/wks/python/langchain --enable-optimizations make make install cd /wks/python/langchain/bin ln -s python3 python ln -s pip3 pip export PYTHONHOME=/wks/python/langchain export PATH=$PYTHONHOME/bin:$PATH which python /wks/python/langchain/bin/python which pip /wks/python/langchain/bin/pip |
root@xuetu:/# du -sh wks/ 57G wks/ root@xuetu:/# tar -zcvf wks_wsl.tar.gz /wks/ xt@xuetu:~$ ./dps.sh CONTAINER ID IMAGE NAMES COMMAND STATUS fc59b8317e80 aml:1.5 ml "bash" Exited (255) 10 days ago f8f8032ccd3f xt:1.1 uu "bash" Up 23 minutes xt@xuetu:~$ sudo docker images REPOSITORY TAG IMAGE ID CREATED SIZE xt 1.1 30831d548c2a 12 days ago 13.4GB aml 1.5 921082d9c13d 12 days ago 38.9GB ubuntu 24.04 a04dc4851cbc 2 months ago 78.1MB docker commit -m "reinstall" -a "73biji" f8f8032ccd3f xt:1.2 root@xuetu:~# docker images REPOSITORY TAG IMAGE ID CREATED SIZE xt 1.2 71f28b9d41d1 13 seconds ago 76.3GB xt 1.1 30831d548c2a 12 days ago 13.4GB aml 1.5 921082d9c13d 12 days ago 38.9GB ubuntu 24.04 a04dc4851cbc 2 months ago 78.1MB docker run -itd --privileged --name ii -h ii --gpus all --net host -v /wks:/wks -v /data:/data -v /opt:/opt -v /media:/media -v /mnt:/mnt -e NVIDIA_DRIVER_CAPABILITIES=compute,utility -e NVIDIA_VISIBLE_DEVICES=all xt:1.2 bash xt@xuetu:~$ ./dps.sh CONTAINER ID IMAGE NAMES COMMAND STATUS c4d472811a2f xt:1.2 ii "bash" Up 15 seconds fc59b8317e80 aml:1.5 ml "bash" Exited (255) 10 days ago f8f8032ccd3f xt:1.1 uu "bash" Up 53 minutes docker exec -it ii bash
root@ii:/opt/wks/web73# ./web73 -addr=localhost:33033
addr:localhost:33033,upload dir:/tmp
|
添加用户,非必须,可直接使用现有用户
adduser ollama
echo '%ollama ALL=(ALL) NOPASSWD:ALL' > /etc/sudoers.d/ollama
su - ollama
创建安装目录
ollama@uu:~$ cd /wks/python/
ollama@uu:/wks/python$ ls
jupyter py1 requirements_ubuntu_py311_gpu.txt soft ubuntu_py311_gpu ubuntu_sqlite3 ubuntu_ssl3
ollama@uu:/wks/python$ sudo mkdir ollama
ollama@uu:/wks/python$ sudo chown -R ollama:ollama ollama/
vim .bashrc
export OLLAMA_MODELS=/wks/python/ollama
. ./.bashrc
安装
curl -fsSL https://ollama.com/install.sh | sh
>>> Installing ollama to /usr/local
>>> Downloading Linux amd64 bundle
######################################################################## 100.0%
>>> Adding ollama user to video group...
>>> Adding current user to ollama group...
>>> Creating ollama systemd service...
WARNING: systemd is not running
WARNING: see https://learn.microsoft.com/en-us/windows/wsl/systemd#how-to-enable-systemd to enable it
>>> Nvidia GPU detected.
>>> The Ollama API is now available at 127.0.0.1:11434.
>>> Install complete. Run "ollama" from the command line.
>>> The Ollama API is now available at 127.0.0.1:11434.
>>> Install complete. Run "ollama" from the command line.
代理设置1
https://blog.csdn.net/qq_35485206/article/details/143459935
代理设置2,端口代理,如果有代理端口的话 vim ~/.zshrc # 添加 # proxy v2 export http_proxy="http://127.0.0.1:7890" export ftp_proxy="http://127.0.0.1:7890" export https_proxy="http://127.0.0.1:7890" export all_proxy="http://127.0.0.1:7890" export no_proxy="localhost, 127.0.0.1,::1" # 刷新 source ~/.zshrc 如果没有代理,有线网络不行,可以试试手机流量,有时候手机流量比有线网络还快 - 或者多试几次
|
服务启动 ollama serve
ollama list
ollama run deepseek-r1:1.5b
ollama run deepseek-r1:8b
ollama run deepseek-r1:14b
ollama run deepseek-r1:32b
ollama run deepseek-r1:70b
|
|
|
|
|
|
|
|
WSL xt环境变量
sudo docker start uu;sudo docker exec -it uu service ssh start;
sudo docker start ii;sudo docker exec -it ii service ssh start;
export GOWKS=/opt/wks/gowks
export GOROOT=$GOWKS/app/go
export GOBIN=$GOWKS/bin
export GOPATH=$GOWKS
export PATH=$GOROOT/bin:$GOBIN:$PATH
alias loc="/usr/local/bin/fibu -conf /opt/wks/app/conf/web73.conf "
export PATH=/home/xt/wks/rust/rfil/xuetu/target/debug:$PATH
alias bwh="ssh -p 26225 144.34.185.72"
alias ling="ssh -p 22 'ai-aml@10.14.121.128'"
alias ml1="sudo docker start ml"
alias ml2="sudo docker stop ml"
alias ml="sudo docker exec -it ml su - aml"
alias uu1="sudo docker start uu"
alias uu2="sudo docker stop uu"
alias uu="sudo docker exec -it uu bash"
alias py1="sudo docker exec -it uu su - py1"
alias ds="sudo docker exec -it uu su - deepseek"
alias ii="docker exec -it ii bash"
alias xt="sudo docker exec -it ii su - xt"
export NODEWKS=/wks/nodejs
export NODE_BASE=$NODEWKS/app/node-v20.9.0-linux-x64/
export PATH=$NODE_PATH/.bin:$NODE_BASE/bin:$PATH
export NODE_GLOBAL=$NODEWKS/app/global
export PATH=$NODE_GLOBAL/bin:$PATH
export PATH=/wks/python/ubuntu_py3129_gpu/bin:$PATH
export LD_LIBRARY_PATH=/wks/python/ubuntu_sqlite3/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/wks/python/ubuntu_ssl3/lib64:$LD_LIBRARY_PATH
export PYTHON_SSL_DEFAULT=/wks/python/ubuntu_ssl3 # 其中PYTHON_SSL_DEFAULT不加有时也可以
export PATH=/wks/python/ubuntu_py311_gpu/bin:$PATH
alias loc="/usr/local/bin/fibu -conf /mnt/g/wks/app/fibu/path_local.conf"
alias toaml="ssh -p 22 'ai-aml@10.14.121.128'"
export PYTHONPATH=/wks/aitpf/src:$PYTHONPATH
alias q11="sudo docker start q1"
alias q12="sudo docker stop q1"
alias q1="sudo docker exec -it q1 bash"
alias py1="ssh 'py1@192.168.73.11'"
alias nx="sudo systemctl restart nginx"
alias qiyue="ssh 'julyedu_705817@101.133.217.125'"
alias rqi="rsync -avP julyedu_705817@101.133.217.125:/students/julyedu_705817/qiyue /wks/qiyue"
export JAVA_HOME=/wks/java/jdk1.8.0_231/
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$CLASSPATH
export PATH=$JAVA_HOME/bin:$PATH
|
|
注意事项 这里是在WSL中创建docker, docker中通常保存的是安装软件, 为了避免docker过于庞大而不方便保存,可以参考以下方案 - 静态大文件,比如数据文件,大模型的参数文件,保存在磁盘上,要求外挂磁盘速度快且稳定 - 静态安装类型文件,与前面的区别在于该安装文件之间会存在软链接,存放于WSL系统中,挂载于docker - docker主要创建用户,配置环境变量,保存安装过程中默认在于home目录下的一些缓存等 本次不安装下面的desktop https://www.docker.com/products/docker-desktop/ 容器创建 docker network create --subnet=192.168.73.0/24 mydk docker run -itd --privileged --name uu -h uu --gpus all --net mydk --ip 192.168.73.11 -p 22001:22 -p 8009:8009 -p 8008:8008 -p 8007:8007 -p 8006:8006 -p 8005:8005 -p 8004:8004 -p 8003:8003 -p 8002:8002 -p 8001:8001 -p 8000:8000 -p 9000:9000 -p 9001:9001 -p 9002:9002 -p 9003:9003 -p 3306:3306 -p 8889:8889 -p 8888:8888 -p 8887:8887 -p 8886:8886 -p 8885:8885 -p 8884:8884 -p 8883:8883 -p 11434:11434 -v /wks:/wks -v /data:/data -v /opt:/opt -v /media:/media -v /mnt:/mnt -e NVIDIA_DRIVER_CAPABILITIES=compute,utility -e NVIDIA_VISIBLE_DEVICES=all xt:1.1 bash docker run -itd --privileged --name uu -h uu --gpus all --net host -v /wks:/wks -v /opt:/opt -v /media:/media -v /mnt:/mnt -e NVIDIA_DRIVER_CAPABILITIES=compute,utility -e NVIDIA_VISIBLE_DEVICES=all xt:1.2 bash docker run -itd --privileged --name ii -h ii --gpus all --net host -v /wks:/wks -v /media:/media -v /mnt:/mnt -e NVIDIA_DRIVER_CAPABILITIES=compute,utility -e NVIDIA_VISIBLE_DEVICES=all ubase:1.0 bash docker run -itd --privileged --name git -h git --gpus all --net host -v /wks:/wks -v /media:/media -v /mnt:/mnt -e NVIDIA_DRIVER_CAPABILITIES=compute,utility -e NVIDIA_VISIBLE_DEVICES=all ubase:1.0 bash docker exec -it git bash vim /etc/profile alias uu1="sudo docker start uu" alias uu2="sudo docker stop uu" alias uu="sudo docker exec -it uu bash" docker容器列名显示
vim dps.sh
#!/bin/bash
sudo docker ps -a --format "table \t\t\t\t"
echo " "
依赖包安装 apt update apt install build-essential apt install net-tools vim pkg-config git ntpdate libxft-dev curl cmake sudo Asia Hong_Kong apt install build-essential openssh-server libssl-dev apt install libxinerama-dev libcairo-gobject2 libpango1.0-dev libpangoxft-1.0-0 libpangocairo-1.0-0 libxcursor-dev libcairo2-dev libbz2-dev apt-get install libx11-dev libxext-dev libxtst-dev libxrender-dev libxmu-dev libxmuu-dev apt-get install libaio-dev tcl tk expect libldap2-dev libsasl2-dev apt-get install rsync p7zip-full unzip apt install alsa-utils software-properties-common ubuntu-drivers-common sudo apt-get install libffi-dev sudo apt-get install liblzma-dev sudo apt-get install libsqlite3-dev 简易配置 adduser xt echo '%xt ALL=(ALL) NOPASSWD:ALL' > /etc/sudoers.d/xt chown -R xt:xt /opt/ SSH docker以host的方式与主机共享了IP,那么SSH就需要修改端口 root@ii:/# vim /etc/ssh/sshd_config #Port 22 Port 22002 PermitRootLogin prohibit-password PasswordAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys .ssh/authorized_keys2 执行以下命令启动并设置开机自启: service ssh start systemctl enable ssh 容器保存 到这里只是安装了一些基础的依赖包以及开启SSH,相当于基础环境版 docker commit -m "ubuntu base env" -a "73biji" 52952cbd103e ubase:1.0 docker save -o ubase1.0.tar ubase:1.0 ssh -p 22002 xt@localhost windows上安装一个git,进入git bash ssh-keygen -t rsa ssh-keygen -t rsa xt@ii:~$ cd /mnt/c/Users/itora/ cat .ssh/id_rsa.pub >> ~/.ssh/authorized_keys Host xt HostName localhost Port 22002 User xt IdentityFile "C:\Users\itora\.ssh\id_rsa" git ssh-keygen -t rsa cd /mnt/c/Users/itora/ cat .ssh/id_rsa.pub >> ~/.ssh/authorized_keys mkdir web73.git cd web73.git git init --bare ssh -p22003 git@192.168.1.2 git config --global user.name "xuetu" git config --global user.email "itoracle@163.com" cd /tmp/ git clone ssh://git@192.168.1.2:22003/~/web73.git git clone ssh://git@localhost:22003/~/web73.git git bash中操作 itora@qisanxuetu MINGW64 / $ cd /g $ cd wks/web73/ $ git init Reinitialized existing Git repository in G:/wks/web73/.git/ git config --global --add safe.directory G:/wks/web73 git add . git commit -m "2025-04-07 init" git remote add web73 ssh://git@localhost:22003/~/web73.git git push -u web73 master cd /g/wks/web73/ git push web73 master 需要解压提交一次,平时不用git tar -zcvf git.tar.gz .git rm -rf .git/ vim ~/.ssh/config Host 192.168.1.2 Port 22003 User git IdentityFile ~/.ssh/your_private_key git clone git@192.168.1.2:~/web73.git |
|
同步配置
cd /opt
sudo ln -s /mng/g/wks ./wks
sudo cp /wks/gowks/src/cmd/fibu/fibu /usr/local/bin/
which fibu
/usr/local/bin/fibu
web73启动
echo "#!/bin/bash
cd /wks/web73
./web73 -addr=0.0.0.0:33033
" > ./web73.sh
chmod +x web73.sh
SSH:py1 py1@uu:~/.ssh$ cd /mnt/c/Users/itora/ py1@uu:/mnt/c/Users/itora$ cat .ssh/id_rsa.pub >>~/.ssh/authorized_keys service ssh restart ssh -p 22001 py1@172.21.142.198 alias uu1="sudo docker start uu;sudo docker exec -it uu /init.sh" alias uu="sudo docker exec -it uu /init.sh" 权限 sudo chown -R deepseek:deepseek /wks/python/deepseek/ sudo chown -R py1:py1 /wks/python/py1 sudo chown -R ollama:ollama /wks/python/ollama/
|
|
WSL配置Mirrored 模式 xt@xuetu:/mnt/c/Users/itora$ cat .wslconfig [experimental] networkingMode=mirrored autoProxy=true hostAddressLoopback=true |
|
xt:ollama安装 root@ii:/wks/python# chown -R xt:xt ollama_offline/ root@ii:/wks/python# chown -R xt:xt ollama_offline/ cd /mnt/g/kecheng/七三AI-01-env_install/docker/soft tar -xvf ollama-linux-amd64.tgz -C /wks/python/ollama_offline/ export PATH=/wks/python/ollama_offline/bin:$PATH which ollama /wks/python/ollama_offline/bin/ollama ollama serve ollama -v ollama version is 0.6.2 vim Modelfile_14B_Q8 from /wks/models/deepseek/DeepSeek-R1-Distill-Qwen-14B-GGUF/DeepSeek-R1-Distill-Qwen-14B-Q8_0.gguf mkdir /wks/bigmodels/ollama chown -R xt:xt /wks/bigmodels/ollama export OLLAMA_MODELS=/wks/bigmodel/ollama - 需要重启ollama nohup ollama serve > /tmp/ollama.log 2>&1 & ollama create DeepSeek-14B-Q8 -f Modelfile_14B_Q8 - 优先OLLAMA_MODELS - ~/.ollama/models xt@ii:~$ ollama list NAME ID SIZE MODIFIED DeepSeek-14B-Q8:latest 4d3466debbb4 15 GB 59 seconds ago xt@ii:~$ cd /wks/bigmodels/ollama/ xt@ii:/wks/bigmodels/ollama$ du -sh * 15G blobs 20K manifests |
|
|
|
|
|
文件备份 cd / tar -zcvf wks.tar.gz wks docker备份
docker images
docker ps -a
#aml新环境
docker commit -m "202505" -a "73biji" ml ctos7:1.2
cd /mnt/g/bak/202505/
docker save -o ml.tar ctos7:1.2
docker commit -m "202505" -a "73biji" git ubgit:1.0
cd /mnt/g/bak/202505/
docker save -o git.tar ubgit:1.0
docker commit -m "202505" -a "73biji" ii dev:1.0
cd /mnt/g/bak/202505/
docker save -o dev.tar dev:1.0
docker commit -m "202505" -a "73biji" uu dev_bak:1.0
cd /mnt/g/bak/202505/
docker save -o uu_bak.tar dev_bak:1.0
|
|
xt
export GOWKS=/opt/wks/gowks
export GOROOT=$GOWKS/app/go
export GOBIN=$GOWKS/bin
export GOPATH=$GOWKS
export PATH=$GOROOT/bin:$GOBIN:$PATH
alias loc="/usr/local/bin/fibu -conf /opt/wks/app/conf/web73.conf "
export PATH=/home/xt/wks/rust/rfil/xuetu/target/debug:$PATH
alias bwh="ssh -p 26225 144.34.185.72"
alias ling="ssh -p 22 'ai-aml@10.14.121.128'"
alias ml1="sudo docker start ml;sudo docker exec -it ml systemctl start sshd"
alias ml2="sudo docker stop ml"
alias ml="sudo docker exec -it ml bash"
alias aml="sudo docker exec -it ml su - ai-aml"
alias uu1="sudo docker start uu"
alias uu2="sudo docker stop uu"
alias uu="sudo docker exec -it uu bash"
alias ii="sudo docker exec -it ii bash"
alias xt="sudo docker exec -it ii su - xt"
alias llm="sudo docker exec -it ii su - llm"
alias py1="sudo docker exec -it uu su - py1"
alias ds="sudo docker exec -it uu su - deepseek"
export NODEWKS=/wks/nodejs
export NODE_BASE=$NODEWKS/app/node-v20.9.0-linux-x64/
export PATH=$NODE_PATH/.bin:$NODE_BASE/bin:$PATH
export NODE_GLOBAL=$NODEWKS/app/global
export PATH=$NODE_GLOBAL/bin:$PATH
export PATH=/wks/python/ubuntu_py3129_gpu/bin:$PATH
export LD_LIBRARY_PATH=/wks/python/ubuntu_sqlite3/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/wks/python/ubuntu_ssl3/lib64:$LD_LIBRARY_PATH
export PYTHON_SSL_DEFAULT=/wks/python/ubuntu_ssl3 # 其中PYTHON_SSL_DEFAULT不加有时也可以
export PATH=/wks/python/ubuntu_py311_gpu/bin:$PATH
alias loc="/usr/local/bin/fibu -conf /mnt/g/wks/app/fibu/path_local.conf"
alias toaml="ssh -p 22 'ai-aml@10.14.121.128'"
export PYTHONPATH=/wks/aitpf/src:$PYTHONPATH
alias q11="sudo docker start q1"
alias q12="sudo docker stop q1"
alias q1="sudo docker exec -it q1 bash"
alias py1="ssh 'py1@192.168.73.11'"
alias nx="sudo systemctl restart nginx"
alias qiyue="ssh 'julyedu_705817@101.133.217.125'"
alias rqi="rsync -avP julyedu_705817@101.133.217.125:/students/julyedu_705817/qiyue /wks/qiyue"
export JAVA_HOME=/wks/java/jdk1.8.0_231/
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$CLASSPATH
export PATH=$JAVA_HOME/bin:$PATH
export SSL_CERT_DIR=/etc/ssl/certs
|
cd /opt sudo ln -s /mng/g/wks ./wks cd /opt/wks sudo cp gowks/src/cmd/fibu/fibu /usr/local/bin/ which fibu /usr/local/bin/fibu echo "#!/bin/bash cd /wks/web73 ./web73 -addr=0.0.0.0:33033 " > ./web73.sh chmod +x web73.sh docker cd /mnt/g/bak/202505 docker load -i dev.tar docker network create --subnet=192.168.73.0/24 mydk docker run -itd --privileged --name uu -h uu --gpus all --net mydk --ip 192.168.73.11 -p 22001:22 -p 8009:8009 -p 8008:8008 -p 8007:8007 -p 8006:8006 -p 8005:8005 -p 8004:8004 -p 8003:8003 -p 8002:8002 -p 8001:8001 -p 8000:8000 -p 9000:9000 -p 9001:9001 -p 9002:9002 -p 9003:9003 -p 3306:3306 -p 8889:8889 -p 8888:8888 -p 8887:8887 -p 8886:8886 -p 8885:8885 -p 8884:8884 -p 8883:8883 -p 11434:11434 -v /wks:/wks -v /data:/data -v /opt:/opt -v /media:/media -v /mnt:/mnt -e NVIDIA_DRIVER_CAPABILITIES=compute,utility -e NVIDIA_VISIBLE_DEVICES=all xt:1.1 bash docker run -itd --privileged --name uu -h uu --gpus all --net host -v /wks:/wks -v /opt:/opt -v /media:/media -v /mnt:/mnt -e NVIDIA_DRIVER_CAPABILITIES=compute,utility -e NVIDIA_VISIBLE_DEVICES=all xt:1.2 bash docker run -itd --privileged --name ii -h ii --gpus all --net host -v /wks:/wks -v /media:/media -v /mnt:/mnt -e NVIDIA_DRIVER_CAPABILITIES=compute,utility -e NVIDIA_VISIBLE_DEVICES=all dev:1.0 bash docker run -itd --privileged --name git -h git --gpus all --net host -v /wks:/wks -v /media:/media -v /mnt:/mnt -e NVIDIA_DRIVER_CAPABILITIES=compute,utility -e NVIDIA_VISIBLE_DEVICES=all ubase:1.0 bash docker exec -it git bash SSH docker使用的是主机共享模型,就需要为SSH配置不同的端口 root@ii:/# vim /etc/ssh/sshd_config #Port 22 Port 22002 PermitRootLogin prohibit-password PasswordAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys .ssh/authorized_keys2 执行以下命令启动并设置开机自启: service ssh start systemctl enable ssh ssh-keygen -t rsa cd /mnt/c/Users/itora/ cat .ssh/id_rsa.pub >> ~/.ssh/authorized_keys 可直接在git上执行 ssh -p 22002 xt@localhost Host xt HostName localhost Port 22002 User xt IdentityFile "C:\Users\itora\.ssh\id_rsa" git git config --global user.name "xuetu" git config --global user.email "itoracle@163.com" ------------------------------------------------------------------------ |
|
|
|
|
|
llm docker run -itd --privileged --name ii -h ii --gpus all --net host -v /wks:/wks -v /data:/data -v /opt:/opt -v /media:/media -v /mnt:/mnt -e NVIDIA_DRIVER_CAPABILITIES=compute,utility -e NVIDIA_VISIBLE_DEVICES=all xt:1.2 bash docker run -itd --privileged --name ii -h ii --gpus all --net host -v /wks:/wks -v /media:/media -v /mnt:/mnt -e NVIDIA_DRIVER_CAPABILITIES=compute,utility -e NVIDIA_VISIBLE_DEVICES=all dev:1.0 bash docker run -itd --privileged --name ii -h ii --net=host --gpus all -v /ai:/ai -v /opt:/opt -v /wks:/wks -v /data:/data -v /G/soft:/opt/soft -v /mnt:/mnt -v /media:/media -e NVIDIA_DRIVER_CAPABILITIES=compute,utility -e NVIDIA_VISIBLE_DEVICES=all dev:2.0 bash docker exec -it ii bash ml:centos7
docker run -itd --privileged --name ml -h ml --net=host -v /wks:/wks -v /ai:/ai -v /mnt:/mnt -v /media:/media cent7:latest bash
docker run -itd --privileged --name ctos -h ctos --net=host -v /wks:/wks -v /ai:/ai -v /python:/python -v /mnt:/mnt -v /media:/media cent7:latest bash
docker exec -it ctos bash
docker commit -m "micromamaba test" -a "73biji" 5a9bd316173f cent:v1 docker save -o centv1_20251231.tar cent:v1 docker load -i centv1_20251231.tar docker run -itd --privileged --name ctos -h ctos --net=host -v /wks:/wks -v /ai:/ai -v /python:/python -v /mnt:/mnt -v /media:/media cent:v1 bash docker exec -it ctos bash
|
docker run -itd --privileged --platform linux/arm64/v8 --name arm -h arm --net=host -v /opt:/opt -v /wks:/wks -v /ai:/ai -v /mnt:/mnt -v /media:/media python:3.11 bash
sudo docker exec -it arm bash
|
|
POC - ubntu18 python3.6.9 - 纯机器学习环境 ``` docker run -itd --privileged --name u18 -h u18 --net=host -v /wks:/wks -v /ai:/ai -v /ai:/ai -v /opt:/opt -v /wks:/wks -v /data:/data -v /mnt/d/soft:/opt/soft -v /mnt:/mnt -v /media:/media ubuntu:18.04 bash ``` ``` adduser py369 mkdir /ai/app/py369 mkdir /ai/wks/soft tar -xvf sqlite-snapshot-202212231449.tar.gz cd sqlite-snapshot-202212231449/ mkdir /ai/app/sqlite202212 ./configure -prefix=/ai/app/sqlite202212 make make install ``` - 该方案有些复杂,直接使用现有mamba环境创建3.6.9环境 python环境 ``` ``` ``` micromamba create -n py369 python=3.6.9 micromamba activate py369 micromamba run -n py369 mycommand pip install dataclasses micromamba install lightgbm xgboost statsmodels micromamba install pandas sklearn-pandas scikit-learn matplotlib pydotplus micromamba install jupyter jupyter_contrib_nbextensions micromamba install catboost micromamba install "xgboost < 1.6" -c conda-forge ``` |
|
| 镜像标签 | 操作系统 | Python版本 | CUDA版本 | PyTorch版本 | 发布时间 |
| ---------------------------------- | ---------------- | -------- | -------- | --------- | ---------- |
| `nvcr.io/nvidia/pytorch:25.08-py3` | **Ubuntu 24.04** | 3.12.2 | 13.0.48 | 2.8.0 | 2025-08-19 |
| `nvcr.io/nvidia/pytorch:24.12-py3` | **Ubuntu 24.04** | 3.12 | 12.6.2 | 2.6.0 | 2024-12-20 |
| `nvcr.io/nvidia/pytorch:24.05-py3` | Ubuntu 22.04 | 3.10.12 | 12.4.131 | 2.4.0 | 2024-05-25 |
| `nvcr.io/nvidia/pytorch:24.04-py3` | Ubuntu 22.04 | 3.10 | 12.4 | 2.3 | 2024-04 |
| `nvcr.io/nvidia/pytorch:23.10-py3` | Ubuntu 22.04 | - | - | - | 2023-10 |
docker run -itd --privileged --name gpu -h gpu --net=host --gpus all -v /wks:/wks -v /ai:/ai -v /opt:/opt -v /data:/data -v /mnt:/mnt -v /media:/media -e NVIDIA_DRIVER_CAPABILITIES=compute,utility -e NVIDIA_VISIBLE_DEVICES=all nvcr.io/nvidia/pytorch:23.10-py3 bash docker run -itd --privileged --name gpu -h gpu --net=host --gpus all -v /wks:/wks -v /ai:/ai -v /opt:/opt -v /data:/data -v /mnt:/mnt -v /media:/media -e NVIDIA_DRIVER_CAPABILITIES=compute,utility -e NVIDIA_VISIBLE_DEVICES=all nvcr.io/nvidia/pytorch:24.12-py3 bash docker run -itd --privileged --name u24 -h u24 --net=host --gpus all -v /wks:/wks -v /ai:/ai -v /opt:/opt -v /data:/data -v /mnt:/mnt -v /media:/media ubuntu:24.04 bash docker exec -it u24 bash |
|
|
## git拉取记录
```
git init
git remote add origin http://10.14.128.2:8888/ai/bank-complaint-classifier.git
git pull origin dev
```
```
# 1. 保存当前更改
git stash
# 2. 拉取远程更新
git reset
git pull --rebase origin main
# 3. 恢复本地更改
git stash pop
# 4. 如果有冲突,解决冲突
git add .
git rebase --continue
# 5. 推送
git commit -m "tousu v1"
git push -u origin main
```
## git提交记录
```
git add .
git commit -m "tousu v1"
# 现在创建dev分支
git checkout -b dev
git push -u origin dev # 第一次
```
```
git add .
git commit -m "tousu v1"
git push # 后续
```
```
-u --set-upstream
把本次推送的远程分支(origin/dev)登记为本地分支 dev 的“上游”。
登记后,今后在该分支上直接敲 git push / git pull 就不必再写 origin dev。
-f --force
强制推送,即用本地版本覆盖远程同名分支,不管远程是否比本地新。
会丢弃远程那端可能存在的提交,危险操作,多人协作时慎用。
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|