我在 Docker 容器中使用 Alpine Linux 3.7。
我正在apkDockerfile 中执行一些命令。
我已成功将我的依赖项固定到特定的主要版本:
apk add --no-cache \
'openssl<2' \
'freeradius<4' \
'freeradius-mysql<4'
Run Code Online (Sandbox Code Playgroud)
但该命令的确切行为对于该命令运行的时间(即构建 Docker 映像的时间)很敏感。apk add
在撰写本文时,这些限制已解决:
apk add --no-cache \
'openssl=1.0.2m-r0' \
'freeradius=3.0.15-r3' \
'freeradius-mysql=3.0.15-r3'
Run Code Online (Sandbox Code Playgroud)
如果我apk add 'dep<majver' 明年跑步,可能会得到不同的结果。
dep=ver)。'dep<majver'是优选的。诸如npm和 之类的包管理器yarn对此有一个很好的解决方案。版本锁定文件。
您将有两个受版本控制的文档:
'dep<majver'dep=ver满足您所有约束的特定解决方案。
'dep<majver'重新生成它。是否有某种 Alpine apk 概念可以发挥“版本锁定文件”的作用?
有一个明显的Docker解决方案:
apk add 'dep<majver'在单独的Dockerfile 中执行该步骤。使用该 Dockerfile 作为基础映像。仅当您准备好增加依赖项时才重建基础 Docker 映像。
但我很好奇是否有Alpine apk解决方案,因为这可以被视为包管理问题,而不是配置问题。
| 归档时间: |
|
| 查看次数: |
1362 次 |
| 最近记录: |