欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Docker中conda環(huán)境的導(dǎo)出和導(dǎo)入

 更新時(shí)間:2024年02月07日 09:23:08   作者:UHLJH  
現(xiàn)在很多的應(yīng)用程序系統(tǒng)都會選擇使用docker容器進(jìn)行部署,本文主要介紹了Docker中conda環(huán)境的導(dǎo)出和導(dǎo)入,具有一定的參考價(jià)值,感興趣的可以了解一下

1、常用命令:

docker pull -- 從遠(yuǎn)程倉庫將鏡像下載至本地
docker run -- 運(yùn)行一個(gè)容器
docker images -- ??幢镜冂R像
docker ps -- 查看容器,默認(rèn)只查看已啟動(dòng)的,加入 "-a" 參數(shù)可以查看所有
docker rm -f ID # 刪除之前的運(yùn)行容器

重命名容器
docker rename old_name new_name
拷貝文件到容器中
docker cp MLP 95909784d85b:/workspace/
進(jìn)入容器中
docker exec -u 0 -it testtorch /bin/bash

docker save保存的是鏡像(image),docker export保存的是容器(container)
docker load不能對載入的鏡像重命名,而docker import可以為鏡像指定新名稱。

2、環(huán)境導(dǎo)出:

Step-1:
安裝docker(可以忽略)

Step-2:
拉取anaconda鏡像(docker images檢查看看,已經(jīng)有了的話就跳過這一步)
docker pull continuumio/anaconda3

Step-3:
基于拉取的鏡像創(chuàng)建容器
docker run -i -t continuumio/anaconda3 /bin/bash

Step-4-1:
cd opt/conda/envs
ls(沒有東西)

step-4-2(可選步驟):
退出容器: exit
查看容器名稱:docker ps -a
可以改容器名稱:docker rename great_chaum ljhpytorch
再次查看容器名稱:docker ps -a


Step-5:
查看本地anaconda中env的路徑(例如:/home/ljh/anaconda3/envs/pytorch/)

Step-6:
可以另起一個(gè)終端
把本地的環(huán)境文件復(fù)制到容器中
docker cp /home/ljh/anaconda3/envs/pytorch/ ljhpytorch:/opt/conda/envs


Step-7
啟動(dòng)容器:docker start ljhpytorch
進(jìn)入容器:docker exec -u 0 -it ljhpytorch /bin/bash 
查看是否文件已經(jīng)復(fù)制過來cd opt/conda/envs
ls

Step-8:
驗(yàn)證是否能夠使用環(huán)境:source activate 環(huán)境名稱
例如:source activate pytorch

Step-9:
運(yùn)用 docker commit 指令將運(yùn)行的容器保存為鏡像。
docker commit container_name image_name(隨便?。?
例如:docker commit ljhpytorch ljhpytorchimage
docker images可以看到新增了一個(gè)鏡像

Step-10:
鏡像導(dǎo)出:
docker save -o image.tar(這個(gè)也可以隨便取名字) image_name

給文件夾或文件全部的權(quán)限:sudo chmod -R 777 ./tao/(選擇修改權(quán)限的文件名稱)

3、兩個(gè)服務(wù)器之間的文件傳輸命令:

scp -r /home/myfile username@192.000.000.000:/home/myfile
其中scp為命令,-r代表移動(dòng)文件,/home/myfile代表源文件夾所在的絕對路徑,username@192.000.000.000:/home/myfile代表目標(biāo)服務(wù)器中目標(biāo)用戶名的目標(biāo)文件夾。
示例: 【默認(rèn)目標(biāo)服務(wù)器端口22】
scp -r /data/liujiahui/2022/master/ ljh@192.XXX.XXX.XXX:/DataDisk/liujiahui/AllCode/

如果需要指定目標(biāo)服務(wù)器端口:
scp -r -P 5022 /data/liujiahui/2022/master/ ljh@192.XXX.XXX.XXX:/DataDisk/liujiahui/AllCode/

跳出選項(xiàng),記得輸入yes,然后輸入密碼

4、環(huán)境導(dǎo)入:

Step-1:
鏡像導(dǎo)入
docker load < image.tar

Step-2:
(掛載的同時(shí)已經(jīng)創(chuàng)建了容器,容器名稱取決于下面的 --name)
掛載宿主機(jī)目錄至容器/data 目錄:(此處需要修改的是宿主機(jī)目錄)
這樣可以便于文件的傳輸共享
示例:
docker run -id --gpus all --name ljhcontain -v /home/ljh/Desktop/mydata/:/data/ ljhpytorchimage

Step-3:
進(jìn)入容器
docker exec -u 0 -it ljhcontain /bin/bash

Step-4:
nvidia-smi
查看是否可以使用gpu
完成!

5、快速進(jìn)入容器

正常進(jìn)入容器需要先su進(jìn)入超級用戶,然后執(zhí)行以下兩個(gè)命令
docker start ljhcontain(有時(shí)候不需要)
docker exec -u 0 -it ljhcontain /bin/bash

由于不是很好記憶,因此可以通過將上述命令直接寫在bash腳本執(zhí)行,步驟如下:

Step-1:
創(chuàng)建一個(gè)文件名為xxxx.sh的空文件,可以直接在home/用戶名/下面創(chuàng)建

Step-2:
在文件中寫入下面兩行(記得修改容器名稱),然后保存
docker start ljhcontain
docker exec -u 0 -it ljhcontain /bin/bash

Step-3:
bash xxx.sh
可以直接一步進(jìn)入容器(如下圖所示)

注:還有其他通過修改環(huán)境變量等方法,感覺有些麻煩,可以自行研究

6、其他問題解決記錄:

1)docker無法使用gpu,顯示沒有驅(qū)動(dòng)

curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | \
  sudo tee /etc/apt/sources.list.d/nvidia-docker.list
sudo apt-get update

sudo apt-get install -y nvidia-container-toolkit

2)bash: vim: command not found

apt-get update
apt-get install -y vim

3)容器進(jìn)入失敗

解決方法:
docker start testtorch
docker exec -u 0 -it testtorch /bin/bash  

4)su進(jìn)入失敗

$ su - root
Password: 
su: Authentication failure
Sorry.

解決辦法:
$ sudo passwd root
Enter new UNIX password: 
Retype new UNIX password: 
passwd: password updated successfully

5)pip安裝python包失敗

使用pip安裝python包的時(shí)候,出現(xiàn)以下錯(cuò)誤:
bash: /opt/conda/envs/pytorch/bin/pip: /home/ljh/anaconda3/envs/pytorch/bin/python: bad interpreter: No such file or directory

解決方法:
在容器中解決問題
step-1:【如下圖所示】
which pip
獲得pip路徑

step-2:【如下圖所示】
which python
獲得python路徑

step-3:【如下圖所示】
vim pip路徑
這里可能會vim報(bào)錯(cuò),解決方法參考問題3

step-4:
vim常用操作指令:
按下i表示開始編輯
按下Esc表示保存并退出編輯
退出編輯之后按下:wq可以退出vim

這一步需要完成的是修改把文件第一行的路徑修改為step-2獲取的路徑【如下圖所示】

step-5:
測試是否成功
pip -V

在這里插入圖片描述

6)docker中使用cv2失敗

import cv2
出現(xiàn)以下報(bào)錯(cuò):
ImportError: libGL.so.1: cannot open shared object file: No such file or directory

解決方法:
apt-get update
apt-get install ffmpeg libsm6 libxext6  -y

7)訓(xùn)練時(shí)出現(xiàn)共享內(nèi)存不夠(Bus error)

方法一:在Dataloader中將num_worker設(shè)置為0。意味著每一輪迭代時(shí),dataloader不再有自主加載數(shù)據(jù)到RAM這一步驟(因?yàn)闆]有worker了),而是在RAM中找batch,找不到時(shí)再加載相應(yīng)的batch。
方法二:在起Docker容器時(shí),設(shè)置 --ipc=host 或 --shm-size 或者

到此這篇關(guān)于Docker中conda環(huán)境的導(dǎo)出和導(dǎo)入的文章就介紹到這了,更多相關(guān)Docker conda導(dǎo)出導(dǎo)入內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Docker 鏡像加速訪問的幾種方法

    Docker 鏡像加速訪問的幾種方法

    本文介紹了DockerHub訪問速度慢或不穩(wěn)定時(shí)的替代方案,包括配置國內(nèi)鏡像源、使用一鍵腳本拉取鏡像以及鏡像導(dǎo)出與導(dǎo)入,感興趣的可以了解一下
    2024-12-12
  • 基于安裝docker desktop失敗的解決方案

    基于安裝docker desktop失敗的解決方案

    這篇文章主要介紹了基于安裝docker desktop失敗的解決方案,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • 在Ubuntu 16.04安裝與使用Docker的教程詳解

    在Ubuntu 16.04安裝與使用Docker的教程詳解

    Docker是一個(gè)應(yīng)用程序,它使得在容器中運(yùn)行應(yīng)用程序進(jìn)程變得簡單和容易,這類應(yīng)用程序就像虛擬機(jī),只有更便攜,更加資源友好,更依賴于主機(jī)操作系統(tǒng)。這篇文章主要介紹了在Ubuntu 16.04安裝與使用Docker的教程
    2017-01-01
  • Docker Swarm集群管理的使用及原理解析

    Docker Swarm集群管理的使用及原理解析

    這篇文章主要介紹了Docker Swarm集群管理的使用及原理解析,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-12-12
  • docker使用registry搭建本地鏡像倉庫實(shí)例詳解

    docker使用registry搭建本地鏡像倉庫實(shí)例詳解

    這篇文章主要介紹了docker使用registry搭建本地鏡像倉庫實(shí)例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-09-09
  • Rancher無法添加主機(jī)問題的解決方法

    Rancher無法添加主機(jī)問題的解決方法

    這篇文章主要給大家介紹了關(guān)于Rancher無法添加主機(jī)問題的解決方法,文中通過圖文介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-06-06
  • 使用Docker部署MySQL 5.7&8.0主從集群的方法步驟

    使用Docker部署MySQL 5.7&8.0主從集群的方法步驟

    這篇文章主要介紹了使用Docker部署MySQL 5.7&8.0主從集群的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • 使用docker compose搭建一個(gè)elk系統(tǒng)的方法

    使用docker compose搭建一個(gè)elk系統(tǒng)的方法

    這篇文章主要介紹了使用docker-compose搭建一個(gè)elk系統(tǒng)的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-08-08
  • Docker如何同時(shí)啟動(dòng)多個(gè)服務(wù)

    Docker如何同時(shí)啟動(dòng)多個(gè)服務(wù)

    這篇文章主要為大家詳細(xì)介紹了Docker如何同時(shí)啟動(dòng)多個(gè)服務(wù),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • Docker構(gòu)建pinpoint部署的方法

    Docker構(gòu)建pinpoint部署的方法

    這篇文章主要介紹了Docker構(gòu)建pinpoint部署的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-03-03

最新評論