为什么是deploymentconfig而不是Kubernetes的deployment

在new-app的时候openshift直接创建了一个deploymentconfig并部署成rc,开始并不理解为什么要这么做,后来看到下面这个命令才大概明白,原因主要有两点:

  • deploymentconfig在创建的时候通过new-app自动生成,避免直接从无到有去写一个deployment的yaml文件,减少了出错。
  • deployment并不具备回滚的功能,如果部署到一个版本就无法回滚到上一个版本或者更前一个版本了,而dc有个revision,同时保留了之前部署版本的配置。如下:

如果回滚可以通过下面命令

oc rollback openshift-tomcat --to-version=
  • 创建new-app的时候除了创建dc,还会创建一个服务,名字和app名字一样

如果需要在容器运行前就带入环境变量

oc new-app openshift-tomcat --name=openshift-tomcat --env DEPLOY_MODE=stg

带入多个

C:\minishift-1.26.-windows-amd64>oc new-app openshift-tomcat --name=openshift-tomcat --env DEPLOY_MODE=stg  SITE=sz
warning: Cannot find git. Ensure that it is installed and in your path. Git is required to work with git repositories.
--> Found image a4dc2a4 ( hours old) in image stream "myproject/openshift-tomcat" under tag "latest" for "openshift-tomcat" temp.builder.openshift.io/myproject/openshift-tomcat-:d91ff45d
---------------------------------------------------------------
Platform for building and running JEE applications on Tomcat Tags: builder, tomcat * This image will be deployed in deployment config "openshift-tomcat"
* Port /tcp will be load balanced by service "openshift-tomcat"
* Other containers can access this service through the hostname "openshift-tomcat" --> Creating resources ...
deploymentconfig.apps.openshift.io "openshift-tomcat" created
service "openshift-tomcat" created
--> Success
Application is not exposed. You can expose services to the outside world by executing one or more of the commands below:
'oc expose svc/openshift-tomcat'
Run 'oc status' to view your app.

容器运行中设置环境变量

C:\minishift-1.26.-windows-amd64>oc set env dc/openshift-tomcat DEPLOY_MODE="prd"
deploymentconfig.apps.openshift.io/openshift-tomcat updated

列出环境变量

C:\minishift-1.26.-windows-amd64>oc set env dc/openshift-tomcat --list
# deploymentconfigs/openshift-tomcat, container openshift-tomcat
DEPLOY_MODE=stg

关于DeploymentConfig的思考的更多相关文章

  1. 领域驱动和MVVM应用于UWP开发的一些思考

    领域驱动和MVVM应用于UWP开发的一些思考 0x00 起因 有段时间没写博客了,其实最近本来是根据梳理的MSDN上的资料(UWP开发目录整理)有条不紊的进行UWP学习的.学习中有了心得体会或遇到了问 ...

  2. 关于面试题 Array.indexof() 方法的实现及思考

    这是我在面试大公司时碰到的一个笔试题,当时自己云里雾里的胡写了一番,回头也曾思考过,最终没实现也就不了了之了. 昨天看到有网友说面试中也碰到过这个问题,我就重新思考了这个问题的实现方法. 对于想进大公 ...

  3. 关于 CSS 反射倒影的研究思考

    原文地址:https://css-tricks.com/state-css-reflections 译者:nzbin 友情提示:由于演示 demo 的兼容性,推荐火狐浏览.该文章篇幅较长,内容庞杂,有 ...

  4. 关于.NET参数传递方式的思考

    年关将近,整个人已经没有了工作和写作的激情,估计这个时候很多人跟我差不多,该相亲的相亲,该聚会喝酒的聚会喝酒,总之就是没有了干活的心思(我有很多想法,但就是叫不动我的手脚,所以我只能看着别人在做我想做 ...

  5. 使用NUnit为游戏项目编写高质量单元测试的思考

    0x00 单元测试Pro & Con 最近尝试在我参与的游戏项目中引入TDD(测试驱动开发)的开发模式,因此单元测试便变得十分必要.这篇博客就来聊一聊这段时间的感悟和想法.由于游戏开发和传统软 ...

  6. OpenGL shader 中关于顶点坐标值的思考

    今天工作中需要做一个事情: 在shader内部做一些空间距离上的计算,而且需要对所有的点进行计算,符合条件的显示,不符合条件的点不显示. 思路很简单,在vertex shader内知道顶点坐标,进行计 ...

  7. 关于领域驱动设计(DDD)中聚合设计的一些思考

    关于DDD的理论知识总结,可参考这篇文章. DDD社区官网上一篇关于聚合设计的几个原则的简单讨论: 文章地址:http://dddcommunity.org/library/vernon_2011/, ...

  8. 关于bug分析与异常处理的一些思考

    前言:工作三年了,工作内容主要是嵌入式软件开发和维护,用的语言是C,毕业后先在一家工业自动化控制公司工作两年半,目前在一家医疗仪器公司担任嵌入式软件开发工作.软件开发中,难免不产生bug:产品交付客户 ...

  9. 【数据库】_由2000W多条开房数据引发的思考、实践----给在校生的一个真实【练耙场】,同学们,来开始一次伟大的尝试吧。

      ×   缘起---闲逛博客园 前几天的时候,在某一QQ群看到一条消息“XXX酒店开房XXXBTXX迅雷BT下载”,当时是一目十行的心态浏览,目光掠过时, 第一反应我想多了~以为是XX种子(你懂的~ ...

随机推荐

  1. mysql innodb 数据表不存在

    方法一: https://dev.mysql.com/doc/refman/5.5/en/forcing-innodb-recovery.html 修改my.cnf文件 [mysqld] innodb ...

  2. Android各层推荐开发书籍及参考资料!!!

    Android各层推荐开发书籍及参考资料 转自:http://blog.csdn.net/fancylovejava/article/details/8657058 Android系统按照架构来说一共 ...

  3. IntelliJ IDEA centos安装

    安装的时候注意: 不要装一个插件否则无法启动!!!

  4. LeetCode解题报告—— Regular Expression Matching

    Given an input string (s) and a pattern (p), implement regular expression matching with support for  ...

  5. MySQL 的数据存储引擎

    MySQL的存储引擎 InnoDB: MySQL5.5之后的默认存储引擎. 采用MVCC来支持高并发,并且实现了四个标准的隔离级别(默认可重复读). 支持事务,支持外键.支持行锁.非锁定读(默认读取操 ...

  6. PHP实现RESTful风格的API实例

    原生方式实现,直接撸代码 Request.php :包含一个Request类,即数据操作类.接收到URL的数据后,根据请求URL的方式(GET|POST|PUT|PATCH|DELETE)对数据进行相 ...

  7. Accord.NET入门

    0.序 园子里介绍Accord.NET的文章不少,但是具体讲如何使用的反而不多,可能跟.NET在机器学习领域应用不多有关.诚然,如果做项目的话,可能用Python更好一些,但是如果把了解Accord. ...

  8. gulp在webstorm里运行,告别cmd控制台!

    使用webstorm运行gulp程序,不再用一直开着cmd了!鬼知道自己会不会不小心关闭了cmd呢.看截图操作吧! 如果你的gulp设置了default任务,那么直接点击“运行‘default‘’就行 ...

  9. Linux让程序后台运行命令之screen与nohup

    一.nohup nohup时间长了会断掉  所以建议使用screen nohup 命令 & 如果运行成功刚默认会将标准输出重定向到当前目录的nohup.out文件中,查看此文件,可以了解运行的 ...

  10. Linux rsync数据定时增量备份

    一.安装rsync服务端 1.查看是否安装rsync ps -ef | grep rsync 系统一般默认已安装,安装方法: yum -y install rsync 2.添加配置文件 rsync没有 ...