制作CCE集群预处理镜像
Dockerfile示例如下:
# 载入基础镜像,用户可根据数据集处理任务的实际需要选择合适的镜像环境,例如ubuntu:latest
FROM {基础镜像}
# 设置工作目录【可选】默认为ROOT,用户可修改USER及PATH
WORKDIR /root/workspace
# 按需安装用户APT环境;如果需要修改/etc/apt/sources.list可替换
COPY /path/to/sources.list /etc/apt/sources.list
RUN apt-get install vim
# 按需安装用户算法环境;如果需要修改~/.pip/pip.conf可替换;用户也可安装miniconda进行包管理
COPY /path/to/pip.conf /root/.pip/pip.conf
COPY /path/to/requirements.txt /root
RUN pip install -r /root/requirements.txt
# 设置环境变量【可选】
ENV PYTHONUNBUFFERED 1
对于Dockerfile的统一构建方式如下:
docker build -f [DockerfileName] -t [ImageName:ImageVersion] .
注:CCE集群数据集镜像不支持调用GPU资源。
预处理镜像启动时,根据创建数据集的不同来源会向运行环境注入如下环境变量:
|
环境变量 |
支持的数据来源 |
含义 |
取值示例 |
|---|---|---|---|
|
OCTPS_DATASET_DIR |
标注/本地/通用存储/数据集 |
待处理数据在容器中的挂载位置 |
标注:/tmp/label-data/ 本地:/tmp/dataset-temp/local_import/6f91947c-cd47-434b-b654-8332da961d7a/f7c9a054-3c9e-49c7-8934-a1e1d668eb12/ 通用存储:/tmp/warehouse/ 数据集:/tmp/dataset-new/6f91947c-cd47-434b-b654-8332da961d7a/dataset/ |
|
TARGET_RESULT_DIR |
全部 |
处理后文件的存放位置,用户需要将预处理的最终产物存储到该环境变量对应的目录下,确保结果不会丢失。 |
/tmp/temp-data/dataset/c8a73760-b5df-4f61-81d7-17e144fa6d69/result/data/ |
|
CUSTOMER_BUCKET |
OBS |
创建OBS来源的导入任务时,指定的OBS桶名。 |
|
|
SOURCE_DATASET_FILE_DIR |
标注/OBS/通用存储 |
标注:按“标注信息”过滤后确定的全部待处理文件的索引,内容为json, 文件内容示例:
OBS: 自定义源桶的目录 通用存储:按“筛选条件”过滤后确定的全部待处理文件的索引,取值为索引文件所在的根目录。注:该目录下可能有多个json索引文件,如:file_attributes_1.json, file_attributes_2.json... json文件内容示例:
|
标注: /tmp/dataset-temp/{versionId}/f7c9a054-3c9e-49c7-8934-a1e1d668eb12/result_frame.json 通用存储: /tmp/data-warehouse/warehouse-dataset/ |
|
OCTOPUS_INPUT_FILTER_PATH_LIST |
通用存储 |
筛选条件为“按目录树筛选”时,客户选定的目录或文件列表, 以“,”分隔 |
/tmp/warehouse/process-job-1,/tmp/warehouse/process-job-2/folder1/,/tmp/warehouse/process-job-2/folder1/file.png |
|
TARGET_LOG_DIR |
全部 |
自定义处理的日志输出保存路径。将日志文件存放在该路径下,导入任务结束后可以在平台看到此日志文件。 |
/tmp/dataset/6f91947c-cd47-434b-b654-8332da961d7a/log |
在处理OBS来源的数据时,需要客户自己在镜像中初始化OBS Client端获取源目录数据:

