
madwire/ruby-passenger该Docker镜像基于Passenger Standalone构建,专为Ruby Web应用提供容器化运行环境。通过集成Passenger应用服务器,简化Ruby Web应用(如Rails、Sinatra)的部署流程,实现快速、可配置的容器化运行。
通过以下环境变量可调整镜像运行参数:
| 环境变量 | 描述 | 默认值建议 |
|---|---|---|
PORT | Passenger服务绑定的端口,用于外部访问应用 | 3000(Passenger Standalone默认) |
MIN_INSTANCES | Passenger启动的最小应用实例数,控制基础并发能力 | 1(建议根据最小负载需求调整) |
MAX_POOL_SIZE | Passenger允许的最大实例池大小,限制最大并发实例数量,防止资源过载 | 6(建议根据服务器资源调整) |
docker run命令部署将本地Ruby应用代码挂载至容器,配置环境变量启动服务:
bashdocker run -d \ -p 8080:3000 \ # 主机端口8080映射到容器内PORT(示例为3000) -e PORT=3000 \ # 设置容器内服务端口 -e MIN_INSTANCES=2 \ # 最小实例数2 -e MAX_POOL_SIZE=4 \ # 最大实例池大小4 -v $(pwd):/app \ # 挂载本地Ruby应用代码至容器内/app目录(需根据镜像工作目录调整) --name ruby-web-app \ # 容器名称 [镜像名称] # 替换为实际Docker镜像名称(如ruby-passenger-standalone)
docker-compose部署创建docker-compose.yml配置文件,定义服务及环境:
yamlversion: '3' services: ruby-web-app: image: [镜像名称] # 替换为实际Docker镜像名称 ports: - "8080:3000" # 主机端口:容器内PORT environment: - PORT=3000 - MIN_INSTANCES=2 - MAX_POOL_SIZE=4 volumes: - ./:/app # 挂载本地应用代码至容器工作目录 restart: always # 可选:设置服务自动重启
启动服务:
bashdocker-compose up -d
Gemfile、Gemfile.lock等依赖文件)正确挂载至容器内Passenger预期的工作目录(通常为/app,具体以镜像实际配置为准)。docker exec -it [容器ID] bundle install)。本镜像遵循MIT许可证:
MIT许可证(MIT) 版权所有(c)2020 Richard Adams 特此授予任何获得本软件及相关文档文件(以下简称“软件”)副本的人免费许可,不受限制地处理本软件,包括但不限于使用、复制、修改、合并、出版、分发、再许可和/或销售软件副本的权利,并允许向其提供软件的人这样做,但须符合以下条件: 上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。 本软件按“原样”提供,不提供任何明示或暗示的担保,包括但不限于对适销性、特定用途适用性和非侵权性的担保。在任何情况下,作者或版权持有人均不对因软件或软件的使用或其他交易而产生的任何索赔、损害或其他责任承担责任,无论是合同诉讼、侵权行为还是其他方式。



manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务