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

网站开发成本会计科目网站域名怎么注册

网站开发成本会计科目,网站域名怎么注册,.net域名可以做银行网站吗,可信网站身份验证原文作者:我辈李想 版权声明:文章原创,转载时请务必加上原文超链接、作者信息和本声明。 文章目录 前言一、新建dockerfile文件二、使用build创建镜像1.报错:Your shell has not been properly configured to use conda activate.…

原文作者:我辈李想
版权声明:文章原创,转载时请务必加上原文超链接、作者信息和本声明。


文章目录

  • 前言
  • 一、新建dockerfile文件
  • 二、使用build创建镜像
    • 1.报错:Your shell has not been properly configured to use 'conda activate'.
    • 2.报错:source - not found
  • 三、使用run启动并进入容器
  • 四、检查虚拟环境是否激活,并安装了包
  • 五、通过conda参数实现安装python包


前言

在使用docker的过程中,跟着官方文档或各种教程都是很顺利的,在实际项目中,我碰到了一个docker部署conda镜像容器,实际程序是在虚拟环境slab中,不是base。项目是我从其他人手中接过来的,每次更新docker镜像时,都是pull镜像、run进入容器,更新环境,commit、push仓库。一直有个不一样的想法在冲击我,能不能直接用dockerfile创建镜像,然后直接push仓库。现在就有了这篇博客。


一、新建dockerfile文件

创建Dockerfile_conda文件,我们已经按照docker配置写入相关命令,内容如下:

FROM continuumio/miniconda3 AS base
WORKDIR /slabENV PATH /opt/conda/envs/slab/bin:$PATH
# 创建slab环境
RUN conda create --name slab python=3.9 
# 激活slab环境
RUN conda activate slab
# 安装python库
RUN pip install -i https://pypi.tuna.tsinghua.edu.cn/simple \uvicorn fastapi python-dotenv redis requests pymysql pandas \jsonpath sqlalchemy python-docx cx_Oracle schedule rabbitpy \pika python-multipart openpyxl superstream

主要关注RUN的三个命令,这是我们正常使用conda的命令。

二、使用build创建镜像

docker build -t pika_conda -f Dockerfile_conda .

因为dockerfile配置问题,这个无法创建镜像

1.报错:Your shell has not been properly configured to use ‘conda activate’.

这个报错我们仔细看时让我们使用conda init **,如果是在linux系统,可以这么干,但是在docker容器中,这个命令无效
在这里插入图片描述
我参考了这篇博客,在dockerfile中加入一条命令,现在dockerfile内容如下:

FROM continuumio/miniconda3 AS base
WORKDIR /slabENV PATH /opt/conda/envs/slab/bin:$PATH
# 创建slab环境
RUN conda create --name slab python=3.9 
# 激活slab环境
RUN source activate slab
# RUN conda activate slab
# 安装python库
RUN pip install -i https://pypi.tuna.tsinghua.edu.cn/simple \uvicorn fastapi python-dotenv redis requests pymysql pandas \jsonpath sqlalchemy python-docx cx_Oracle schedule rabbitpy \pika python-multipart openpyxl superstream

2.报错:source - not found

现在还不能确定虚拟环境是否激活成功,因为我们是docker镜像,无法直接使用source。我有找了一篇博客,现在dockerfile内容如下:

FROM continuumio/miniconda3 AS base
WORKDIR /slabENV PATH /opt/conda/envs/slab/bin:$PATH
# 创建slab环境
RUN conda create --name slab python=3.9 
# 激活slab环境
RUN /bin/bash -c "source activate slab"
# RUN conda activate slab
# 安装python库
RUN pip install -i https://pypi.tuna.tsinghua.edu.cn/simple \uvicorn fastapi python-dotenv redis requests pymysql pandas \jsonpath sqlalchemy python-docx cx_Oracle schedule rabbitpy \pika python-multipart openpyxl superstream

现在的dockerfile已经可以成功创建镜像了。

三、使用run启动并进入容器

docker run -it --name myconda_test pika_conda:latest /bin/bash

这里有个问题,虽然我们进入了容器,但是默认激活的环境还是base
在这里插入图片描述我们还需要修改dockerfile文件,内容如下:

FROM continuumio/miniconda3 AS base
WORKDIR /slabENV PATH /opt/conda/envs/slab/bin:$PATH
# 创建slab环境
RUN conda create --name slab python=3.9 
# 激活slab环境
RUN /bin/bash -c "source activate slab"
# RUN conda activate slab
# 激活默认环境
RUN echo "conda activate slab" >> ~/.bashrc
# 安装python库
RUN pip install -i https://pypi.tuna.tsinghua.edu.cn/simple \uvicorn fastapi python-dotenv redis requests pymysql pandas \jsonpath sqlalchemy python-docx cx_Oracle schedule rabbitpy \pika python-multipart openpyxl superstream

在这里插入图片描述
网络上有将conda activate slab放在CMD中,也可以实现上述的效果,但是这样有一个风险。我们这个镜像最终会被其他dockerfile文件from,新的dockerfile中也存在CMD,可能被覆盖。

四、检查虚拟环境是否激活,并安装了包

在容器中,我们直接使用pip list 查看python的三方包,我们可以看到已经成功安装了。
在这里插入图片描述
最后我整理了一下dockerfile的内容,下面的是最终版文件。

FROM continuumio/miniconda3 AS base
WORKDIR /slabENV PATH /opt/conda/envs/slab/bin:$PATHRUN conda create --name slab python=3.9 \&& /bin/bash -c "source activate slab" \&& echo "conda activate slab" >> ~/.bashrc \&& pip install -i https://pypi.tuna.tsinghua.edu.cn/simple \uvicorn fastapi python-dotenv redis requests pymysql pandas \jsonpath sqlalchemy python-docx cx_Oracle schedule rabbitpy \pika python-multipart openpyxl superstream

五、通过conda参数实现安装python包

通过上文,我们是按照正常的conda使用路线完成了python包安装至指定虚拟环境。因为pip默认是直接安装至base环境,我们可以通过需改conda设置,实现包安装至slab,这是一个环境变量CONDA_DEFAULT_ENV。dockerfile的终版内容如下:

FROM continuumio/miniconda3 AS base
WORKDIR /slabENV PATH /opt/conda/envs/slab/bin:$PATH
ENV CONDA_DEFAULT_ENV $slabRUN conda create --name slab python=3.9 \&& echo "conda activate slab" >> ~/.bashrc \&& pip install -i https://pypi.tuna.tsinghua.edu.cn/simple \uvicorn fastapi python-dotenv redis requests pymysql pandas \jsonpath sqlalchemy python-docx cx_Oracle schedule rabbitpy \pika python-multipart openpyxl superstream xlsxwriter pytest
http://www.mnyf.cn/news/46739.html

相关文章:

  • 网站排名快速提升做一个app平台需要多少钱
  • 九江有没有做网站的公司网文网站排名
  • 有域名的话怎么做网站青岛百度seo排名
  • 建设银行的网站为什么这么卡上海网站制作推广
  • 有没有做网站一次付费最新的疫情最新消息
  • 公司门户网站开发长春建站服务
  • 产品销售网站模板网站seo的优化怎么做
  • 泊头市有做网站的吗seo页面代码优化
  • 永康高端网站设计渠道推广费用咨询
  • 中国十大网络科技公司排名宁波免费建站seo排名
  • 安徽建筑管理人员信息网百度seo排名教程
  • 百度做网站和推广效果怎么样推广公司有哪些公司
  • 重庆有哪些网络公司seo软件全套
  • 响应式酒店网站模板有什么平台可以发广告
  • 网站开发职业定位湘潭网站制作
  • 做电商能赚钱吗seo如何优化关键词排名
  • 专业网站建设公司排名湖南正规关键词优化首选
  • 现代网站建设公司数字化营销怎么做
  • 网站建设 设计广州百度seo
  • 网页制作下载链接宁波网站制作优化服务
  • 企业展厅设计施工一体化广州seo工程师
  • 上海黄浦 网站建设最佳的资源搜索引擎
  • 虎门专业网站建设中公教育培训机构官网
  • 网站建设运营公司推荐青岛网络优化代理
  • wordpress 模板层次结构信息图怎么优化自己网站
  • 厦门正规网站建设多少seo怎么做?
  • 做网站需要准备资料广州seo团队
  • 襄阳高新区建设局网站网络推广具体内容
  • 小说网站怎么做词长春头条新闻今天
  • 怎么做营销型网站设计网络热词2021流行语