Docker利用DockerFile創(chuàng)建部署NVIDIA+PyTorch容器的詳細(xì)過(guò)程
Docker利用DockerFile創(chuàng)建部署NVIDIA+PyTorch容器
1、創(chuàng)建 Dockerfile
首先在用戶的主目錄下創(chuàng)建一個(gè)名為 mycode 的文件夾,然后創(chuàng)建 Dockerfile
mkdir mycode cd mycode/ touch Dockerfile
注意: docker 文件的名稱必須是 Dockerfile,如果我們不遵循這個(gè)約定,我們的 docker 構(gòu)建命令將不起作用。
2、在 Dockerfile 中添加關(guān)鍵字和命令
內(nèi)容如下:
# 設(shè)置基礎(chǔ)映像 FROM nvidia/cuda:11.8.0-cudnn8-devel-ubuntu22.04 # 定義構(gòu)建參數(shù) # 例如ARG USER=test為USER變量設(shè)置默認(rèn)值"test"。 ARG USER=test ARG PASSWORD=${USER}123$ # 處理討厭的 Python 3 編碼問(wèn)題 ENV LANG C.UTF-8 ENV DEBIAN_FRONTEND noninteractive ENV MPLLOCALFREETYPE 1 # 更新軟件包列表并安裝軟件屬性通用包 RUN apt-get update && apt-get install -y software-properties-common # 添加Python ppa,以便后續(xù)安裝Python版本 RUN add-apt-repository ppa:deadsnakes/ppa # 安裝Ubuntu的常用軟件包,包括wget、vim、curl、zip、unzip等 RUN apt-get update && apt-get install -y \ build-essential \ git \ wget \ vim \ curl \ zip \ zlib1g-dev \ unzip \ pkg-config \ libgl-dev \ libblas-dev \ liblapack-dev \ python3-tk \ python3-wheel \ graphviz \ libhdf5-dev \ python3.9 \ python3.9-dev \ python3.9-distutils \ openssh-server \ swig \ apt-transport-https \ lsb-release \ libpng-dev \ ca-certificates &&\ apt-get clean &&\ ln -s /usr/bin/python3.9 /usr/local/bin/python &&\ ln -s /usr/bin/python3.9 /usr/local/bin/python3 &&\ curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py &&\ python3 get-pip.py &&\ rm get-pip.py &&\ # 清理APT緩存以減小Docker鏡像大小 rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* # 設(shè)置時(shí)區(qū) ENV TZ=Asia/Seoul RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone # 為應(yīng)用程序創(chuàng)建一個(gè)用戶 RUN useradd --create-home --shell /bin/bash --groups sudo ${USER} RUN echo ${USER}:${PASSWORD} | chpasswd USER ${USER} ENV HOME /home/${USER} WORKDIR $HOME # 安裝一些Python庫(kù),例如numpy、matplotlib、scipy等 RUN python3 -m pip --no-cache-dir install \ blackcellmagic\ pytest \ pytest-cov \ numpy \ matplotlib \ scipy \ pandas \ jupyter \ scikit-learn \ scikit-image \ seaborn \ graphviz \ gpustat \ h5py \ gitpython \ ptvsd \ Pillow==6.1.0 \ opencv-python # 安裝PyTorch和DataJoint等其他庫(kù) # 其中torch==1.13.1表示安裝版本為1.13.1的PyTorch RUN python3 -m pip --no-cache-dir install -i https://pypi.doubanio.com/simple/ \ torch==1.13.1 \ torchvision==0.14.1 \ torchaudio==0.13.1 \ 'jupyterlab>=2' RUN python3 -m pip --no-cache-dir install datajoint==0.12.9 # 設(shè)置環(huán)境變量LD_LIBRARY_PATH,以便支持性能分析庫(kù) ENV LD_LIBRARY_PATH /usr/local/cuda/extras/CUPTI/lib64:${LD_LIBRARY_PATH} # 啟動(dòng)ssh服務(wù)器,打開(kāi)22號(hào)端口 USER root RUN mkdir /var/run/sshd EXPOSE 22 CMD ["/usr/sbin/sshd", "-D"]
3、使用 Docker Build 命令構(gòu)建鏡像
在 mycode 文件夾下運(yùn)行 docker build 命令,-t 選項(xiàng)用于設(shè)置鏡像的標(biāo)簽名稱。(注意:如下指令中最后的“.”表示在當(dāng)前目錄下)
$ docker build -t jboss-eap:v1 .
結(jié)果如下:
4、驗(yàn)證和測(cè)試 Docker 映像
到此這篇關(guān)于Docker利用DockerFile創(chuàng)建部署NVIDIA+PyTorch容器的文章就介紹到這了,更多相關(guān)Docker創(chuàng)建部署NVIDIA+PyTorch容器內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
docker-compose啟動(dòng)服務(wù)方式
這篇文章主要介紹了docker-compose啟動(dòng)服務(wù)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-05-05Docker如何部署SQL?Server?2017?Always?On集群
這篇文章主要介紹了Docker如何部署SQL?Server?2017?Always?On集群?jiǎn)栴},具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-07-07win10中docker部署和運(yùn)行countly-server的流程
這篇文章主要記錄一下windows10中使用docker容器安裝和部署countly-server的整個(gè)流程,本文給大家講解的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2019-11-11Docker實(shí)現(xiàn)從零開(kāi)始搭建SOLO個(gè)人博客的方法步驟
本文主要介紹了Docker實(shí)現(xiàn)從零開(kāi)始搭建SOLO個(gè)人博客,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-11-11云原生使用Docker部署mysql數(shù)據(jù)庫(kù)的詳細(xì)過(guò)程
使用docker部署mysql,可以省去mysql的安裝配置過(guò)程,而且不限制數(shù)量,即起即用,下面這篇文章主要給大家介紹了關(guān)于云原生使用Docker部署mysql數(shù)據(jù)庫(kù)的詳細(xì)過(guò)程,需要的朋友可以參考下2023-03-03使用docker啟動(dòng)redis守護(hù)進(jìn)程的詳細(xì)流程
在現(xiàn)代軟件開(kāi)發(fā)中,緩存和消息隊(duì)列是提高應(yīng)用性能和擴(kuò)展性的關(guān)鍵,Redis 是一種流行的內(nèi)存數(shù)據(jù)結(jié)構(gòu)存儲(chǔ)系統(tǒng),使用 Docker 容器化技術(shù)可以方便地部署和管理 Redis 服務(wù),本文給大家介紹了使用docker啟動(dòng)redis守護(hù)進(jìn)程的詳細(xì)流程,需要的朋友可以參考下2025-01-01