日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux pandas教程_竞赛中的Docker使用教程

發布時間:2023/12/19 linux 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux pandas教程_竞赛中的Docker使用教程 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1 Docker 簡介

Docker 是一個開源的應用容器引擎,讓開發者可以打包他們的應用以及依賴包到一個可移植的鏡像中,然后發布到任何流行的Linux或Windows機器上,也可以實現虛擬化。容器是完全使用沙箱機制,相互之間不會有任何接口。

2 容器化的需要和意義

  • 無法保證生產環境的操作系統以及底層庫的版本Centos、Ubuntu、Debian、Fedora;gcc、glibc、gfortran
  • 一臺服務器上部署多個項目,依賴不同的包,甚至python版本numpy、scipy、pandas、scikit-learn、tensorflow、keras;python2.7/3.5/3.6 pyenv并不能做到完全的隔離
  • 開發環境在做批處理,但生產環境很多都是流處理
    • 開發:用numpy讀入一個文件,處理完成之后寫結果
    • 生產:請在**ms內返回結果

現在越來越多的比賽在初賽或復賽的時候也是需要提交docker鏡像,所以這里我以AMAP-TEAD比賽為例,做一個docker在比賽中的使用教程,比賽鏈接如下

https://tianchi.aliyun.com/competition/entrance/531809/introduction

3 docker&&nvidia-docker的安裝及設置(Ubuntu18.04)

3.1 安裝

??#?新apt包的索引
??sudo?apt-get?update?
??#添加Docker倉庫到apt
??sudo?apt-get?install?apt-transport-https?ca-certificates?curl?gnupg-agent?software-properties-common
??#添加Docker的官方GPG?key
??curl?-fsSL?https://download.docker.com/linux/ubuntu/gpg?|?sudo?apt-key?add?-
??sudo?add-apt-repository?"deb?[arch=amd64]?https://download.docker.com/linux/ubuntu?$(lsb_release?-cs)?stable"
??#安裝docker-ce
??sudo?apt-get?update
??sudo?apt-get?install?docker-ce
??#安裝nvidia-docker
??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-docker2
??sudo?pkill?-SIGHUP?dockerd

3.2 設置

  • 給用戶配置docker權限
??sudo?groupadd?docker
??sudo?gpasswd?-a?ailight(user)?docker
??newgrp?docker
  • 修改鏡像和容器的保存路徑

4 阿里云鏡像服務

https://tianchi.aliyun.com/competition/entrance/231759/tab/174

按操作流程開通我們所做比賽的鏡像倉庫,成功后如圖

5 Docker操作(只展示可能常用到的)

示例:

  • 指定容器內目錄與宿主機目錄共享(:?之前是宿主機文件夾,之后是容器需共享的文件夾)(聯網)
??docker?run?-itd?--net?host?imagename?/bin/bash
  • Docker訪問容器
docker?exec?-it?CONTAINER?/bin/bash
  • 導出鏡像到文件&&導入鏡像文件
docker?save?$DOCKER_IMAGE?>?$filename
docker?load?

5 制作比賽鏡像以及提交

5.1 基礎鏡像的查找和下載

pytorch1.6.0+py38+cuda10.2

??docker?pull?wangkenpu/pytorch1.6.0-hvd-apex-py38-cuda10.2-cudnn7:20200827

5.2 安裝我們所需要的包(兩種方法)

  • 編寫Dockerfile,安裝我們所需要的包
    • FROM :從指定鏡像中創建
    • RUN在當前鏡像基礎上執行指定命令,并提交為新的鏡像
    • COPY復制本地主機的到容器中的
    • WORKDIR /path/to/workdir 配置工作目錄
    • ENTRYPOOINT ["executable", "param1", "param2"]
    • 配置容器啟動后執行的命令
    • 詳見http://www.dockerinfo.net/dockerfile%E4%BB%8B%E7%BB%8D 介紹
??docker?build?-t?amap_base?.
  • 直接run鏡像在容器里安裝
    • nvidia-docker run -itd --net host image_id /bin/bash
  • nvidia-docker exec-it 1ef2652342be /bin/bash(訪問容器)

在容器內部安裝mmclassification,這里就不細說了 ,具體和我們平常在服務器的安裝方法一致

5.3 Copy模型文件和測試代碼到容器內

docker?cp?MMCLS.py?1ef2652342be:/amap/code/

5.4 Commit容器為新的鏡像

docker?commit?1ef2652342be?amap:v1

構建提交鏡像(run.sh&&Dockerfile)

docker?build?-t?天池之前創建的鏡像倉庫:1.0?.

5.5 本地測試

nvidia-docker run -v /data:/tcdata image sh run.sh

我用初賽B榜測試集來測試,-v 掛載本地路徑/home/ailight/桌面/work_dir/amap/data/test按比賽要求掛載為/tcdata

  • 運行沒有問題 在容器中也可以找到result.json
    • Docker push yourimage(提交)

5.6 提交鏡像

得到了我們很菜的成績

6 總結

Docker 非常便于開發,交付和運行應用程序的開放平臺。Docker 使您能夠將應用程序與基礎架構分開,從而可以快速交付軟件。借助 Docker,您可以與管理應用程序相同的方式來管理基礎架構。通過利用 Docker 的方法來快速交付,測試和部署代碼,大大減少編寫代碼和在生產環境中運行代碼之間的延遲。

注:大家有什么想了解的也可以在下方留言告訴我們,我們也會選擇做分享

總結

以上是生活随笔為你收集整理的linux pandas教程_竞赛中的Docker使用教程的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。