本次Docker封装算法场景为CentOS7操作系统下使用Docker封装由anaconda(这个不重要)开发的算法:

系统:CentOS7
docker:19.03.13
anaconda:Anaconda3-2019.07-Linux-x86_64.sh

CentOS7安装Anaconda

将Anaconda.sh文件下载到所在位置

wget https://repo.continuum.io/archive/Anaconda3-2019.07-Linux-x86_64.sh

安装Anaconda

bash Anaconda3-2019.07-Linux-86_64.sh

一直回车,输入yes

增加环境变量

vim /root/.bashrc

输入内容如下

# added by Anaconda3 installer
export PATH='/root/anaconda3/bin:$PATH

保存退出后

source /root/.bashrc

验证Conda是否安装

conda --version

出现conda以及版本号即为正确安装

Anaconda创建虚拟环境

查看Conda信息

# 查看conda版本
conda --version
# 查看已存在的conda虚拟环境
conda env list
# 查看当前已安装的包
conda list

创建和删除虚拟环境

# 创建虚拟环境
conda create -n 虚拟环境名字 [python=3.7,此为选择python版本]

# 删除虚拟环境
conda remove -n 虚拟环境名字 --all

激活或退出虚拟环境

# 激活虚拟环境
conda activate 虚拟环境名字

# 退出虚拟环境
conda deactivate

CentOS安装Docker

安装Docker

# 下载docker的依赖
yum -y install yum-utils device-mapper-persistent-data lvm2

# 设置docker的镜像源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

# 安装docker
yum makecache fast
yum -y install docker-ce

启动Docker

# 启动docker
systemctl start docker

# 设置开机自动启动
systemctl enable docker

# 验证docker是否启动
docker run hello-world
# 如果出现'Hello from Docker!'则表示docker已安装并启动

Docker封装算法

准备工作

单独文件夹下内容

  1. 算法及数据文件夹
  2. Dockerfile (Docker封装算法的重要文件)
  3. requirements.txt (算法依赖环境清单)
  4. 新文件夹(目标文件夹)

requirements.txt内容

例如:
numpy==1.19.3
pandas==1.1.3
sklearn==0.23.2

Dockerfile内容

重要的模块如下:

  1. FROM(指定运行环境)
  2. COPY(拷贝指令,可以将算法及数据复制到WORKDIR中)
  3. WORKDIR(指定工作目录)
  4. RUN(预运行指令)
  5. CMD(docker运行时CMD运行指令)
# FROM python=指定版本
# COPY 文件夹(.表示当前文件夹) 目标文件夹
# WORKDIR 目标文件夹/
# RUN pip install -r requirements.txt,由于上面说的问题,我这里没有走requirements.txt
# CMD ['python', '文件名']

# 例如:
FROM python=3.7
COPY . /test
WORKDIR test/
RUN pip install -i https://pypi.douban.com/simple/ numpy pandas sklearn
CMD["python", "test.py"]

配置Docker国内服务器

# 修改docker配置文件
vim /etc/docker/daemon.json

输入内容如下

{"registry-mirrors":["https://registry.docker.cn.com"]}

重启docker

systemctl restart docker

Docker打包

# docker build -t tag名 Dockerfile所在位置
# 其中-t为给docker镜像打上tag标签
docker build -t test .

运行时我们将看到如下步骤

  1. Step 1/5:FROM python:3.7
  2. Step 2/5:COPY . test/
  3. Step 3/5:WORKDIR /test
  4. Step 4/5:RUN pip3 install --user -i https://pypi.douban.com/simple/ numpy pandas sklearn
  5. Step 5/5:CMD ["python", "test.py"]

使用打包好的算法

# docker run 镜像名

# 例如:
docker run try

标签: docker

已有 3 条评论

  1. 新项目准备上线,寻找志同道合的合作伙伴

  2. 2025年10月新盘 做第一批吃螃蟹的人coinsrore.com
    新车新盘 嘎嘎稳 嘎嘎靠谱coinsrore.com
    新车首发,新的一年,只带想赚米的人coinsrore.com
    新盘 上车集合 留下 我要发发 立马进裙coinsrore.com
    做了几十年的项目 我总结了最好的一个盘(纯干货)coinsrore.com
    新车上路,只带前10个人coinsrore.com
    新盘首开 新盘首开 征召客户!!!coinsrore.com
    新项目准备上线,寻找志同道合 的合作伙伴coinsrore.com
    新车即将上线 真正的项目,期待你的参与coinsrore.com
    新盘新项目,不再等待,现在就是最佳上车机会!coinsrore.com
    新盘新盘 这个月刚上新盘 新车第一个吃螃蟹!coinsrore.com

  3. 果博东方客服开户联系方式【182-8836-2750—】?薇- cxs20250806】
    果博东方公司客服电话联系方式【182-8836-2750—】?薇- cxs20250806】
    果博东方开户流程【182-8836-2750—】?薇- cxs20250806】
    果博东方客服怎么联系【182-8836-2750—】?薇- cxs20250806】

添加新评论