
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
一个包含大多数常见构建依赖的Ruby镜像,可用于编译原生GEM。镜像大小仅329.7 MB,在优化最小开销的同时,包含nokogiri、curb或mysql2等常见GEM所需的所有依赖。基础镜像是最小化的Ubuntu 14.04,便于灵活安装更多特殊Ruby应用。
镜像名称
cloudgear/ruby:2.2
其他变体和版本如下所述。
快速使用
$ docker run -it cloudgear/ruby:2.2 ruby -e 'puts "Hello small Ruby image with version #{RUBY_VERSION}"' Hello small Ruby image with version 2.2.0
该镜像仅329.7 MB,并包含大多数常见构建依赖。此外,镜像基于标准Ubuntu 14.04基础镜像,因此大多数应用应能顺利安装。
我们曾研究过更精简的Linux发行版作为基础镜像,但安装Ruby GEM所需的常见依赖后,这些镜像的大小与本镜像相近,有时甚至更大。而基于Ubuntu的镜像因其完善的文档和广泛的通用知识,使用起来更便捷。
如果应用不需要构建依赖,可使用minimal镜像版本,大小仅222.7 MB。
类似镜像的大小是本镜像的两倍以上。我们研究了流行的Docker Ruby镜像:
半官方Ruby镜像 ruby:2.2.0 774.7 MB 无构建依赖(无法编译原生GEM) ruby:2.2.0-slim 299.3 MB Atlas Health(仅含最小构建依赖:libcurl和libxml) atlashealth/ruby 347.2 MB
半官方的Ruby-slim镜像仅小30 MB,但完全不含构建依赖,因此所有带原生扩展的GEM都无法安装。相比之下,CloudGear的最小Ruby镜像仅222.7 MB。
该镜像有多种变体和版本。详细信息请查看https://github.com/cloudgear-images/ruby%E4%B8%AD%E7%9A%84%E5%AF%B9%E5%BA%94Dockerfile%E3%80%82
包含指定的Ruby版本、最新的Rubygems和Bundler包,以及常见构建依赖。基于cloudgear/build-deps镜像,https://github.com/cloudgear-images/build-deps%E6%9B%B4%E5%A4%9A%E8%AF%A6%E6%83%85%E3%80%82
镜像名称:仅含版本标签,无后缀,例如cloudgear/ruby:2.2
已测试GEM
大多数带原生扩展的常见GEM可正常安装,我们已测试以下GEM:
欢迎帮助测试和支持其他带原生扩展的GEM,如有问题请通过https://github.com/cloudgear-images/ruby/issues%E5%8F%8D%E9%A6%88%E3%80%82%E6%84%9F%E8%B0%A2%E6%94%AF%E6%8C%81%E3%80%82
与完整镜像相同,但额外包含Dockerfile ONBUILD指令,可通过简单的空Dockerfile安装基于Bundler的Ruby应用。
镜像名称:带-onbuild后缀的标签,例如cloudgear/ruby:2.2-onbuild
提供最小化的Ruby镜像,包含Ruby、最新的Rubygems和Bundler包,以及仅最小的构建依赖。大多数带原生扩展的GEM无法安装。但只要应用不依赖此类GEM,minimal版本即可满足需求。此外,可自行添加所需依赖,以保持应用镜像尽可能小。
镜像名称:带-minimal后缀的标签,例如cloudgear/ruby:2.2-minimal
运行IRB
$ docker run -it cloudgear/ruby:2.2 irb
运行单个Ruby命令
$ docker run cloudgear/ruby:2.2 ruby -e 'puts "A simple Ruby demo"' A simple Ruby demo
Dockerfile
要构建包含特定GEM的自定义镜像,创建Dockerfile:
FROM docker.xuanyuan.run/cloudgear/ruby:2.2 RUN gem install haml ENTRYPOINT ["haml"]
Onbuild镜像可轻松将Ruby应用容器化。只需在应用根目录创建如下Dockerfile:
FROM docker.xuanyuan.run/cloudgear/ruby:2.2-onbuild CMD ["./your-script.rb"]
仅此而已!要求应用包含Gemfile和Gemfile.lock。ONBUILD触发器适用于大多数Ruby应用:构建时会复制Gemfile和Gemfile.lock,运行bundle install,并将应用复制到/usr/src/app。
然后构建并运行应用:
docker build -t my-ruby-app . docker run -it docker.xuanyuan.run/my-ruby-app
运行IRB或Ruby命令的方式与完整镜像相同。若要创建针对应用优化的Ruby镜像(仅含特定构建依赖),可创建Dockerfile。例如,仅安装MySQL依赖:
FROM docker.xuanyuan.run/cloudgear/ruby:2.2-minimal RUN apt-get update -q && apt-get install -yq --no-install-recommends \ libmysqlclient-dev && \ # 清理 rm -rf /var/lib/apt/lists/* && \ truncate -s 0 /var/log/*log
这样可保持镜像体积很小,同时支持安装带原生扩展的GEM。
CloudGear提供基于此Ruby镜像的优化Rails镜像。详情请查看https://github.com/cloudgear-images/rails%E4%BB%93%E5%BA%93%E3%80%82
该镜像有多种变体,支持最新的Ruby 2.1和2.2版本。
所有变体和版本:
cloudgear/ruby:2.1cloudgear/ruby:2.1-onbuildcloudgear/ruby:2.1-minimalcloudgear/ruby:2.2cloudgear/ruby:2.2-onbuildcloudgear/ruby:2.2-minimal欢迎贡献新功能、修复、版本更新和其他优化。请提交pull request,如有问题或疑问,可通过https://github.com/cloudgear-images/ruby%E5%8F%8D%E9%A6%88%E3%80%82
该镜像配置为Docker自动构建,每次推送代码时会自动构建并推送到Docker仓库。
MIT许可证。版权所有 2015 CloudGear
!CloudGear Container Platform
由CloudGear提供。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务
以下是 cloudgear/ruby 相关的常用 Docker 镜像,适用于 不同场景 等不同场景: