通过bundle下载安装gem包以及所需要的依赖包
通过bundle下载安装gem包以及所需要的依赖包
以安装redmon为例子。
如果安装特定版本,用gem 'redis','3.0.7'指定版本号。
mkdir /offlinegems vi /offlinegems/Gemfile source 'https://rubygems.org/' gem 'redmon' bundle package bundle list

[root@node2 offlinegems]# bundle package Don't run Bundler as root. Bundler can ask for sudo if it is needed, and installing your bundle as root will break this application for all non-root users on this machine. Fetching source index from https://rubygems.org/ Resolving dependencies......... Using bundler 2.2.22 Fetching temple 0.8.2 Fetching daemons 1.4.0 Fetching concurrent-ruby 1.1.9 Fetching eventmachine 1.2.7 Installing eventmachine 1.2.7 with native extensions Installing temple 0.8.2 Fetching tilt 2.0.10 Installing concurrent-ruby 1.1.9 Fetching hiredis 0.6.3 Installing daemons 1.4.0 Using json 2.5.1 Fetching mixlib-cli 2.1.8 Installing tilt 2.0.10 Fetching ruby2_keywords 0.0.5 Installing ruby2_keywords 0.0.5 Fetching rack 2.2.3 Installing mixlib-cli 2.1.8 Fetching redis 4.4.0 Installing hiredis 0.6.3 with native extensions Installing redis 4.4.0 Fetching i18n 1.8.10 Installing rack 2.2.3 Fetching haml 5.2.2 Installing i18n 1.8.10 Fetching mustermann 1.1.1 Installing haml 5.2.2 Fetching rack-protection 2.1.0 Installing rack-protection 2.1.0 Installing mustermann 1.1.1 Fetching sinatra 2.1.0 Installing sinatra 2.1.0 Fetching thin 1.8.1 Installing thin 1.8.1 with native extensions Fetching redmon 0.0.13 Installing redmon 0.0.13 Bundle complete! 1 Gemfile dependency, 19 gems now installed. Use `bundle info [gemname]` to see where a bundled gem is installed. Updating files in vendor/cache * concurrent-ruby-1.1.9.gem * daemons-1.4.0.gem * eventmachine-1.2.7.gem * temple-0.8.2.gem * tilt-2.0.10.gem * haml-5.2.2.gem * hiredis-0.6.3.gem * i18n-1.8.10.gem Fetching json 2.5.1 * json-2.5.1.gem * mixlib-cli-2.1.8.gem * ruby2_keywords-0.0.5.gem * mustermann-1.1.1.gem * rack-2.2.3.gem * rack-protection-2.1.0.gem * redis-4.4.0.gem * sinatra-2.1.0.gem * thin-1.8.1.gem * redmon-0.0.13.gem [root@node2 offlinegems]# bundle list Gems included by the bundle: * concurrent-ruby (1.1.9) * daemons (1.4.0) * eventmachine (1.2.7) * haml (5.2.2) * hiredis (0.6.3) * i18n (1.8.10) * json (2.5.1) * mixlib-cli (2.1.8) * mustermann (1.1.1) * rack (2.2.3) * rack-protection (2.1.0) * redis (4.4.0) * redmon (0.0.13) * ruby2_keywords (0.0.5) * sinatra (2.1.0) * temple (0.8.2) * thin (1.8.1) * tilt (2.0.10) Use `bundle info` to print more detailed information about a gem
bundle package会安装redmon以及需要的依赖包,并下载。
之后,就可以看到下载的gem包了:
[root@node2 cache]# pwd /offlinegems/vendor/cache [root@node2 cache]# ll total 1868 -rw-r--r-- 1 root root 358400 Aug 3 10:24 concurrent-ruby-1.1.9.gem -rw-r--r-- 1 root root 29696 Aug 3 10:24 daemons-1.4.0.gem -rw-r--r-- 1 root root 247296 Aug 3 10:24 eventmachine-1.2.7.gem -rw-r--r-- 1 root root 92160 Aug 3 10:24 haml-5.2.2.gem -rw-r--r-- 1 root root 59904 Aug 3 10:24 hiredis-0.6.3.gem -rw-r--r-- 1 root root 41984 Aug 3 10:24 i18n-1.8.10.gem -rw-r--r-- 1 root root 89088 Aug 3 10:24 json-2.5.1.gem -rw-r--r-- 1 root root 13824 Aug 3 10:24 mixlib-cli-2.1.8.gem -rw-r--r-- 1 root root 51712 Aug 3 10:24 mustermann-1.1.1.gem -rw-r--r-- 1 root root 151040 Aug 3 10:24 rack-2.2.3.gem -rw-r--r-- 1 root root 17408 Aug 3 10:24 rack-protection-2.1.0.gem -rw-r--r-- 1 root root 60416 Aug 3 10:24 redis-4.4.0.gem -rw-r--r-- 1 root root 147968 Aug 3 10:24 redmon-0.0.13.gem -rw-r--r-- 1 root root 10752 Aug 3 10:24 ruby2_keywords-0.0.5.gem -rw-r--r-- 1 root root 381952 Aug 3 10:24 sinatra-2.1.0.gem -rw-r--r-- 1 root root 39424 Aug 3 10:24 temple-0.8.2.gem -rw-r--r-- 1 root root 59904 Aug 3 10:24 thin-1.8.1.gem -rw-r--r-- 1 root root 22528 Aug 3 10:24 tilt-2.0.10.gem
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?