社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  docker

如何打造“进化”的docker形象

mibutec • 5 年前 • 149 次点击  

我有一个docker容器,其中包含一个批处理进程,它执行一些计算并将结果存储在 /data 在容器里。每当应用程序启动时,它需要从 /数据

因为我做不到的原因 /数据 某种卷或外部存储器,但它必须在容器内。

为了不需要多次计算,我尝试根据 /数据 在我的批次中每次运行之后。

/数据 相当大,包含很多文件,但是在一次批处理执行后对该目录的更改很小。所以我想得到一个这样的层堆栈:

Update run +...                                     (some MB)
Update run +2                                       (some MB)
Update run +1                                       (some MB)
First update run                                    (some MB)
Initial run                                         (several GB)
Base layer containing application and empty `/data` (some 100 MB for initial stack)

初始运行层将非常大,因为它包含从一开始的所有结果。更新运行只包含一小部分内部更改的数据 /数据

我尝试了以下方法:

  • 启动基本容器(空 /数据 )
  • 批处理运行后提交状态到某个临时映像
  • 做一个像这样的多级构建
FROM temporary_image as actual_state
FROM prepared_batch

COPY --from=actual_state /data /data
  • 开始下一个迭代基于 prepared_batch
  • 批处理运行后提交状态到某个临时映像
  • 再做一次多级建造
  • ...

作为结果层堆栈,我得到如下

Update run +...                                     (several GB)
Update run +2                                       (several GB)
Update run +1                                       (several GB)
First update run                                    (several GB)
Initial run                                         (several GB)
Base layer containing application and empty `/data` (some 100 MB for initial stack)

所以我对层规范化工作原理的理解似乎是不对的。实现目标层结构的正确方法是什么?有可能吗?

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/52892
 
149 次点击