Ruby on Rails 是一个全栈开发环境,以程序员幸福感和可持续生产力为优化目标。它通过"约定优于配置"的原则,让你能够编写优雅的代码。
Ruby官方概述
商标说明:本软件包由Bitnami打包。所提及的相关商标归各自公司所有,使用这些商标并不意味着任何关联或背书。
consoledocker run -it --name ruby bitnami/ruby:latest
自2025年8月28日起,Bitnami将升级其公共镜像目录,通过新的Bitnami安全镜像计划提供精选的强化安全镜像集。此次变更包括:
这些变更旨在通过推广软件供应链完整性最佳实践和最新部署,提升所有Bitnami用户的安全态势。更多详情请访问https://github.com/bitnami/containers/issues/83267%E3%80%82
仅部分BSI应用可免费使用。如需访问完整应用目录及企业支持,请尝试Bitnami安全镜像商业版。
了解Bitnami标签策略及滚动标签与不可变标签的区别,请参阅官方文档。
不同标签的对应关系可通过分支文件夹中的tags-info.yaml文件查看,例如bitnami/ASSET/BRANCH/DISTRO/tags-info.yaml。
订阅项目更新请关注https://github.com/bitnami/containers%E3%80%82
prod标签已移除,仅发布常规容器镜像prod标签格式变更:
BRANCH-debian-10-prod 变更为 BRANCH-prod-debian-10VERSION-debian-10-rX-prod 变更为 VERSION-prod-debian-10-rXlatest-prod 标签已弃用推荐通过Docker Hub Registry拉取预构建镜像:
consoledocker pull bitnami/ruby:latest
如需特定版本,可拉取带版本标签的镜像。查看https://hub.docker.com/r/bitnami/ruby/tags/%E3%80%82
consoledocker pull bitnami/ruby:[TAG]
如需手动构建,克隆仓库后执行构建命令(替换APP、VERSION和OPERATING-SYSTEM占位符):
consolegit clone https://github.com/bitnami/containers.git cd bitnami/APP/VERSION/OPERATING-SYSTEM docker build -t bitnami/APP:latest .
默认情况下,运行此镜像将启动Ruby交互式解释器(irb),可在此进行Ruby代码测试:
consoledocker run -it --name ruby bitnami/ruby:latest
延伸阅读:Ruby IRB文档
Ruby镜像的默认工作目录为/app。可将主机目录挂载至此,并通过ruby命令运行脚本:
consoledocker run -it --name ruby -v /path/to/app:/app bitnami/ruby:latest \ ruby script.rb
若应用通过Gemfile定义依赖,可先安装依赖再运行应用:
consoledocker run -it --name ruby -v /path/to/app:/app bitnami/ruby:latest \ sh -c "bundle install && ruby script.rb"
或通过docker-compose.yml配置(参考https://github.com/bitnami/containers/blob/main/bitnami/ruby/docker-compose.yml%EF%BC%89%EF%BC%9A
yamlruby: image: bitnami/ruby:latest command: "sh -c 'bundle install && ruby script.rb'" volumes: - .:/app
延伸阅读:
镜像默认暴露容器内3000端口。需确保Web服务器绑定至0.0.0.0:3000以接受外部连接。
示例:使用Sinatra框架监听0.0.0.0:3000的应用:
rubyrequire 'sinatra' set :bind, '0.0.0.0' set :port, 3000 get '/hi' do "Hello World!" end
端口映射方式
consoledocker run -it --name ruby -P bitnami/ruby:latest
通过docker port命令查看映射端口:
console$ docker port ruby 3000/tcp -> 0.0.0.0:32769
8080)映射至容器3000端口consoledocker run -it --name ruby -p 8080:3000 bitnami/ruby:latest
访问应用:http://localhost:8080
Bitnami安全镜像提供FIPS模式配置,通过以下环境变量设置:
OPENSSL_FIPS:是否启用OpenSSL FIPS模式。可选值:yes(默认)、no通过Docker网络可实现Ruby服务与其他容器(如Nginx)的通信。以下以Nginx作为前端代理为例说明。
将Ruby Web服务通过Nginx暴露,可实现静态资源服务、负载均衡等高级配置。
步骤1:创建网络
Docker命令:
consoledocker network create app-tier --driver bridge
Docker Compose配置:
yamlversion: '2' networks: app-tier: driver: bridge
步骤2:配置Nginx虚拟主机
创建Nginx配置文件(反向代理至Ruby容器):
nginxserver { listen 0.0.0.0:80; server_name yourapp.com; location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header HOST $http_host; proxy_set_header X-NginX-Proxy true; proxy_pass http://myapp:3000; # 使用Ruby容器的网络别名 proxy_redirect off; } }
保存文件(如vhost.conf),后续将作为卷挂载至Nginx容器。
步骤3:运行Ruby容器(指定网络别名)
Docker命令:
consoledocker run -it --name myapp \ --network app-tier \ -v /path/to/app:/app \ bitnami/ruby:latest ruby script.rb
Docker Compose配置:
yamlversion: '2' services: myapp: image: bitnami/ruby:latest command: ruby script.rb networks: - app-tier volumes: - .:/app
步骤4:运行Nginx容器
Docker命令:
consoledocker run -it \ -v /path/to/vhost.conf:/bitnami/nginx/conf/vhosts/yourapp.conf \ --network app-tier \ bitnami/nginx:latest
Docker Compose配置:
yamlversion: '2' services: nginx: image: bitnami/nginx:latest networks: - app-tier volumes: - /path/to/vhost.conf:/bitnami/nginx/conf/vhosts/yourapp.conf
Bitnami会及时更新Ruby镜像(包括安全补丁),建议按以下步骤升级:
步骤1:拉取更新镜像
consoledocker pull bitnami/ruby:latest
(Docker Compose用户需更新image字段为bitnami/ruby:latest)
步骤2:删除旧容器
consoledocker rm -v ruby
(Docker Compose用户执行:docker-compose rm -v ruby)
步骤3:运行新镜像
consoledocker run --name ruby bitnami/ruby:latest
(Docker Compose用户执行:docker-compose up ruby)
root用户执行。可通过--user参数切换用户,或使用sudo提权(Docker 1.10+支持用户命名空间,详见官方文档)。/app目录为卷。如需保留旧行为(以便在其他容器中挂载),启动容器时添加-v /app参数。bitnami用户可无需sudo安装gems。注意:此文件未经内部测试,建议仅用于开发或测试环境。如发现问题,可按https://github.com/bitnami/containers/blob/main/CONTRIBUTING.md%E6%8F%90%E4%BA%A4%E5%8F%8D%E9%A6%88%E6%88%96%E4%BF%AE%E5%A4%8D%E3%80%82
欢迎为此容器贡献代码。可通过https://github.com/bitnami/containers/issues%E6%8F%90%E5%87%BA%E6%96%B0%E5%8A%9F%E8%83%BD%E9%9C%80%E6%B1%82%EF%BC%8C%E6%88%96%E9%80%9A%E8%BF%87https://github.com/bitnami/containers/pulls%E8%B4%A1%E7%8C%AE%E4%BB%A3%E7%A0%81%E3%80%82
如运行容器时遇到问题,请https://github.com/bitnami/containers/issues/new/choose%E3%80%82%E4%B8%BA%E8%8E%B7%E5%BE%97%E6%9B%B4%E5%A5%BD%E6%94%AF%E6%8C%81%EF%BC%8C%E8%AF%B7%E6%8C%89%E6%A8%A1%E6%9D%BF%E5%A1%AB%E5%86%99%E8%AF%A6%E7%BB%86%E4%BF%A1%E6%81%AF%E3%80%82
Copyright © 2025 Broadcom。"Broadcom"指Broadcom Inc.及其子公司。
本软件基于Apache License 2.0许可协议发布。详情请参阅许可协议。
除非***要求或书面同意,软件按"原样"分发,不提供任何明示或暗示的担保或条件。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务