当前位置:   article > 正文

docker + miniconda + python 环境安装与迁移(详细版)_docker miniconda

docker miniconda

本文主要列出从安装docker+python环境到迁移环境的整体步骤。windows与linux之间进行测试。

简化版可以参考:docker + miniconda + python 环境安装与迁移(简化版)-CSDN博客

目录

一、docker 安装和测试

二、docker中拉取miniconda,并虚拟环境安装和测试

三、环境+代码的迁移并运行(以linux _to_win举例)

大概的过程手绘了一下:


一、docker 安装和测试

【linux端】

可以参考其他教程,不在此赘述,以windows端举例。

【windows端】

我的是windows10 家庭中文版,docker 安装和测试部分的详情 可以参考:

【Docker】Windows11操作系统下安装、使用Docker保姆级教程_docker windo11-CSDN博客

1. ​​​​​​安装docker windows 版本

下载链接:Docker Desktop: The #1 Containerization Tool for Developers | Docker

安装后重启登录账号,大概率会报错,报的错是”unexpected wsl error“

2. 配置本机电脑,解决上述错误

我的是windows10 家庭中文版,核对:

控制面板--程序--开启或关闭windows功能,如果没勾选,请勾选上这俩。

然后:

  1. # powershell进去后,输入命令
  2. wsl --update
  3. # 安装后查看版本,显示“默认版本:2”
  4. wsl --status

注意:启动成功后,我没有再安装linux发行版。有需要的也可以再装一个。

  1. 在 Windows Subsystem for Linux (WSL) 中,当你启用了WSL功能后,你需要从Microsoft Store中下载并安装所需的Linux发行版。WSL并不自带任何Linux发行版,而是提供了一个框架,允许用户选择并安装自己喜欢的发行版。
  2. 你可以从 Microsoft Store 中搜索并下载你需要的 Linux 发行版,比如 Ubuntu、Debian、OpenSUSE 等。安装完所选发行版后,你就可以通过启动WSL来访问和使用它了,而无需再次安装或配置发行版。

3. 测试docker

  1. # cmd进去后,输入命令,进行测试
  2. docker pull hello-world
  3. docker images
  4. docker run hello-world
  5. # 列出所有容器
  6. docker ps -a
  7. # 列出正在运行的容器
  8. docker ps -q
  9. # 查看指定容器
  10. docker ps -a|grep xxx
  11. # 暂停/停止/重启 某容器
  12. docker pause/stop/restart 具体的CONTAINER ID
  13. # 删除容器
  14. docker rm 具体的CONTAINER ID
  15. # 删除镜像
  16. docker rmi Image_ID

如果pull很慢的话,可配置阿里云镜像加速, 记得在false后面加英文","

  1. # 填入内容
  2. "registry-mirrors": ["https://inhj05a1.mirror.aliyuncs.com"]

二、docker中拉取miniconda,并虚拟环境安装和测试

【windows端】

1. 安装miniconda

  1. docker search miniconda
  2. docker pull continuumio/miniconda3
  3. docker run -it --name="miniconda" continuumio/miniconda3 /bin/bash

2. 【测试】创建新环境 for test

  1. # 下面就和直接在没有docker的环境中一样操作了
  2. (base) root@de9f167d9176:/# conda create -n test python=3.8
  3. (base) root@de9f167d9176:/# conda activate test
  4. (test) root@de9f167d9176:/# conda env list

可以在这个环境中,继续用conda install 或者pip install安装其他包。

  1. conda install numpy=1.93
  2. pip install numpy==1.93

【linux端】和windows一样的

1. 安装miniconda和python环境

  1. # step1
  2. docker search miniconda
  3. docker pull continuumio/miniconda3
  4. docker run -it continuumio/miniconda3 /bin/bash
  5. # step2
  6. conda create -n test_l python=3.8
  7. conda activate test_l
  8. # step3, 退出镜像的conda环境
  9. exit

**在这步里,只需要拉取了continuumio/miniconda3就可以了,不用创建新环境,如果创建了新环境,在退出continuumio/miniconda3这个容器之前,就需要把创建了新环境之后的continuumio/miniconda3保存成新的镜像,不然下次再进来,这次创建的新环境就不见了。

**我们更习惯在本地搞一个miniconda,所有环境都在里面,然后当需要打包的时候,在本地将要打包的环境复制到continuumio/miniconda3中。具体看下面的步骤三。

三、环境+代码的迁移并运行(以linux _to_win举例)

1、本地miniconda及虚拟环境安装

先在github上建仓库,然后git clone到linux中后,在本地创建一个环境,然后测试通过。

  1. # 下载project
  2. cd 目标文件夹
  3. git clone 网址
  4. # 安装miniconda,参考官网
  5. mkdir -p ~/miniconda3
  6. wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda3/miniconda.sh
  7. bash ~/miniconda3/miniconda.sh -b -u -p ~/miniconda3
  8. rm -rf ~/miniconda3/miniconda.sh
  9. ~/miniconda3/bin/conda init bash
  10. # 建立本地环境
  11. conda create -n test python=3.8
  12. conda activate test
  13. conda env list
  14. conda deactivate

2、在本地环境中,复制环境+代码到docker的容器中

比较详细的介绍可以参考:

Docker 封装anaconda环境,生成镜像并打包,纯小白一文读懂(二)_continuumio/anaconda3-CSDN博客

  1. # 创建一个名为test的容器
  2. docker run --name test -idt continuumio/miniconda3
  3. *****************查看容器, 找到conda的路径************
  4. # 进入容器
  5. docker exec -it test /bin/bash
  6. # 查看base所在路径
  7. conda env list
  8. # 快捷键退出容器,不会停止容器
  9. ctrl+d
  10. # 用exec进入容器,在使用快捷键退出容器时,不会停止容器。所以最开始才使用-idt创建
  11. # 因为 -d 参数默认不会进入容器,想要进入容器需要使用指令 docker exec
  12. *****************查看容器************
  1. # 复制本地的环境到test容器中
  2. docker cp /home/.../miniconda3/envs/test/ test:/opt/conda/envs
  3. # 复制代码
  4. docker cp /home/.../neuron_segment test:/root/
  5. **************查看容器*************
  6. docker exec -it test /bin/bash
  7. conda env list
  8. ls /root/
  9. ctrl+d
  10. **************查看容器*************

至此,环境+代码也已复制成功。

3、将容器保存为镜像,保存成压缩包

  1. # 将容器保存为镜像,并查看
  2. docker commit -a 'author' -m 'instruction' test image_test
  3. # cd到一个目录
  4. cd ...
  5. # 压缩镜像
  6. docker save -o test_tar.tar image_test

至此,环境+代码也已打包成功。

4、解压镜像、创建容器、测试代码

  1. # 拷贝.tar文件到指定目录
  2. # 在win这边/要运行的机器上cmd后,cd到上面的指定目录
  3. # if win
  4. cd /d 目录
  5. # 解压,查看后发现,已创建了一个新的image_test的镜像
  6. docker load -i test_tar.tar

  1. # 创建容器
  2. docker run --name test_create -idt image_test
  3. **************进入容器*************
  4. docker exec -it test_create /bin/bash
  5. conda env list
  6. ls /root/
  1. # 测试代码
  2. conda activate test
  3. cd /root/文件夹目录
  4. python **.py
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/1005749
推荐阅读
相关标签
  

闽ICP备14008679号