Ruby 在气隙服务器上安装Chef客户端跳过包
我正在尝试在气隙服务器上安装厨师食谱 我捆绑了所有配方中列出的宝石,并准备了供应商/缓存存档。将其复制到服务器并运行Ruby 在气隙服务器上安装Chef客户端跳过包,ruby,rubygems,chef-infra,chef-client,Ruby,Rubygems,Chef Infra,Chef Client,我正在尝试在气隙服务器上安装厨师食谱 我捆绑了所有配方中列出的宝石,并准备了供应商/缓存存档。将其复制到服务器并运行/opt/chef/embedded/bin/bunlde install--local成功安装233个gems,但当我运行chef client-j boot.json时,它会找到所有gems,不会下载,但仍会运行bundle安装步骤,并尝试访问rubygems.org,但失败 在调试模式下运行chef客户端不会显示任何gem名称,它正在尝试下载,所以我不知道缺少了什么。 我是否
/opt/chef/embedded/bin/bunlde install--local
成功安装233个gems,但当我运行chef client-j boot.json
时,它会找到所有gems,不会下载,但仍会运行bundle安装步骤,并尝试访问rubygems.org,但失败
在调试模式下运行chef客户端不会显示任何gem名称,它正在尝试下载,所以我不知道缺少了什么。
我是否可以跳过这一步,或者知道缺少了哪一个gem?加载烹饪书后的部分操作是在cookbook metadata.rb中安装所需的gem 客户端准备一个GEM文件并启动一个
捆绑安装
,以检查是否安装了必要的GEM并且是最新的,这就是bundler的行为以及它尝试连接到rubygems.org的原因
正如评论中所说,在每台服务器上出售所有的gem远远不够高效,你最好有一个内部的gem存储库,并让你的cient找到它
这几乎就是您所做的,从您的食谱中获取所有gem,将它们安装到内部机器上,然后运行gem服务器
这可能会很乏味,而且还有其他方法可以更容易地在内部镜像rubygem您能用相关代码(来自配方)更新问题吗当您运行
chef client
?@seshadri_cits时执行的代码不是chef内置的代码,一旦获取了与角色相关的烹饪书,客户端将启动烹饪书gems的捆绑安装;虽然我已经通过本地bundle安装安装了gems,但它并没有记录任何缺少的gems,也没有记录一些关于在空气间隙环境中将rubygems\u url
设置为本地rubygems镜像的文档。这可能是你需要的。