当前位置: 首页 > wzjs >正文

网站制作与维护公司抚顺seo

网站制作与维护公司,抚顺seo,腾讯微校怎么做微网站,石家庄 外贸网站建设公司文章目录 前言Dockerfile 核心模块解析**一、Dockerfile基础镜像选择二、系统基础配置1、时区设置2、镜像源替换 三、系统依赖安装四、复制本地文件五、指定路径六、Anaconda环境配置1、anaconda环境安装2、配置虚拟环境3、创建conda虚拟环境4、启动和安装环境 七、完整dockerf…

文章目录

  • 前言
  • Dockerfile 核心模块解析**
  • 一、Dockerfile基础镜像选择
  • 二、系统基础配置
    • 1、时区设置
    • 2、镜像源替换
  • 三、系统依赖安装
  • 四、复制本地文件
  • 五、指定路径
  • 六、Anaconda环境配置
    • 1、anaconda环境安装
    • 2、配置虚拟环境
    • 3、创建conda虚拟环境
    • 4、启动和安装环境
  • 七、完整dockerfile文件

前言

在深度学习与自然语言处理领域,环境配置的复杂性常常成为开发者的痛点。本文将通过一个基于CUDA 12.1的深度学习环境Dockerfile实例,详解如何高效构建可复现的容器化开发环境,并结合Dockerfile最佳实践,助你掌握企业级镜像构建技巧。

Dockerfile 核心模块解析**

一、Dockerfile基础镜像选择

可以使用网上docker镜像拉取,也可以使用本地镜像构建。我使用本地镜像构建,其代码如下:

FROM nvidia/cuda:12.1.1-cudnn8-devel-ubuntu22.04

关键点:选择官方CUDA镜像,确保GPU加速支持
最佳实践
• 优先使用带版本标签的官方镜像(如12.1.1-cudnn8),避免latest标签
• 开发环境推荐-devel版本,包含完整开发工具链

二、系统基础配置

给系统配置时间区和镜像源设置,分别如下:

1、时区设置

# 时区设置
ENV TZ=Asia/Shanghai
RUN apt-get update && \DEBIAN_FRONTEND=noninteractive apt-get install -y tzdata && \ln -fs /usr/share/zoneinfo/$TZ /etc/localtime && \echo $TZ > /etc/timezone

2、镜像源替换

RUN sed -i \-e 's|http://.*ubuntu.com|https://mirrors.aliyun.com|g' \/etc/apt/sources.list

技术细节
DEBIAN_FRONTEND=noninteractive:避免交互式提示,实现静默安装
分层构建:合并apt-get update与安装命令,防止缓存过期
• 国内镜像加速:替换阿里云源提升包下载速度

三、系统依赖安装

一般而言,需要对docker镜像进行安装,可使用如下命令完成。

RUN apt-get install -y --no-install-recommends \build-essential libreadline-dev ... && \apt-get clean && \rm -rf /var/lib/apt/lists/*

优化技巧
--no-install-recommends:仅安装必要依赖,减少镜像体积
清理缓存apt-get cleanrm -rf组合减少冗余文件

四、复制本地文件

通过ADD命令实现。

# 复制项目文件
ADD nl2sql /opt/nl2sql
WORKDIR /opt/nl2sql

五、指定路径

在 Dockerfile 中,WORKDIR 指令用于设置容器内的工作目录。它定义了后续的 RUN、CMD、ENTRYPOINT、COPY 和 ADD 指令执行时的默认路径。

WORKDIR /opt/nl2sql

六、Anaconda环境配置

如果你需要配置anaconda环境安装,可以使用网络下载或本地提供,我使用本地提供。

1、anaconda环境安装

anaconda环境安装使用了本地文件,也指定安装了/home/anaconda3路径中。

ADD Anaconda3-2022.10-Linux-x86_64.sh /tmp/
RUN bash /tmp/Anaconda3-2022.10-Linux-x86_64.sh -b -p /home/anaconda3 && \rm /tmp/Anaconda3-2022.10-Linux-x86_64.sh

最佳实践
• 使用ADD指令:支持本地文件直接部署(需注意与COPY的区别)
虚拟环境隔离:创建独立conda环境避免包冲突

2、配置虚拟环境

简单说就是将conda路径加载到~/.bashrc系统环境中。

# 配置环境变量(参考[4,5,7](@ref))
ENV PATH="/home/anaconda3/bin:$PATH"
RUN conda init bash && \conda config --set auto_activate_base false

3、创建conda虚拟环境

# 创建虚拟环境(参考[1,5,7](@ref))
RUN conda create -y -n nl2sql_env python=3.12.9

4、启动和安装环境

启动虚拟环境和安装相应库,如下:

# 安装Python依赖(在虚拟环境中安装[1,3,7](@ref))
RUN echo "conda activate nl2sql_env" >> ~/.bashrc && \/bin/bash -c "source activate nl2sql_env && \python -m pip install --upgrade pip && \pip install \langchain-qdrant \langchain_openai \langchain==0.3.19 \dmPython \vanna==0.7.6 \simplejson \llama-index \loguru==0.7.3 \dataclasses \qdrant_client \langchain_qdrant \unstructured \langchain-community \python-docx \-i https://pypi.tuna.tsinghua.edu.cn/simple \--trusted-host pypi.tuna.tsinghua.edu.cn"

七、完整dockerfile文件

我给出整体内容如下:


# 基础镜像(基于CUDA 12.1 + cuDNN 8 + Ubuntu 22.04)
FROM nvidia/cuda:12.1.1-cudnn8-devel-ubuntu22.04# ---------- 系统基础配置 ----------
# 设置时区(需显式安装tzdata[6,7](@ref))
ENV TZ=Asia/Shanghai
RUN apt-get update && \DEBIAN_FRONTEND=noninteractive apt-get install -y tzdata && \ln -fs /usr/share/zoneinfo/$TZ /etc/localtime && \echo $TZ > /etc/timezone && \apt-get clean# 替换阿里云镜像源(完整覆盖所有仓库[9,11](@ref))
RUN sed -i \-e 's|http://$archive\|security$.ubuntu.com|https://mirrors.aliyun.com|g' \/etc/apt/sources.list# ---------- 系统依赖安装 ----------
RUN apt-get update && \apt-get install -y --no-install-recommends \software-properties-common \build-essential \libreadline-dev \libncursesw5-dev \libssl-dev \libsqlite3-dev \tk-dev \libgdbm-dev \libbz2-dev \zlib1g-dev \libffi-dev \liblzma-dev \wget \bzip2 && \apt-get clean && \rm -rf /var/lib/apt/lists/*# ---------- Anaconda3 安装 ----------
# 安装Anaconda到指定路径(参考[1,3,6](@ref))
ADD Anaconda3-2022.10-Linux-x86_64.sh /tmp/
RUN bash /tmp/Anaconda3-2022.10-Linux-x86_64.sh -b -p /home/anaconda3 && \rm /tmp/Anaconda3-2022.10-Linux-x86_64.sh# 配置环境变量(参考[4,5,7](@ref))
ENV PATH="/home/anaconda3/bin:$PATH"
RUN conda init bash && \conda config --set auto_activate_base false# 创建虚拟环境(参考[1,5,7](@ref))
RUN conda create -y -n nl2sql_env python=3.12.9# ---------- 应用部署 ----------
# 复制项目文件
ADD nl2sql /opt/nl2sql
WORKDIR /opt/nl2sql# 安装Python依赖(在虚拟环境中安装[1,3,7](@ref))
RUN echo "conda activate nl2sql_env" >> ~/.bashrc && \/bin/bash -c "source activate nl2sql_env && \python -m pip install --upgrade pip && \pip install \langchain-qdrant \langchain_openai \langchain==0.3.19 \dmPython \vanna==0.7.6 \simplejson \llama-index \loguru==0.7.3 \dataclasses \qdrant_client \langchain_qdrant \unstructured \langchain-community \python-docx \-i https://pypi.tuna.tsinghua.edu.cn/simple \--trusted-host pypi.tuna.tsinghua.edu.cn"# 设置执行权限(按需调整[5](@ref))
RUN find /opt/nl2sql -name "*.sh" -exec chmod +x {} \;

dockerfile成功安装镜像如下图:
在这里插入图片描述

http://www.dtcms.com/wzjs/325738.html

相关文章:

  • 网页设计毕业论文题目怎么定怎么分析一个网站seo
  • wordpress增加页面分类优化设计答案大全英语
  • 广州品牌网站设计价格如何提高自己在百度的排名
  • 怎样做网站制作不要手贱搜这15个关键词
  • 中英文网站建站外链系统
  • 常州做网站找哪家好郑州网站建设推广有限公司
  • 品牌网站是什么网站源码下载
  • 毕业论文代做网站培训课程总结
  • 如何提升网站的收录量广告公司推广平台
  • 上海闵行区租房价格全网seo优化电话
  • 网站音乐播放器源码免费b站推广网站在线
  • 直接做海报的网站免费的网站申请
  • 上海网站建设app上海seo外包公司
  • wordpress 自定义浙江网站seo
  • wordpress2019官方主题沈阳seo顾问
  • 佛山做外贸网站服务免费找客源软件
  • 重庆网红景点有哪些昆山优化外包
  • 扬州网站建设网页设计模板网站
  • 政府网站集约化建设 三年成功的网络营销案例ppt
  • 可以做初中地理题的网站百度广告推广收费标准
  • 仿牌网站服务器网页制作的软件有哪些
  • 做设计应该看哪些网站游戏推广是干什么的
  • 做网站建设的电话销售网络营销的平台有哪些
  • 武汉做网站开发的公司seo销售是做什么的
  • 个人网站建设哪家好江苏seo排名
  • 路由器上做网站sem优化是什么
  • 关于网站制作个人网站制作流程
  • 济南网站建设设计公司湖北网站seo策划
  • 婚纱摄影网站模板下载网推平台有哪些
  • 深圳开发网站建设哪家好如何做google推广