
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
注意: 这是https://hub.docker.com/_/ruby%E7%9A%84%60arm32v6%60%E6%9E%B6%E6%9E%84%E6%9E%84%E5%BB%BA%E7%89%88%E6%9C%AC%E7%9A%84%E2%80%9C%E6%AF%8F%E4%B8%AA%E6%9E%B6%E6%9E%84%E2%80%9D%E4%BB%93%E5%BA%93%E2%80%94%E2%80%94%E6%9B%B4%E5%A4%9A%E4%BF%A1%E6%81%AF%EF%BC%8C%E8%AF%B7%E5%8F%82%E8%A7%81%E5%AE%98%E6%96%B9%E9%95%9C%E5%83%8F%E6%96%87%E6%A1%A3%E4%B8%AD%E7%9A%84%E2%80%9Chttps://github.com/docker-library/official-images#architectures-other-than-amd64%E2%80%9D%E5%92%8C%E5%AE%98%E6%96%B9%E9%95%9C%E5%83%8FFAQ%E4%B8%AD%E7%9A%84%E2%80%9Chttps://github.com/docker-library/faq#an-images-source-changed-in-git-now-what%E2%80%9D%E3%80%82
-** 维护者:**https://github.com/docker-library/ruby
-** 获取帮助:**Docker社区Slack、Server Fault、Unix & Linux 或 Stack Overflow
Dockerfile链接https://github.com/docker-library/ruby/blob/7d367fd4559ed09fedea90e***b36cfb64d2/3.5-rc/alpine3.22/Dockerfile
https://github.com/docker-library/ruby/blob/f0bf5f365387703579af740f915b6f32c4ee4c28/3.5-rc/alpine3.21/Dockerfile
https://github.com/docker-library/ruby/blob/7b7c8319337974e0df7e809c2360027d873ab259/3.4/alpine3.22/Dockerfile
https://github.com/docker-library/ruby/blob/7b7c8319337974e0df7e809c2360027d873ab259/3.4/alpine3.21/Dockerfile
https://github.com/docker-library/ruby/blob/7381a0d50ab2347b8e3fe4ea3068ee18b0b60115/3.3/alpine3.22/Dockerfile
https://github.com/docker-library/ruby/blob/7381a0d50ab2347b8e3fe4ea3068ee18b0b60115/3.3/alpine3.21/Dockerfile
https://github.com/docker-library/ruby/blob/33e4f980322b70f078a64d9e61eae1af040df5c2/3.2/alpine3.22/Dockerfile
https://github.com/docker-library/ruby/blob/33e4f980322b70f078a64d9e61eae1af040df5c2/3.2/alpine3.21/Dockerfile
-** 提交issue的位置:**https://github.com/docker-library/ruby/issues?q=
-** 支持的架构:**(https://github.com/docker-library/official-images#architectures-other-than-amd64)
https://hub.docker.com/r/amd64/ruby/, https://hub.docker.com/r/arm32v5/ruby/, https://hub.docker.com/r/arm32v6/ruby/, https://hub.docker.com/r/arm32v7/ruby/, https://hub.docker.com/r/arm64v8/ruby/, https://hub.docker.com/r/i386/ruby/, https://hub.docker.com/r/mips64le/ruby/, https://hub.docker.com/r/ppc64le/ruby/, https://hub.docker.com/r/riscv64/ruby/, https://hub.docker.com/r/s390x/ruby/
-** 发布的镜像 artifact 详情:**https://github.com/docker-library/repo-info/blob/master/repos/ruby%EF%BC%88https://github.com/docker-library/repo-info/commits/master/repos/ruby%EF%BC%89
(镜像元数据、传输大小等)
-** 镜像更新:**https://github.com/docker-library/official-images/issues?q=label%3Alibrary%2Fruby
https://github.com/docker-library/official-images/blob/master/library/ruby%EF%BC%88https://github.com/docker-library/official-images/commits/master/library/ruby%EF%BC%89
-** 本描述的来源:**https://github.com/docker-library/docs/tree/master/ruby%EF%BC%88https://github.com/docker-library/docs/commits/master/ruby%EF%BC%89
Ruby是一种动态、反射式、面向对象的通用开源编程语言。据其作者介绍,Ruby 受到了 Perl、Smalltalk、Eiffel、Ada 和 Lisp 的影响。它支持多种编程范式,包括函数式、面向对象和命令式。它还具有动态类型系统和自动内存管理。
***.org/wiki/Ruby_(programming_language)
!https://raw.githubusercontent.com/docker-library/docs/01c***b2fe592c1f93a13b4e289ada0e3a1/ruby/logo.png
DockerfiledockerfileFROM arm32v6/ruby:3.3 # 如果 Gemfile 自 Gemfile.lock 修改后有变更,则抛出错误 RUN bundle config --global frozen 1 WORKDIR /usr/src/app COPY Gemfile Gemfile.lock ./ RUN bundle install COPY . . CMD ["./your-daemon-or-script.rb"]
将此文件放在应用的根目录下,与 Gemfile 同级。
然后可以构建并运行 Ruby 镜像:
console$ docker build -t my-ruby-app . $ docker run -it --name my-running-script my-ruby-app
Gemfile.lock上述示例 Dockerfile 要求应用目录中存在 Gemfile.lock。以下 docker run 命令可帮助生成该文件。在应用根目录下(与 Gemfile 同级)运行:
console$ docker run --rm -v "$PWD":/usr/src/app -w /usr/src/app arm32v6/ruby:3.3 bundle install
对于许多简单的单文件项目,编写完整的 Dockerfile 可能不太方便。在这种情况下,可以直接使用 Ruby Docker 镜像运行 Ruby 脚本:
console$ docker run -it --rm --name my-running-script -v "$PWD":/usr/src/myapp -w /usr/src/myapp arm32v6/ruby:3.3 ruby your-daemon-or-script.rb
默认情况下,Ruby 继承其运行环境的区域设置。对于大多数在桌面系统上运行 Ruby 的用户,这可能意味着使用某种 *.UTF-8 变体(如 en_US.UTF-8 等)。但在 Docker 中,默认区域设置为 C,这可能会导致意外结果。如果应用需要处理 UTF-8,建议通过 -e LANG=C.UTF-8 或 ENV LANG C.UTF-8 显式调整镜像/容器的区域设置。
此镜像设置了多个环境变量,这些变量会改变 Bundler 和 Gem 的行为,以便在容器内运行单个应用(特别是允许将应用的开发源代码绑定挂载到容器内,且不会让主机的 .bundle 干扰容器的正常功能)。
我们设置的环境变量在上述链接的 Dockerfile 中有明确列出,其中包括 GEM_HOME、BUNDLE_SILENCE_ROOT_WARNING 和 BUNDLE_APP_CONFIG 等。
如果这些变量对您的使用场景造成问题(例如在单个容器中运行多个 Ruby 应用),将它们设置为空字符串 应该 足以取消其行为。
arm32v6/ruby 镜像有多种版本,每种版本设计用于特定用例。
arm32v6/ruby:<version>这是默认镜像。如果不确定自己的需求,可能应该使用此版本。它设计为既可作为临时容器使用(挂载源代码并启动容器以运行应用),也可作为构建其他镜像的基础。
此标签基于 https://hub.docker.com/_/buildpack-deps/%E3%80%82%60buildpack-deps%60 专为在系统上有许多镜像的 Docker 普通用户设计。它默认包含大量极其常见的 Debian 软件包。这减少了派生镜像需要安装的软件包数量,从而减小系统上所有镜像的总体大小。
arm32v6/ruby:<version>-alpine此镜像基于流行的 Alpine Linux 项目,可在 https://hub.docker.com/_/alpine 中获取。Alpine Linux 比大多数发行版基础镜像小得多(约 5MB),因此通常会生成更精简的镜像。
当最终镜像大小尽可能小是主要关注点时,此变体非常有用。需要注意的主要问题是它使用 musl libc 而非 glibc 及相关库,因此软件可能会因对 libc 要求/假设的深度不同而遇到问题。有关可能出现的问题以及使用基于 Alpine 的镜像的优缺点比较,请参见 此 Hacker News 评论线程。
为最小化镜像大小,基于 Alpine 的镜像中通常不包含额外的相关工具(如 git 或 bash)。以此镜像为基础,可在自己的 Dockerfile 中添加所需工具(如果不熟悉如何安装软件包,请参见 https://hub.docker.com/_/alpine/ 中的示例)。
查看此镜像中包含的软件的许可证信息。
与所有 Docker 镜像一样,这些镜像可能还包含其他软件,这些软件可能受其他许可证约束(如基础发行版中的 Bash 等,以及包含的主要软件的任何直接或间接依赖项)。
一些能够自动检测到的额外许可证信息可能位于 https://github.com/docker-library/repo-info/tree/master/repos/ruby 中。
至于任何预构建镜像的使用,镜像用户有责任确保对本镜像的任何使用都符合其中包含的所有软件的相关许可证。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务
以下是 arm32v6/ruby 相关的常用 Docker 镜像,适用于 不同场景 等不同场景: