容器重启后,Conda文件完整保存(虚拟环境、库包),如何重新安装conda并迁移之前的虚拟环境

本文主要是介绍容器重启后,Conda文件完整保存(虚拟环境、库包),如何重新安装conda并迁移之前的虚拟环境,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Vim安装

容器重启后默认是vi,升级vim,执行命令

apt install -y vim

安装 Anaconda

1. 下载Anaconda

其他版本请查看Anaconda官方库

wget https://mirrors.bfsu.edu.cn/anaconda/archive/Anaconda3-2023.03-1-Linux-x86_64.sh --no-check-certificate

2. 安装
执行命令

bash Anaconda3-2023.03-1-Linux-x86_64.sh

一直enter,直到选择安装目录,本次安装我选择的目录是 /opt/data/conda,如果将来容器重启,我会保持安装在这个目录。

3. conda激活

执行命令

source ~/.bashrc

如果需要修改bashrc文件,执行

vim ~/.bashrc

查看Conda激活模块参数

在这里插入图片描述

source ~/.bashrc 后自动进入base环境,此时才可以使用 conda – 命令

在这里插入图片描述

4. 虚拟环境安装

此时你可以重新创建新的虚拟环境

只需要执行命令

conda create -n your_env python=3.8

创建完成后进入你的环境

conda activate your_env

退出环境执行

conda deactivate

5. 迁移虚拟环境

迁移虚拟环境的方法有很多,有打包迁移,有复制迁移,基本思想就是将你原来在envs/下的你的环境目录复制到conda新安装的目录的envs下面

这里介绍复制迁移

原来的环境在 /opt/data/private/conda/envs/your_env

现在需要迁移到 /opt/data/conda/envs/

首先第一步是执行复制命令

cp -r /opt/data/private/conda/envs/your_env /opt/data/conda/envs/

这样在/opt/data/conda/envs/下面就会有新的文件夹your_env

然后就可以直接激活环境

conda activate your_env

如果有这么顺利就好,此时你会发现编译器不匹配

在这里插入图片描述

这里需要对你的环境的编译器进行修改

执行命令

conda env config vars set CONDA_PYTHON_EXE=/opt/data/conda/bin/python

/opt/data/conda/bin/python就是新安装的conda目录下的编译器,注意不是虚拟环境下的哈,就是conda安装目录下的,这个直接复制即可,无需改变

执行后需要重新激活环境

conda activate your_env

这里还会遇到一个问题,就是pip的问题

需要更改虚拟环境下的pip文件

一共需要修改3个pip文件

分别是pip,pip3,pip3.8(如果你的虚拟环境安装的是3.8,如果是3.9则换成3.9)

分别执行

vim /opt/data/conda/envs/your_env/bin/pip
vim /opt/data/conda/envs/your_env/bin/pip3
vim /opt/data/conda/envs/your_env/bin/pip3.8

三个文件长的一样,修改他们的第一行

在这里插入图片描述

将第一行改为上述这样,即 /opt/data/conda/envs/your_env/bin/python/3.8,/opt/data/conda/envs/是conda新安装目录下的虚拟环境目录。

此时迁移完毕,你可以正常使用了,无需重新下载包,省去很多时间


写于2023.12.4(4090服务器关机重启后的处理)

这篇关于容器重启后,Conda文件完整保存(虚拟环境、库包),如何重新安装conda并迁移之前的虚拟环境的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/483090

相关文章

Python+FFmpeg实现视频自动化处理的完整指南

《Python+FFmpeg实现视频自动化处理的完整指南》本文总结了一套在Python中使用subprocess.run调用FFmpeg进行视频自动化处理的解决方案,涵盖了跨平台硬件加速、中间素材处理... 目录一、 跨平台硬件加速:统一接口设计1. 核心映射逻辑2. python 实现代码二、 中间素材处

详解C++ 存储二进制数据容器的几种方法

《详解C++存储二进制数据容器的几种方法》本文主要介绍了详解C++存储二进制数据容器,包括std::vector、std::array、std::string、std::bitset和std::ve... 目录1.std::vector<uint8_t>(最常用)特点:适用场景:示例:2.std::arra

python项目打包成docker容器镜像的两种方法实现

《python项目打包成docker容器镜像的两种方法实现》本文介绍两种将Python项目打包为Docker镜像的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要... 目录简单版:(一次成功,后续下载对应的软件依赖)第一步:肯定是构建dockerfile,如下:第二步

C#实现插入与删除Word文档目录的完整指南

《C#实现插入与删除Word文档目录的完整指南》在日常的办公自动化或文档处理场景中,Word文档的目录扮演着至关重要的角色,本文将深入探讨如何利用强大的第三方库Spire.Docfor.NET,在C#... 目录Spire.Doc for .NET 库:Word 文档处理利器自动化生成:C# 插入 Word

使用C#导出Excel数据并保存多种格式的完整示例

《使用C#导出Excel数据并保存多种格式的完整示例》在现代企业信息化管理中,Excel已经成为最常用的数据存储和分析工具,从员工信息表、销售数据报表到财务分析表,几乎所有部门都离不开Excel,本文... 目录引言1. 安装 Spire.XLS2. 创建工作簿和填充数据3. 保存为不同格式4. 效果展示5

MySQL 5.7彻底卸载与重新安装保姆级教程(附常见问题解决)

《MySQL5.7彻底卸载与重新安装保姆级教程(附常见问题解决)》:本文主要介绍MySQL5.7彻底卸载与重新安装保姆级教程的相关资料,步骤包括停止服务、卸载程序、删除文件和注册表项、清理环境... 目录一、彻底卸载旧版本mysql(核心步骤)二、MySQL 5.7重新安装与配置三、常见问题解决总结废话不多

在DataGrip中操作MySQL完整流程步骤(从登录到数据查询)

《在DataGrip中操作MySQL完整流程步骤(从登录到数据查询)》DataGrip是JetBrains公司出品的一款现代化数据库管理工具,支持多种数据库系统,包括MySQL,:本文主要介绍在D... 目录前言一、登录 mysql 服务器1.1 打开 DataGrip 并添加数据源1.2 配置 MySQL

SpringBoot基于注解实现数据库字段回填的完整方案

《SpringBoot基于注解实现数据库字段回填的完整方案》这篇文章主要为大家详细介绍了SpringBoot如何基于注解实现数据库字段回填的相关方法,文中的示例代码讲解详细,感兴趣的小伙伴可以了解... 目录数据库表pom.XMLRelationFieldRelationFieldMapping基础的一些代

Nginx搭建前端本地预览环境的完整步骤教学

《Nginx搭建前端本地预览环境的完整步骤教学》这篇文章主要为大家详细介绍了Nginx搭建前端本地预览环境的完整步骤教学,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录项目目录结构核心配置文件:nginx.conf脚本化操作:nginx.shnpm 脚本集成总结:对前端的意义很多

在Ubuntu上打不开GitHub的完整解决方法

《在Ubuntu上打不开GitHub的完整解决方法》当你满心欢喜打开Ubuntu准备推送代码时,突然发现终端里的gitpush卡成狗,浏览器里的GitHub页面直接变成Whoathere!警告页面... 目录一、那些年我们遇到的"红色惊叹号"二、三大症状快速诊断症状1:浏览器直接无法访问症状2:终端操作异常