首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >开发者openshift4使用入门教程 - 10 - 配置外部化

开发者openshift4使用入门教程 - 10 - 配置外部化

作者头像
东风微鸣
发布于 2022-04-21 14:15:59
发布于 2022-04-21 14:15:59
6210
举报

概述

实现方式: 通过容器平台的configmap 概念对配置进行外部化.

好处:

  1. 代码/配置分离
  2. 后续更改配置, 直接修改外部的配置然后重启实例即可, 无需重新打包发布应用.

外部化步骤

以campaign 为例, 目录结构和之前类似

先设个变量, 方便后面批量操作: APP_NAME=campaign

首先, 创建配置的configmap:

代码语言:javascript
复制
$ oc create configmap ${APP_NAME}-config --from-file=./config
configmap/campaign-config created

其次, 将配置的configmap 挂载到指定目录: (该应用容器里的配置目录为: /deployments/config)

代码语言:javascript
复制
$ oc set volume dc/${APP_NAME} --add --mount-path=/deployments/config --configmap-name=${APP_NAME}-config
info: Generated volume name: volume-77txt
deploymentconfig.apps.openshift.io/campaign volume updated

最后, 配置外部化已经完成. 应用会自动更新来使配置生效. 可以通过如下来查看:

代码语言:javascript
复制
$ oc rollout status dc/${APP_NAME}
replication controller "campaign-26" successfully rolled out

后续更新

图形界面更新

如果配置能热加载, 那么就会及时生效. 如果需要实例重启生效, 则需要重启实例:

CLI 更新

更新配置的configmap并更新.

更新后重启实例.

代码语言:javascript
复制
$ oc create configmap ${APP_NAME}-config  --dry-run -o json --from-file=./config | oc apply -f -
$ oc rollout latest dc/${APP_NAME}
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-04-11,如有侵权请联系 cloudcommunity@tencent.com 删除
目录
  • 概述
  • 外部化步骤
  • 后续更新
    • 图形界面更新
    • CLI 更新
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档