5分钟上手OpenShift:从Hello World到生产部署全攻略
你还在为容器化应用部署烦恼?从环境配置到服务上线,复杂流程是否让你望而却步?本文将通过OpenShift官方示例应用库,带你一站式掌握从Hello World到生产级部署的全流程。读完本文你将获得:
✅ 3分钟部署第一个容器应用
✅ 数据库服务一键搭建技巧
✅ CI/CD流水线零代码配置
✅ 企业级监控系统部署方案
✅ 完整示例应用库导航指南
一、Hello OpenShift:容器化入门第一步
作为最经典的入门示例,hello-openshift展示了容器应用的基础部署流程。这个仅50行代码的Go应用能在3分钟内完成从构建到访问的全过程。
快速部署命令
$ oc create -f examples/hello-openshift/hello-pod.json
$ oc get pod hello-openshift -o yaml | grep podIP
$ curl <podIP>:8080 # 返回"Hello OpenShift!"
自定义响应内容
通过修改JSON配置文件中的环境变量,可轻松定制输出内容:
"env": [
{ "name": "RESPONSE", "value": "Hello OpenShift China!" }
]

图1:OpenShift控制台展示hello-openshift部署状态
完整示例代码:hello_openshift.go
部署配置文件:hello-pod.json
二、数据库服务:从测试到生产的无缝过渡
数据库模板库提供了MariaDB、MySQL、PostgreSQL和Redis四种主流数据库的即开即用配置,支持两种部署模式:
| 部署类型 | 适用场景 | 数据持久性 | 部署命令 |
|---|---|---|---|
| 临时存储 | 开发测试 | 重启丢失 | oc new-app examples/db-templates/mysql-ephemeral-template.json |
| 持久存储 | 生产环境 | 持久化保存 | oc new-app examples/db-templates/postgresql-persistent-template.json |
自定义参数示例
$ oc new-app examples/db-templates/mariadb-ephemeral-template.json \
-p DATABASE_SERVICE_NAME=mydb \
-p MYSQL_USER=appuser \
-p MYSQL_PASSWORD=SecurePass123
支持的数据库模板清单:
🔹 MariaDB
🔹 MySQL
🔹 PostgreSQL
🔹 Redis
三、CI/CD流水线:Jenkins自动化部署实践
Jenkins示例展示了如何在OpenShift中构建完整的持续集成/持续部署流程。通过预制模板,无需手动配置即可获得:
- 自动构建触发器
- 测试环境部署
- 生产环境发布审批
- 部署状态通知
部署Jenkins服务
# 有持久存储时
$ oc new-app jenkins-persistent
# 无持久存储时
$ oc new-app jenkins-ephemeral
获取访问地址:
$ oc get route # 查看Jenkins路由地址
流水线模板库:jenkins/pipeline
官方教程:Jenkins集成文档
四、监控系统:Prometheus+Grafana可视化方案
Prometheus示例提供了企业级监控解决方案,包含集群资源监控、应用性能指标和告警配置。通过以下命令可快速部署完整监控栈:
# 部署Prometheus
$ oc new-app -f examples/prometheus/prometheus.yaml
# 部署节点监控
$ oc create -f examples/prometheus/node-exporter.yaml -n kube-system
常用监控指标
- 集群CPU使用率:
sum(rate(container_cpu_usage_seconds_total{id="/"}[3m])) / sum(machine_cpu_cores) - 内存使用占比:
sum(container_memory_rss) / sum(machine_memory_bytes) - 构建成功率:
sum(openshift_build_total{phase="Complete"})/(sum(openshift_build_total{phase=~"Complete|Error"})) * 100
监控配置文件:prometheus.yaml
节点监控组件:node-exporter.yaml
五、示例应用全景导航
OpenShift提供了覆盖12个应用场景的完整示例库,按功能可分为五大类:
1. 基础示例
2. 数据存储
- 存储示例:GlusterFS、HostPath等存储方案演示
3. 监控告警
- Grafana仪表盘:预配置的集群监控可视化面板
4. 系统工具
5. 安全控制
官方示例文档:examples/README.md
控制台使用指南:docs/cli.md
六、生产环境部署最佳实践
从示例应用到生产系统,需注意以下关键配置:
- 持久化存储:所有生产环境必须使用
*-persistent模板 - 资源限制:参考limit.yaml配置CPU和内存限制
- 健康检查:添加存活探针和就绪探针确保服务可用性
- 备份策略:定期备份数据库数据和配置文件
- 安全扫描:启用镜像漏洞检测功能
结语:从示例到生产的无缝衔接
OpenShift示例应用库不仅是学习工具,更是生产环境的脚手架。通过本文介绍的5大类28个示例应用,开发者可大幅降低容器化门槛。建议按以下路径深入学习:
- 基础部署 → hello-openshift
- 数据服务 → db-templates
- 自动化部署 → jenkins
- 监控告警 → prometheus
立即访问OpenShift示例库开始你的容器化之旅,30分钟内即可完成第一个生产级应用的部署!
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考




