<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title>Answers to: Docker, Global Properties, Placeholder, app.yaml</title><link>https://answers.axonivy.com/questions/3817/docker-global-properties-placeholder-app-yaml</link><description>&lt;p&gt;Hi Ivy Team&lt;/p&gt;
&lt;p&gt;Assuming I have a global prop such as :&lt;/p&gt;
&lt;p&gt;myGlobalProp: &lt;a href="http://myIP:1234/whatever"&gt;http://myIP:1234/whatever&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;myIP is different for Dev, Test and Prod. Is there a way to "inject" myIP at startup of the Docker image ?&lt;/p&gt;
&lt;p&gt;Or generally:&lt;/p&gt;
&lt;p&gt;If I want to build an image which should be deployed in Dev, Test and Prod, is there a way to parameterize all the config files used for the Ivy Engine (yaml, xml, etc.) ?&lt;/p&gt;
&lt;p&gt;Thanks &amp;amp; Regards
John&lt;/p&gt;</description><atom:link href="https://answers.axonivy.com/questions/3817/docker-global-properties-placeholder-app-yaml" rel="self"></atom:link><language>en</language><lastBuildDate>Tue, 21 May 2019 03:05:07 -0400</lastBuildDate><item><title>Answer by Alex Suter</title><link>https://answers.axonivy.com/questions/3817/docker-global-properties-placeholder-app-yaml/3818</link><description>&lt;p&gt;Hello John Moser&lt;/p&gt;
&lt;p&gt;Yes, there are several ways to provide environment specific configurations. Docker and Axon.ivy offer many capabilities of parameterization for different environments. The difficulty is to decide which methods or mix of methods fits best for your projects needs.&lt;/p&gt;
&lt;p&gt;One could either:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;mount different configuration files (like &lt;code&gt;ivy.yaml&lt;/code&gt;, &lt;code&gt;app.yaml&lt;/code&gt;, etc.) per environment into the container. I think that makes sense if every stage (dev, int, prod) looks completely different and the resulting yaml files have almost nothing in common.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;use environment variables to override parts of our configurations
    &lt;a href="https://developer.axonivy.com/doc/latest/EngineGuideHtml/configuration.html#configuration-override."&gt;https://developer.axonivy.com/doc/latest/EngineGuideHtml/configuration.html#configuration-override.&lt;/a&gt; This is recommended if you only want to override a few configuration values while most configurations in the yaml files are shared.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;use the capabilities of your container orchestration platform like ConfigMap for Kubernetes &lt;a href="https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/"&gt;https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;you may also check how to handle passwords (secrets) in containers:
&lt;a href="https://developer.axonivy.com/doc/latest/EngineGuideHtml/configuration.html#engine-configuration-docker"&gt;https://developer.axonivy.com/doc/latest/EngineGuideHtml/configuration.html#engine-configuration-docker&lt;/a&gt;&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Alex Suter</dc:creator><pubDate>Tue, 21 May 2019 03:05:07 -0400</pubDate><guid>https://answers.axonivy.com/questions/3817/docker-global-properties-placeholder-app-yaml/3818</guid></item></channel></rss>