Mik*_*Mik 7 perl docker cpanm dockerfile
在我的Dockerfile中,我正在设置将在运行时安装的Perl模块,如下所示:
RUN ["cpanm", "Carp", "Carp::Heavy", "Class::Data::Inheritable"]
但是,对于一个模块,我需要一个特定版本的模块,而不是最新版本.如何在上面的行中指定该版本?
我一直在网上搜索几个小时,但还没有找到任何有用的东西.
对于以后寻找相同答案的任何人,可以在以下文档中cpanm找到另一种选择:
Run Code Online (Sandbox Code Playgroud)cpanm Plack@0.9990
如果模块列表很长,请考虑将其馈cpanfile入,cpanm而不是在Dockerfile中列出所有模块。
在中为模块指定特定版本号的最简单方法cpanfile是这样的:
requires 'Text::ParseWords', '==3.1';
Run Code Online (Sandbox Code Playgroud)
请求模块最新版本的语法是:
requires 'Text::ParseWords';
Run Code Online (Sandbox Code Playgroud)
要求最低版本:(请注意缺少“ ==”)
requires 'Text::ParseWords', '3.1';
Run Code Online (Sandbox Code Playgroud)
以其他方式请求特定版本的语法在此处已详细记录。
cpanm和a 的用法的另一篇很好的文章cpanfile可以在cpanm和cpanfile的“安装cpan模块”中找到。