-
Notifications
You must be signed in to change notification settings - Fork 6
Open
Description
Problem
Currently, some services define their Docker image using a hardcoded :develop tag, like:
image: samply/some-service:developThis approach makes it harder to manage versions consistently across different environments.
Proposal
We propose replacing hardcoded image tags with environment-specific variables. These variables are already defined in files under the versions/ directory. For example:
versions/prod
FOCUS_TAG=main
BEAM_TAG=main
BLAZE_TAG=0.32
POSTGRES_TAG=15.13-alpineEach environment (acceptance, prod, test) has its own file that defines the necessary variables.
Example change
Instead of:
image: docker.verbis.dkfz.de/cache/samply/teiler-dashboard:developUse:
image: docker.verbis.dkfz.de/cache/samply/teiler-dashboard:${TEILER_DASHBOARD_TAG}Tasks
- Identify all
image: ...:developreferences across the project. - Replace them with the appropriate variable substitution (e.g.,
${TEILER_DASHBOARD_TAG}). - Ensure that the correct environment-specific file from the
versions/folder is loaded during deployment or CI. - Test the setup to ensure the substitutions work correctly in all environments.
Benefits
- Cleaner separation of code and environment-specific configuration
- Centralized version management
- Easier updates and rollbacks per environment
- Improved reproducibility and deployment stability
Feel free to share feedback or suggestions about this approach.
Metadata
Metadata
Assignees
Labels
No labels