一、前置條件
1.創(chuàng)建 ubuntu 鏡像源文件【sources.list】
內(nèi)容如下
deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
2.下載 python 安裝包【Python-3.9.10.tgz】
訪問官網(wǎng)下載頁(yè) https://www.python.org/downloads/release/python-3910/
下拉選擇 Gzipped 包文章來源:http://www.zghlxwxcb.cn/news/detail-755184.html
二、構(gòu)建方法
1.構(gòu)建目錄
|---baseIMG_ub2004py3910pytorchgpucuda118
|
|-----python
| |-----Python-3.9.10.tgz
|
|-----ubuntu
| |-----sources.list
|
|-----Dockerfile
2.創(chuàng)建DockerFile
#FROM python:3.9
FROM ubuntu:20.04
# 作者
MAINTAINER ps
# 工作目錄
WORKDIR /baseIMG_ub2004py3910pytorchgpucuda118
# 宿主機(jī)文件復(fù)制到鏡像
ADD . /baseIMG_ub2004py3910pytorchgpucuda118
# 配置時(shí)區(qū)
ENV TZ=Asia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
# RUN rm -f /etc/localtime
# RUN ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' > /etc/timezone
# 更新ubuntu
RUN mv ./ubuntu/sources.list /etc/apt/sources.list
#RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 871920D1991BC93C
RUN apt --fix-broken -y install
RUN apt -y update
RUN apt -y upgrade
## 安裝python
#RUN apt-get install python3.7
# # 安裝chrome
# ## 安裝依賴
# RUN apt -y install libxss1 libappindicator1 libindicator7 fonts-liberation libasound2
# RUN apt -y install libatk-bridge2.0-0 libatspi2.0-0 libcurl3-gnutls libcurl3-nss libcurl4
# RUN apt -y install libdrm2 libgbm1 libgtk-3-0 libxkbcommon0 xdg-utils wget
# RUN apt --fix-broken -y install
# # 安裝瀏覽器
# RUN dpkg -i ./chrome/google-chrome-stable_current_amd64.deb
# # 查看版本
# RUN google-chrome --version
# # Google Chrome 101.0.4951.64
#
# # 安裝chromedriver
# # 安裝unzip
# RUN apt install unzip
# # 解壓
# RUN unzip ./chrome/chromedriver_linux64.zip
# # 移動(dòng)并創(chuàng)建軟連接到默認(rèn)路徑,后續(xù)啟動(dòng)selenium時(shí)就不需要指定chromedriver的路徑了
# RUN mv ./chromedriver /usr/local/share/chromedriver
# RUN ln -s /usr/local/share/chromedriver /usr/bin/chromedriver
# 安裝python
RUN apt -y install build-essential libbz2-dev
RUN apt -y install libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev
RUN apt -y install zlib1g-dev
RUN mv ./python /usr/local/bin/python
RUN cd /usr/local/bin/python && tar -xzvf Python-3.9.10.tgz && cd Python-3.9.10 && ./configure --enable-optimizations && make && make install
# 安裝pytorch-gpu-cuda11.8
RUN apt install -y libbz2-dev
# 阿里源
RUN pip3 config set global.index-url https://mirrors.aliyun.com/pypi/simple/
RUN python3 -m pip install -U pip setuptools wheel
RUN pip3 install apscheduler
## CPU
#RUN pip3 install torch torchvision torchaudio
# GPU
RUN pip3 install --timeout 18000 torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
# linux下需要此步驟以防報(bào)錯(cuò) ModuleNotFoundError: No module named '_bz2'
# RUN cp /usr/lib/python3.8/lib-dynload/_bz2.cpython-38-x86_64-linux-gnu.so /usr/local/lib/python3.7/lib-dynload/_bz2.cpython-37m-x86_64-linux-gnu.so
# 鏡像打包命令
# docker build -t ub2004py371chm101chmdr101:latest .
3.打包鏡像
docker build -t ub2004py3910pytorchgpucuda118:latest .
ps:創(chuàng)建鏡像名為 ub2004py3910pytorchgpucuda118 標(biāo)簽為 latest 的鏡像,從當(dāng)前路徑下的 DockerFile 文件打包文章來源地址http://www.zghlxwxcb.cn/news/detail-755184.html
到了這里,關(guān)于構(gòu)建Docker基礎(chǔ)鏡像(ubuntu20.04+python3.9.10+pytorch-gpu-cuda11.8)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!