karaf-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Grzegorz Grzybek <gr.grzy...@gmail.com>
Subject Re: [HEADS UP] Docker friendly runtime with env variables compliant configuration
Date Mon, 28 Sep 2020 09:09:39 GMT
I'd stick to explicit approach for now and leave "implicit" one for later ;)

regards
Grzegorz Grzybek

pon., 28 wrz 2020 o 11:08 Jean-Baptiste Onofre <jb@nanthrax.net> napisał(a):

> Just to be clear: today I’m using an "explicit" approach, where the config
> contains something like:
>
> sshPort=${env:KARAF_SSH_PORT:-8101}
>
> But we can also have "implicit" approach (with some more changes required).
>
> Regards
> JB
>
> > Le 28 sept. 2020 à 11:07, Jean-Baptiste Onofre <jb@nanthrax.net> a
> écrit :
> >
> > Hi,
> >
> > At beginning, I did a very simple change in Karaf Main: for instance,
> you would be able to do
> >
> > Bin/karaf -Dpid:prop=value
> >
> > And I init the configuration file with the value.
> >
> > However, system properties are not super easy with docker.
> >
> > That’s why I preferred the env variable approach.
> >
> > Now, about env variable, I just leverage what we already have in Karaf
> (just updating the default configuration file).
> >
> > I can do a new iteration where (in configadmin repository), I’m checking
> ALL env variables to find one matching.
> > It would mean something like:
> >
> > $ export KARAF.MY_PID.prop=value
> >
> > For instance.
> >
> > We would need a "env variable format".
> >
> > Thoughts ?
> >
> > Regards
> > JB
> >
> >> Le 28 sept. 2020 à 10:59, Grzegorz Grzybek <gr.grzybek@gmail.com
> <mailto:gr.grzybek@gmail.com>> a écrit :
> >>
> >> Hello
> >>
> >> Good idea!
> >>
> >> Shouldn't configadmin do it by default?
> >>
> >> Like dissect "KARAF_SSH_PORT" or similar env variables into:
> >> - prefix (KARAF_) - rejected
> >> - PID pointer (e.g., SSH → org.apache.karaf.shell)
> >> - property (e.g PORT → sshPort)
> >> ?
> >>
> >> This way it could be done in one place... Just my random observation,
> >> because I can't dig this problem further for now ;)
> >>
> >> regards
> >> Grzegorz Grzybek
> >>
> >> pon., 28 wrz 2020 o 10:51 Jean-Baptiste Onofre <jb@nanthrax.net
> <mailto:jb@nanthrax.net> <mailto:jb@nanthrax.net <mailto:jb@nanthrax.net>>>
> napisał(a):
> >>
> >>> Hi guys,
> >>>
> >>> In order to easily use Karaf in docker container, I created the
> following
> >>> PR:
> >>>
> >>> https://github.com/apache/karaf/pull/1203 <
> https://github.com/apache/karaf/pull/1203> <
> https://github.com/apache/karaf/pull/1203 <
> https://github.com/apache/karaf/pull/1203>> <
> >>> https://github.com/apache/karaf/pull/1203 <
> https://github.com/apache/karaf/pull/1203> <
> https://github.com/apache/karaf/pull/1203 <
> https://github.com/apache/karaf/pull/1203>>>
> >>>
> >>> The purpose is allow use to override some configuration properties
> using
> >>> env variables.
> >>>
> >>> For instance, if you want to use 8102 instead of default 8101 ssh port
> >>> number, you can do:
> >>>
> >>> $ export KARAF_SSH_PORT=8102
> >>> $ bin/karaf
> >>>
> >>> I listed the environment variables here:
> >>>
> >>>
> https://github.com/apache/karaf/blob/4eda325e73d1d7dfbc0508258bde582e93d4f05e/manual/src/main/asciidoc/user-guide/configuration.adoc
> <
> https://github.com/apache/karaf/blob/4eda325e73d1d7dfbc0508258bde582e93d4f05e/manual/src/main/asciidoc/user-guide/configuration.adoc
> >
> >>> <
> >>>
> https://github.com/apache/karaf/blob/4eda325e73d1d7dfbc0508258bde582e93d4f05e/manual/src/main/asciidoc/user-guide/configuration.adoc
> <
> https://github.com/apache/karaf/blob/4eda325e73d1d7dfbc0508258bde582e93d4f05e/manual/src/main/asciidoc/user-guide/configuration.adoc
> >
> >>>>
> >>>
> >>> I didn’t define environment variables for all properties. If you see
> some
> >>> properties that it would be interesting to override by env variables,
> >>> please let me know, I will update the PR.
> >>>
> >>> NB: I will also update pax* to use similar approach.
> >>>
> >>> Thoughts ?
> >>>
> >>> Regards
> >>> JB
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message