[GH-ISSUE #698] [Feature] Support configurable env file ordering #22351

Open
opened 2026-06-10 20:15:00 -05:00 by GiteaMirror · 1 comment
Owner

Originally created by @nicolas-r on GitHub (Jul 31, 2025).
Original GitHub issue: https://github.com/moghtech/komodo/issues/698

In my compose,yaml file, I'm using variables for the volumes

volumes:
      - ${NAVIDROME_DATA_DIR}:/data
      - ${NAVIDROME_CONFIG_DIR}:/config:ro
      - ${NAVIDROME_MUSIC_DIR}:/music:ro
      - /etc/localtime:/etc/localtime:ro

The variables are defined in a file container.env that is stored in the git repo.

NAVIDROME_DATA_DIR="${DOCKER_VOLUMES_ROOT_DIR}/navidrome/data"
NAVIDROME_CONFIG_DIR="${DOCKER_VOLUMES_ROOT_DIR}/navidrome/config"
NAVIDROME_MUSIC_DIR="/mnt/hdd_pool/medias/musique"

The "DOCKER_VOLUMES_ROOT_DIR" variable is set in Komodo UI

When I deploy the stack, everything works fine.

But when I go to the "Info" tab to check the "Deployed config", I see that

- type: bind
        source: /navidrome/data
        target: /data
        bind:
          create_host_path: true
      - type: bind
        source: /navidrome/config
        target: /config
        read_only: true
        bind:
          create_host_path: true
      - type: bind
        source: /mnt/hdd_pool/medias/musique
        target: /music
        read_only: true
        bind:
          create_host_path: true`

It seems that there is an issue with the interpolation of the variables for the paths of the volume that are displayed.

I have checked the container and it uses the correct paths

"Binds": [
      "/mnt/containers/volumes/docker/navidrome/data:/data:rw",
      "/mnt/containers/volumes/docker/navidrome/config:/config:ro",
      "/mnt/hdd_pool/medias/musique:/music:ro",
      "/etc/localtime:/etc/localtime:ro"
    ],

...

 "Mounts": [
    {
      "Type": "bind",
      "Name": null,
      "Source": "/mnt/containers/volumes/docker/navidrome/data",
      "Destination": "/data",
      "Driver": null,
      "Mode": "rw",
      "RW": true,
      "Propagation": "rprivate"
    },
Originally created by @nicolas-r on GitHub (Jul 31, 2025). Original GitHub issue: https://github.com/moghtech/komodo/issues/698 In my compose,yaml file, I'm using variables for the volumes ``` volumes: - ${NAVIDROME_DATA_DIR}:/data - ${NAVIDROME_CONFIG_DIR}:/config:ro - ${NAVIDROME_MUSIC_DIR}:/music:ro - /etc/localtime:/etc/localtime:ro ``` The variables are defined in a file container.env that is stored in the git repo. ``` NAVIDROME_DATA_DIR="${DOCKER_VOLUMES_ROOT_DIR}/navidrome/data" NAVIDROME_CONFIG_DIR="${DOCKER_VOLUMES_ROOT_DIR}/navidrome/config" NAVIDROME_MUSIC_DIR="/mnt/hdd_pool/medias/musique" ``` The "DOCKER_VOLUMES_ROOT_DIR" variable is set in Komodo UI When I deploy the stack, everything works fine. But when I go to the "Info" tab to check the "Deployed config", I see that ``` - type: bind source: /navidrome/data target: /data bind: create_host_path: true - type: bind source: /navidrome/config target: /config read_only: true bind: create_host_path: true - type: bind source: /mnt/hdd_pool/medias/musique target: /music read_only: true bind: create_host_path: true` ``` It seems that there is an issue with the interpolation of the variables for the paths of the volume that are displayed. I have checked the container and it uses the correct paths ``` "Binds": [ "/mnt/containers/volumes/docker/navidrome/data:/data:rw", "/mnt/containers/volumes/docker/navidrome/config:/config:ro", "/mnt/hdd_pool/medias/musique:/music:ro", "/etc/localtime:/etc/localtime:ro" ], ... "Mounts": [ { "Type": "bind", "Name": null, "Source": "/mnt/containers/volumes/docker/navidrome/data", "Destination": "/data", "Driver": null, "Mode": "rw", "RW": true, "Propagation": "rprivate" }, ```
GiteaMirror added the enhancement label 2026-06-10 20:15:00 -05:00
Author
Owner

@mbecker20 commented on GitHub (Aug 30, 2025):

Since the Komodo environment is applied after the environment in your repo, at the time the repo environment is loaded the DOCKER_VOLUMES_ROOT_DIR is not set. So NAVIDROME_DATA_DIR is being set to /navidrome/data.

There currently is no way to change the ordering the env files are applied. I updated the issue as this is what is needed to allow for this usage of Komodo environment vars within repo .env files.

<!-- gh-comment-id:3238984525 --> @mbecker20 commented on GitHub (Aug 30, 2025): Since the Komodo environment is applied after the environment in your repo, at the time the repo environment is loaded the DOCKER_VOLUMES_ROOT_DIR is not set. So NAVIDROME_DATA_DIR is being set to /navidrome/data. There currently is no way to change the ordering the env files are applied. I updated the issue as this is what is needed to allow for this usage of Komodo environment vars within repo .env files.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/komodo#22351