A legacy system is an existing application built around older technologies or architectural assumptions that remains important to business operations. Replatforming can package it in a Windows Docker image instead of rewriting millions of lines of code, allowing consistent build, deployment, and management practices alongside newer applications. section 13.0
Adapt legacy configuration behavior to container workflows:
- Read overrides from a mounted source file. section 18.4
- Read additional overrides from environment variables. section 18.4
- Merge both sets, giving environment variables precedence. section 18.4
- Write the merged settings to the configuration file and start the application. section 18.4
Many older applications expect configuration files in fixed locations and do not read environment variables. A utility or startup script can translate container-friendly inputs into the format the application already understands, preserving the application while standardizing its operational interface. section 18.4
Containerizing a legacy-style application
A .NET Framework application may expect XML settings in its application folder. A startup utility can merge a mounted override file with environment variables, then write the result to the expected path. The same pattern is demonstrated with a Java API that accepts CONFIG_SOURCE_PATH and IOTD_ENVIRONMENT, while Docker Compose documents the settings and mounted secrets. section 18.4



