Tag: openshift

在Spring Boot的application.properties中使用envvariables

我们正在开发一个Spring Boot web应用程序,我们使用的数据库是MySql ; 我们的设置是我们首先在本地进行testing(意味着我们需要在我们的PC上安装MySql); 然后我们推到Bitbucket ; Jenkins自动检测到对Bitbucket的新推送,并对其进行构build(对于Jenkins mvn构build,我们还需要在运行Jenkins的虚拟机上安装MySql)。 如果Jenkins构build通行证,我们将代码推送到OpenShift上的应用程序(使用Jenkins上的Openshift部署插件)。 我们所遇到的问题你可能已经知道了: 在application.properties我们不能硬编码MySql的信息。 由于我们的项目将在3个不同的地方( 本地 , Jenkins和OpenShift )运行,因此我们需要在application.properties中使数据源字段dynamic化(我们知道有不同的方法,但我们现在正在开发此解决scheme) 。 spring.datasource.url = spring.datasource.username = spring.datasource.password = 我们提出的解决scheme是我们在本地创build系统环境variables ,并在Jenkins虚拟机(以OpenShift命名的方式命名它们)并分配给它们正确的值: export OPENSHIFT_MYSQL_DB_HOST="jdbc:mysql://localhost" export OPENSHIFT_MYSQL_DB_PORT="3306" export OPENSHIFT_MYSQL_DB_USERNAME="root" export OPENSHIFT_MYSQL_DB_PASSWORD="123asd" 我们已经完成了这个工作。 我们还检查了Map<String, String> env = System.getenv(); 环境variables可以变成javavariables,如下所示: String password = env.get("OPENSHIFT_MYSQL_DB_PASSWORD"); String userName = env.get("OPENSHIFT_MYSQL_DB_USERNAME"); String sqlURL = env.get("OPENSHIFT_MYSQL_DB_HOST"); String sqlPort […]

如何使用OpenShift托pipe裸体GoDaddy域?

期望的行为 我有一个GoDaddy域名,并使用OpenShift托pipe。 我想以下是真实的: a)用户进入www.mysitename.com >用户看到mysitename.com b)用户inputwww.mysitename.com/about.html >用户看到mysitename.com/about.html c)用户inputmysitename.com或mysitename.com/about.html ,他们也看到该url。 d)总结, www前缀永远不会显示在网站的任何地方。 约束 OpenShift托pipe没有静态IP,因此无法在GoDaddy中调整A record 。 OpenShift应用程序的格式是http://appname-username.rhcloud.com 。 您可以在GoDaddy中使用以下命令设置一个cname: www > appname-username.rhcloud.com 这意味着该网站可以访问www.mydomain.com但不是在mydomain.com 。 build议解决scheme 关于这个话题有几个post提出了以下build议,但有几个原因并不足以解决问题: 使用一个子域名,即blog.mydomain.com 使用wwwizer 使用转发和屏蔽 (在导航相关链接时导致url保持不变) 题 任何人都可以想到另一种解决scheme,满足上述所需的行为? 或者,我是否需要更改为允许“裸体cnamelogging”的注册商? 相关文章 https://stackoverflow.com/questions/18431034/godaddy-domain-pointing-to-openshift-hosting Openshift的裸体领域 如何使用OpenShift为裸域添加别名? 编辑 这篇博文总结了这个场景: http://blog.cloudflare.com/zone-apex-naked-domain-root-domain-cname-supp 我可以注册CloudFlare来解决问题吗? 我以前没有用过它,不知道它是如何工作的。

Node.js package.json的主要参数

我已经做了相当多的search。 不过,对Node.js的package.json中的主要参数仍有疑问。 如何填补这个领域的帮助? 以另一种方式提问,如果该字段存在,我可以以不同的样式启动模块吗? 我可以将多个脚本填充到主参数中吗? 如果是的话,他们会开始两个线程? 如果不是,我该如何在模块中启动两个脚本并让它们并行运行? 我知道第二个问题很奇怪。 这是因为我在OpenShift上托pipe了一个Node.js应用程序,但应用程序由两个主要组件组成。 一个是REST API,另一个是通知传递服务。 如果它们被实现为单个线程,我担心通知传递过程会阻塞REST API。 但是,他们必须连接到相同的MongoDB盒式磁带。 此外,如果可能的话,两个部件可以在同一个档位上工作,我想节省一个档位。 任何build议,欢迎。

docker工人与openshift相比如何?

Docker和OpenShift都是实现PaaS服务的框架。 他们如何比较build筑和function?

NodeJS中的HTTPS请求

我正在尝试编写一个NodeJS应用程序,它将使用https包中的请求方法与OpenShift REST API对话。 这里是代码: var https = require('https'); var options = { host: 'openshift.redhat.com', port: 443, path: '/broker/rest/api', method: 'GET' }; var req = https.request(options, function(res) { console.log(res.statusCode); res.on('data', function(d) { process.stdout.write(d); }); }); req.end(); req.on('error', function(e) { console.error(e); }); 但这是给我一个错误(返回状态代码500)。 当我在命令行上使用curl做同样的事情时, curl -k -X GET https://openshift.redhat.com/broker/rest/api 我正在从服务器获得正确的响应。 代码中有什么错误吗?

“#!/ bin / env”是什么意思(在node.js脚本的顶部)?

我发现了这个在app.js顶部的serval node.js项目(就像这个openshift程序一样 ): #!/bin/env node 这是什么意思? 这个怎么用? 它在哪里有用?

如何与Kubernetes进行本地开发?

Kubernetes似乎是将容器部署到集群云。 它似乎没有触及的是开发和分期环境(或类似)。 在开发过程中,您希望尽可能接近生产环境,并进行一些重要的改变: 在本地部署(或者至less在某个你可以访问的地方 ) 在页面刷新上使用最新的源代码 (假设它是一个网站;理想情况下页面自动刷新本地文件保存,如果你装载源代码,并使用像Yeoman一些东西可以完成)。 同样,人们可能想要一个非公共的环境来进行持续的整合 。 Kubernetes是否支持这样的开发环境,还是需要构build的东西,希望在生产过程中仍然有效?

使用多个帐户的OpenShift rhc设置

我在Openshift平台上有两个帐户。 我如何设置我的电脑,以便我可以使用rhc来pipe理它们? 我在命令行参数中找不到任何相关的选项。

我可以用openshift使用我现有的git回购吗?

是否有必要在openshift上有Git回购? 我已经有bitbucket / github的git回购,并希望推到那里只。 我可以简单地挂钩它,以便openshift得到暗示? 或者为了简化,我只在github上推送,但是当我想部署时,我会用openshift做些什么? 我没有检查这个,但它让我困惑:它正在谈论合并退出和新(openshift)混帐?

rhc安装程序给出错误`没有这样的文件dl / import`

我正在安装openshift客户端工具: https : //developers.openshift.com/en/getting-started-windows.html#client-tools 。 在“设置您的机器”一步,我得到错误: rhc设置C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:在`require':无法加载这样的文件 – dl / import(LoadError) 全堆栈跟踪: C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require': cannot load such file — dl/import (LoadError) from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require' from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/net-ssh-2.9.2/lib/net/ssh/authentication/pageant.rb:1:in `<top (required)>' from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require' from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require' from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/net-ssh-2.9.2/lib/net/ssh/authentication/agent/socket.rb:5:in `<top (required)>' from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require' from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require' from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/net-ssh-2.9.2/lib/net/ssh/authentication/agent.rb:22:in `<top (required)>' from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require' from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require' from […]