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

docker容器使用aconda运行python程序

 最近在工作中发现需要独立的python环境运行程序,使用aconda可以完成独立python环境

但是aconda会出现在镜像构建完之后无法自动调用aconda创建的环境,查找发现

可以通过在dockerfile添加这2行代码解决这个问题

# 创建一个新的Python环境
RUN conda create --name myenv python=3.10.12 -yRUN echo "conda activate myenv" >> ~/.bashrcENV PATH /opt/conda/envs/myenv/bin:$PATH

这样使用aconda这个容器也会使用自己创建的python环境

# 使用官方的Ubuntu镜像作为基础镜像
FROM ghcr.io/osgeo/gdal:ubuntu-small-latest# 安装基本工具和依赖
RUN apt-get update && apt-get install -y --no-install-recommends \wget \ca-certificates \&& rm -rf /var/lib/apt/lists/*# 下载并安装Anconda
RUN wget https://repo.anaconda.com/archive/Anaconda3-2024.06-1-Linux-x86_64.sh -O /tmp/anaconda.sh
RUN /bin/bash /tmp/anaconda.sh -b -p /opt/conda && \rm /tmp/anaconda.sh# 设置环境变量以使用Anconda
ENV PATH=/opt/conda/bin:$PATH
# 激活环境SHELL ["/bin/bash", "-c"]# 创建一个新的Python环境
RUN conda create --name myenv python=3.10.12 -yRUN echo "conda activate myenv" >> ~/.bashrcENV PATH /opt/conda/envs/myenv/bin:$PATH# 添加你的Python脚本到容器中
COPY my_script.py /usr/src/my_script.py# 运行Python程序
CMD ["/opt/conda/envs/myenv/bin/python", "--version"]CMD ["/opt/conda/envs/myenv/bin/python", "/usr/src/my_script.py"]

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • KVM是什么,如何给一台Linux系统使用KVM技术变成好几个不同配置的Linux系统?
  • 回首“八年级上册语文课本”-----原文+感慨
  • angular xlsx-style,复杂表头样式导出
  • Redis的内存淘汰策略-noeviction
  • [kylin M900]麒麟操作系统固件修改与合成
  • 超级会员卡积分收银系统源码,一站式解决方案,可以收银的小程序 带完整的安装代码包以及搭建部署教程
  • WAF和防火墙有什么区别
  • 基于jstack、jmap、jstat 进行JVM监控
  • 避坑之:深信服AC跨三层取MAC(核心交换机是锐捷S7808C_RGOS 11.0(4)B2P1)
  • Java Operator SDK
  • day01-项目概述、环境搭建
  • CMake构建学习笔记13-opencv库的构建
  • 如何克服编程学习中的挫折感?
  • Unity工具篇 专栏目录
  • Python操作 MySQL 之 pysql与SQLAchemy
  • 345-反转字符串中的元音字母
  • Apache Pulsar 2.1 重磅发布
  • Bootstrap JS插件Alert源码分析
  • CSS实用技巧干货
  • Java Agent 学习笔记
  • Js基础——数据类型之Null和Undefined
  • linux学习笔记
  • MYSQL如何对数据进行自动化升级--以如果某数据表存在并且某字段不存在时则执行更新操作为例...
  • RedisSerializer之JdkSerializationRedisSerializer分析
  • spring-boot List转Page
  • vue2.0项目引入element-ui
  • 阿里云应用高可用服务公测发布
  • 工作手记之html2canvas使用概述
  • 区块链共识机制优缺点对比都是什么
  • 如何解决微信端直接跳WAP端
  • 一起来学SpringBoot | 第三篇:SpringBoot日志配置
  • Android开发者必备:推荐一款助力开发的开源APP
  • ​RecSys 2022 | 面向人岗匹配的双向选择偏好建模
  • ​香农与信息论三大定律
  • #Z2294. 打印树的直径
  • $(this) 和 this 关键字在 jQuery 中有何不同?
  • (1) caustics\
  • (39)STM32——FLASH闪存
  • (android 地图实战开发)3 在地图上显示当前位置和自定义银行位置
  • (附源码)springboot青少年公共卫生教育平台 毕业设计 643214
  • (每日持续更新)信息系统项目管理(第四版)(高级项目管理)考试重点整理第3章 信息系统治理(一)
  • (已解决)报错:Could not load the Qt platform plugin “xcb“
  • (轉貼)《OOD启思录》:61条面向对象设计的经验原则 (OO)
  • . Flume面试题
  • ./configure,make,make install的作用
  • .form文件_一篇文章学会文件上传
  • .L0CK3D来袭:如何保护您的数据免受致命攻击
  • .Net Core缓存组件(MemoryCache)源码解析
  • .NET delegate 委托 、 Event 事件
  • .Net mvc总结
  • .Net 访问电子邮箱-LumiSoft.Net,好用
  • .Net(C#)自定义WinForm控件之小结篇
  • .NET/C# 使窗口永不获得焦点
  • /*在DataTable中更新、删除数据*/
  • @RequestParam,@RequestBody和@PathVariable 区别