【发布时间】:2016-02-11 14:53:43
【问题描述】:
我想对 Chef Solo 执行以下操作(服务器未连接到 Internet):
sudo yum install docker-*.rpm
我有以下结构:
cookbooks
└── my-cookbook
└── recipes
├── default.rb
└── docker.rb
我的食谱里有这个:
Dir['docker-*.rpm'].each do |pkg|
rpm_package File.basename(pkg) do
source pkg
end
end
现在,我应该把 RPM 文件放在哪里?
【问题讨论】:
-
重复候选人的答案很容易适应,最好的办法是使用内部 http 服务器。您也可以使用私人 yum 存储库。
-
Http 和自定义镜像是不可能的,需要将二进制文件和配方以及所有依赖项一起分发到一个包中。
-
在这个acse中使用文件目录和cookbook_file资源
-
在厨师服务器中使用带有说明书的 rpm 绝不是一个好主意。但以防万一您可以将 rpm 放入
/files/default 并使用 remote_directly 获取机器上的本地 rpm 以使用您的厨师服务器 url 作为 rpm -i /files/default /my.rpm
标签: ruby chef-infra chef-solo