[
https://issues.apache.org/jira/browse/RANGER-5492?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Madhan Neethiraj updated RANGER-5492:
-------------------------------------
Description:
Currently, docker files under {{dev-support/ranger-docker}} run {{setup.sh}} on
the first time a container starts up. {{setup.sh}} creates application
configuration files (like {{{}ranger-admin-site.xml{}}},
{{{}ranger-usersync-site.xml{}}}) in the container based on values in
{{{}install.properties{}}}, which is mounted into the container. For some
applications, the script also runs database initialization and upgrade. This is
not K8S compliant, as these steps will be executed in every new container and
the container state is mutated.
To be compliant with K8S guidelines that a container be immutable, Ranger
docker images should be updated to replace use of {{setup.sh}} inside the
container with creating configuration files outside the container, and mount
the configuration files in the container. Also, consider handling database
initialization and upgrade using Kubernates Jobs.
CC: [~abhi]
was:
Currently, docker files under `dev-support/ranger-docker` run `setup.sh` on the
first time a container starts up. `setup.sh` creates application configuration
files (like ranger-admin-site.xml, ranger-usersync-site.xml) in the container
based on values in `install.properties`, which is mounted into the container.
For some applications, the script also runs database initialization and
upgrade. This is not K8S compliant, as these steps will be executed in every
new container and the container state is mutated.
To be compliant with K8S guidelines that a container be immutable, Ranegr
docker images should be updated to replace use of `setup.sh` inside the
container with creating configuration files outside the container, and mount
the configuration files in the container. Also, consider handling database
initialization and upgrade using Kubernates Jobs.
CC: [~abhi]
> Docker setup update to keep the container immutable
> ---------------------------------------------------
>
> Key: RANGER-5492
> URL: https://issues.apache.org/jira/browse/RANGER-5492
> Project: Ranger
> Issue Type: Improvement
> Components: docker
> Reporter: Madhan Neethiraj
> Priority: Major
>
> Currently, docker files under {{dev-support/ranger-docker}} run {{setup.sh}}
> on the first time a container starts up. {{setup.sh}} creates application
> configuration files (like {{{}ranger-admin-site.xml{}}},
> {{{}ranger-usersync-site.xml{}}}) in the container based on values in
> {{{}install.properties{}}}, which is mounted into the container. For some
> applications, the script also runs database initialization and upgrade. This
> is not K8S compliant, as these steps will be executed in every new container
> and the container state is mutated.
> To be compliant with K8S guidelines that a container be immutable, Ranger
> docker images should be updated to replace use of {{setup.sh}} inside the
> container with creating configuration files outside the container, and mount
> the configuration files in the container. Also, consider handling database
> initialization and upgrade using Kubernates Jobs.
>
> CC: [~abhi]
--
This message was sent by Atlassian Jira
(v8.20.10#820010)